<?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>238264</bug_id>
          
          <creation_ts>2022-03-23 09:28:34 -0700</creation_ts>
          <short_desc>Prepare JSC for making the String(const char*) constructor explicit</short_desc>
          <delta_ts>2022-04-01 19:56:49 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=238287</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=238336</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>238693</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joepeck</cc>
    
    <cc>jsbell</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>pangle</cc>
    
    <cc>philipj</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1854204</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 09:28:34 -0700</bug_when>
    <thetext>Prepare JSC for making the String(const char*) constructor explicit.
Making this constructor explicit helps catch at compile time cases where the &quot;&quot;_s prefix is missing on String literals.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854260</commentid>
    <comment_count>1</comment_count>
      <attachid>455518</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 10:50:01 -0700</bug_when>
    <thetext>Created attachment 455518
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854296</commentid>
    <comment_count>2</comment_count>
      <attachid>455530</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 11:30:42 -0700</bug_when>
    <thetext>Created attachment 455530
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854300</commentid>
    <comment_count>3</comment_count>
      <attachid>455533</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 11:36:46 -0700</bug_when>
    <thetext>Created attachment 455533
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854310</commentid>
    <comment_count>4</comment_count>
      <attachid>455534</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 11:51:25 -0700</bug_when>
    <thetext>Created attachment 455534
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854328</commentid>
    <comment_count>5</comment_count>
      <attachid>455518</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-03-23 12:17:27 -0700</bug_when>
    <thetext>Comment on attachment 455518
Patch

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

I love how this reveals the idioms used. Some comments about the less-great ones here.

Another thing this points out is cases where Latin-1 may not be the right way to interpret non-ASCII characters and we might want UTF-8 instead.

I like the idea of landing the obviously 100% correct _s cases first, so the biggest patch is the most obviously right. Like all the ClassInfo.

&gt; Source/JavaScriptCore/API/JSAPIGlobalObject.mm:93
&gt; +        absoluteURL = URL(URL({ }, &quot;file://&quot;_s), specifier);

This isn’t taking advantage of our new simpler URL constructor!

&gt; Source/JavaScriptCore/API/JSValue.mm:1182
&gt; +        StructHandlers::iterator iter = structHandlers-&gt;find(String { type.get() });

Seems like an unfortunate situation where we have to make a String just to search for something. Probably fixable.

&gt; Source/JavaScriptCore/API/JSValue.mm:1220
&gt; +    StructHandlers::iterator iter = structHandlers-&gt;find(String { encodedType });

Ditto.

&gt; Source/JavaScriptCore/API/JSWrapperMap.mm:454
&gt; +            auto iter = initTable.find(String { name });

Ditto.

&gt; Source/JavaScriptCore/inspector/agents/InspectorAuditAgent.cpp:95
&gt; +    auto functionString = makeString(&quot;(function(WebInspectorAudit) { \&quot;use strict\&quot;; return eval(`(&quot;, String { test }.replace(&apos;`&apos;, &quot;\\`&quot;_s), &quot;)`)(WebInspectorAudit); })&quot;);

Ah, make a String just to pass it to replace, yuck.

&gt; Source/JavaScriptCore/jsc.cpp:1099
&gt; +        return FileSystem::pathByAppendingComponent(String { cachePath }, makeString(source().toString().hash(), &apos;-&apos;, filename, &quot;.bytecode-cache&quot;));

Maybe this FileSystem function should be changed to take StringView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854331</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 12:19:38 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; Comment on attachment 455518 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=455518&amp;action=review
&gt; 
&gt; I love how this reveals the idioms used. Some comments about the less-great
&gt; ones here.
&gt; 
&gt; Another thing this points out is cases where Latin-1 may not be the right
&gt; way to interpret non-ASCII characters and we might want UTF-8 instead.
&gt; 
&gt; I like the idea of landing the obviously 100% correct _s cases first, so the
&gt; biggest patch is the most obviously right. Like all the ClassInfo.
&gt; 
&gt; &gt; Source/JavaScriptCore/API/JSAPIGlobalObject.mm:93
&gt; &gt; +        absoluteURL = URL(URL({ }, &quot;file://&quot;_s), specifier);
&gt; 
&gt; This isn’t taking advantage of our new simpler URL constructor!
&gt; 
&gt; &gt; Source/JavaScriptCore/API/JSValue.mm:1182
&gt; &gt; +        StructHandlers::iterator iter = structHandlers-&gt;find(String { type.get() });
&gt; 
&gt; Seems like an unfortunate situation where we have to make a String just to
&gt; search for something. Probably fixable.
&gt; 
&gt; &gt; Source/JavaScriptCore/API/JSValue.mm:1220
&gt; &gt; +    StructHandlers::iterator iter = structHandlers-&gt;find(String { encodedType });
&gt; 
&gt; Ditto.
&gt; 
&gt; &gt; Source/JavaScriptCore/API/JSWrapperMap.mm:454
&gt; &gt; +            auto iter = initTable.find(String { name });
&gt; 
&gt; Ditto.
&gt; 
&gt; &gt; Source/JavaScriptCore/inspector/agents/InspectorAuditAgent.cpp:95
&gt; &gt; +    auto functionString = makeString(&quot;(function(WebInspectorAudit) { \&quot;use strict\&quot;; return eval(`(&quot;, String { test }.replace(&apos;`&apos;, &quot;\\`&quot;_s), &quot;)`)(WebInspectorAudit); })&quot;);
&gt; 
&gt; Ah, make a String just to pass it to replace, yuck.

Yes, I am working on adding an overload that takes a StringView separately.

&gt; 
&gt; &gt; Source/JavaScriptCore/jsc.cpp:1099
&gt; &gt; +        return FileSystem::pathByAppendingComponent(String { cachePath }, makeString(source().toString().hash(), &apos;-&apos;, filename, &quot;.bytecode-cache&quot;));
&gt; 
&gt; Maybe this FileSystem function should be changed to take StringView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854335</commentid>
    <comment_count>7</comment_count>
      <attachid>455538</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 12:29:11 -0700</bug_when>
    <thetext>Created attachment 455538
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854455</commentid>
    <comment_count>8</comment_count>
      <attachid>455538</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2022-03-23 15:58:53 -0700</bug_when>
    <thetext>Comment on attachment 455538
Patch

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

r=me

&gt; Source/JavaScriptCore/API/JSCallbackObjectFunctions.h:214
&gt; -            className = thisObject-&gt;className(vm);
&gt; +            className =  thisObject-&gt;className(vm);

oops?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854458</commentid>
    <comment_count>9</comment_count>
      <attachid>455574</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 16:04:23 -0700</bug_when>
    <thetext>Created attachment 455574
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854537</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-23 18:40:50 -0700</bug_when>
    <thetext>Committed r291779 (248807@trunk): &lt;https://commits.webkit.org/248807@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854538</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-23 18:41:47 -0700</bug_when>
    <thetext>&lt;rdar://problem/90738742&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1854557</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-23 20:40:57 -0700</bug_when>
    <thetext>Found 1 new test failure: imported/w3c/web-platform-tests/webstorage/event_case_sensitive.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455518</attachid>
            <date>2022-03-23 10:50:01 -0700</date>
            <delta_ts>2022-03-23 12:29:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323105000.patch</filename>
            <type>text/plain</type>
            <size>667614</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
OGVlYjIwODc1NjkzZGM2ZmNjODdjZWUwMTUzNzAyMzM1MjVmNDY5Li41ZWFkZmIwNTcyNDJmZjk3
NDZjYzg3MGNmMzI1MjUyNDExNjA4MTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hh
ciopIGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAg
ICBleHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1
Y3RpbmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5n
IHRoZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21w
dXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVj
dDo6bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5j
cHA6CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkv
SlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0
aW9uLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Nj
cmlwdC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJ
L0pTVHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFy
cmF5QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZm
ZXJBbmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRl
U3RydWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAg
ICAqIEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9y
Q3VzdG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAg
ICAgICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBB
UEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGli
L0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoK
KyAgICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0
aW9uQ2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5k
bGVyOjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29k
ZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0
S2luZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5
dGVjb2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAg
ICAgICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2Rl
L1VubGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxD
b2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNw
cDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVs
ZXRlQnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5v
ZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgor
ICAgICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2Fs
bEZyYW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAg
ICAgIChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9v
dE1hcmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9y
L0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0
b3I6OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAg
ICAoSW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVz
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Oklu
c3BlY3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0
YWJsZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAg
ICAqIGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgor
ICAgICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6Cisg
ICAgICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToK
KyAgICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFy
Z3VtZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAg
KiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBh
cnNlUHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVS
ZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRv
bWljc09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVD
YWNoZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFy
ZEVycm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1
bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpT
Qzo6Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAg
ICAgICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVT
eW50YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToK
KyAgICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Q29uc3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICog
cnVudGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFs
RXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5j
dGlvblNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291
cmNlQXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNv
dXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVu
ZGVyKToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVh
dGVJbnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5l
ZFByaXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNj
ZXNzRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJy
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdT
bG93KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcElt
cGwuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
ICogcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6
OmluaXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZSk6CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpT
Qzo6aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0
aWFsaXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
SXRlcmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdt
ZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlh
bGl6ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6Cisg
ICAgICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0Jv
dW5kRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJl
YW0pOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rp
b24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRU
RVIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAg
ICAgIChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXAp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9K
U0dlbmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgor
ICAgICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRl
UmFuZ2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5
cGVGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAg
IChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVC
dXR0ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01h
cC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2Jq
ZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
SlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6
d3JhcFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Nj
cmlwdEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5n
OjpkdW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVk
QXJyYXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFr
TWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkxpdGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KiBydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJh
dG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAg
ICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dp
dGhSYWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAg
ICAgIChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRv
U3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVy
YXRpb25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChK
U0M6OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5
VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBP
YmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3Bl
ZEFyZ3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHA6CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxt
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OnRvTG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJv
bENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
U3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJh
dGlvbjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1w
b3JhbE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNt
YWxsZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFp
blRpbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6
OmxvZ1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFr
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMv
RnVuY3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6
RnVuY3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9v
bHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMpOgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAo
SlNDOjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUlu
c3BlY3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAg
ICAgICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJy
b3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6
CisgICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNt
R2xvYmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAq
IHdhc20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6
ZGlkQ29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5j
cHA6CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAg
ICAgICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlv
bi5jcHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAg
ICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAo
SlNDOjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1i
bHlNb2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5j
cHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29y
ZC5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXpl
RXhwb3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNt
L2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlX
cmFwcGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgor
ICAgICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVy
cm9yTWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMt
MjMgIFhhbiBMb3BleiAgPHhhbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBEb05v
dEhhdmVUYWdSZWdpc3RlcnMgbW9kZSB0byB1bmJveERvdWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBj
MDdlMWFmMmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi42MTk2NGFjNzE2MjkxMTFlYzJhZTEzNTQ4N2Y5
YTdmNDZjZTE4YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0
aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5o
OgorICAgICAgICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAo
V1RGOjpkaXNwbGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
Y3BwOgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24p
OgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6
bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
aDoKKwogMjAyMi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggNzI5OTFmYTkzYjc0MWRhMDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uMjRkYWFj
N2ZlODgzNDMxMmI1NTNkN2RjNDdiNTcxZWE1MGZhNTBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDMwIEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAg
ICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25z
dHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5k
b3dQcm94eS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5j
cHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAg
ICAgIChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpD
UnVudGltZU9iamVjdC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
OgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAg
ICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVu
dGltZV9hcnJheS5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAg
ICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIzICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBWaWRlb0ZyYW1lIGRvZXMgbm90
IG5lZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwCmluZGV4IDNkY2VhNmNhMjZlMjhiZGUzOGY0
YjY5Mzk0NmVlMjkyMDMwN2E0ZGIuLjEyNWJjOTlhMWQ1MmY1OThiNmZkZDlkNmQ4MzBjNThkNDk3
OTFmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgSlNBUElHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQppbmRleCBiM2UyYWU0NDFjNGVjNTIzNDJh
ZmU5ZDU0OWU0YWU2MjM4Y2UzNDVmLi5lNGI4NTliOWNmNzI0NjY5NjRiNGE5ZDc0YjUzNjMzOGQw
MmEyZmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFs
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QubW0KQEAgLTUwLDcgKzUwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJs
ZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKQEAgLTkwLDcgKzkwLDcgQEAgc3Rh
dGljIEV4cGVjdGVkPFVSTCwgU3RyaW5nPiBjb21wdXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIoY29u
c3QgVVJMJiBiYXNlLCBjb25zdAogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQobWFrZVN0
cmluZygiTW9kdWxlIHNwZWNpZmllcjogIl9zLCBzcGVjaWZpZXIsICIgZG9lcyBub3Qgc3RhcnQg
d2l0aCBcIi9cIiwgXCIuL1wiLCBvciBcIi4uL1wiLiBSZWZlcmVuY2VkIGZyb206ICJfcywgYmFz
ZS5zdHJpbmcoKSkpOwogCiAgICAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcvJykpIHsKLSAg
ICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iKSwgc3BlY2lmaWVyKTsK
KyAgICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iX3MpLCBzcGVjaWZp
ZXIpOwogICAgICAgICBpZiAoYWJzb2x1dGVVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0
dXJuIGFic29sdXRlVVJMOwogICAgIH0KQEAgLTE3NywxMiArMTc3LDEyIEBAIEpTSW50ZXJuYWxQ
cm9taXNlKiBKU0FQSUdsb2JhbE9iamVjdDo6bW9kdWxlTG9hZGVyRmV0Y2goSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAKICAgICBpZiAoVU5MSUtFTFkoIVtjb250ZXh0IG1vZHVsZUxvYWRlckRl
bGVnYXRlXSkpIHsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICBwcm9taXNlLT5y
ZWplY3QoZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJObyBtb2R1bGUg
bG9hZGVyIHByb3ZpZGVkLiIpKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KGdsb2JhbE9iamVj
dCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRlciBwcm92aWRlZC4i
X3MpKTsKICAgICAgICAgcmV0dXJuIHByb21pc2U7CiAgICAgfQogCiAgICAgYXV0byBzdHJvbmdQ
cm9taXNlID0gU3Ryb25nPEpTSW50ZXJuYWxQcm9taXNlPih2bSwgcHJvbWlzZSk7Ci0gICAgYXV0
byogcmVzb2x2ZSA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCAxLCAicmVzb2x2ZSIsIFs9XSAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpIHsKKyAgICBhdXRvKiByZXNvbHZlID0gSlNOYXRpdmVTdGRGdW5jdGlv
bjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsICJyZXNvbHZlIl9zLCBbPV0gKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAgICAgICAgIC8v
IFRoaXMgY2FwdHVyZXMgdGhlIGdsb2JhbE9iamVjdCBidXQgdGhhdCdzIG9rIGJlY2F1c2Ugb3Vy
IHN0cnVjdHVyZSBrZWVwcyBpdCBhbGl2ZSBhbnl3YXkuCiAgICAgICAgIFZNJiB2bSA9IGdsb2Jh
bE9iamVjdC0+dm0oKTsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW0pTQ29udGV4dCBj
b250ZXh0V2l0aEpTR2xvYmFsQ29udGV4dFJlZjp0b0dsb2JhbFJlZihnbG9iYWxPYmplY3QpXTsK
QEAgLTIxMyw3ICsyMTMsNyBAQCBKU0ludGVybmFsUHJvbWlzZSogSlNBUElHbG9iYWxPYmplY3Q6
Om1vZHVsZUxvYWRlckZldGNoKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICByZXR1
cm4gZW5jb2RlZEpTVW5kZWZpbmVkKCk7CiAgICAgfSk7CiAKLSAgICBhdXRvKiByZWplY3QgPSBK
U05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJlamVjdCIs
IFs9XSAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgeworICAgIGF1dG8q
IHJlamVjdCA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAx
LCAicmVqZWN0Il9zLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
IHsKICAgICAgICAgc3Ryb25nUHJvbWlzZS5nZXQoKS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAgICAgIHJldHVybiBlbmNvZGVkSlNVbmRlZmluZWQo
KTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElW
YWx1ZVdyYXBwZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3Jh
cHBlci5jcHAKaW5kZXggMjFhN2E5N2MwZWNlZGY5MDEyNTUzMDFlNzZjNzhjNGYyYjQ0NmQ3Yy4u
MTc3OGI2MWQ2NzU1YjlhNWI3NmE1NDA1NjYxNTgyMzk0YjRlZjYyYiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKQEAgLTI4LDYgKzI4LDYg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShKU0FQSVZhbHVlV3JhcHBlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQVBJVmFsdWVXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQVBJVmFsdWVXcmFwcGVyOjpzX2luZm8gPSB7ICJBUEkgV3JhcHBlciJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBl
cikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCmluZGV4IDQ3NzNiMDc0NDg3MzQ4YTg3ZWZjODIxZDEy
YjJhOTNjZTg2MTIxOTUuLmZjODVlZDdiZGViNmY5ZjUwMjA3MWZmM2ZiOWY2M2RmMjdhODM5MmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1t
CkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRp
Y0Z1bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyT2JqZWN0Q2FsbGJhY2tPCiAKIERFRklORV9WSVNJ
VF9DSElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNB
UElXcmFwcGVyT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBl
ck9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGUgPD4gY29uc3QgYm9vbCBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVl
OwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCmluZGV4IDQ4Nzc3ODg5MzBlZTQyZmRhYjM1ODc1OWRiZjcx
NDJmMDM2YTMzYmEuLmJhMDU2NjVjOTg5YTg1NWQ1ZTk1ODIyZWM0OWZlMjBlOTM0MWY3M2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0
cnVjdG9yKSB9OwogCiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3Rv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlND
bGFzc1JlZiBqc0NsYXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDEyODY3
MDljMDhjMmExY2FhMWQzYzM5Yjc5NjBjYzZiNzkxNzEzZGIuLmM5OTY1MDE5ZDJjMDI5NzU2NjZm
NzJkOGVmODIzZGJmZGU3NDJiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0NhbGxiYWNrRnVu
Y3Rpb24pOwogCi1jb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7
ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0
aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTQ2FsbGJhY2tGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwCmluZGV4IDQ0NGMxNTAzNDUx
ZGQ5Nzk1MzBhMTg1Y2RhMzg2ZWUxZDFjNjdiYjguLjE1ZGFmM2MyZmNjNDdlNTkyZjFkNjQyMTI2
YWQ3ZmE4YjU3MjM4Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxi
YWNrT2JqZWN0LmNwcApAQCAtNDUsOCArNDUsOCBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lU
SF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplYwog
REVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFj
a09iamVjdDxKU0dsb2JhbE9iamVjdD4pOwogCiAvLyBEZWZpbmUgdGhlIHR3byB0eXBlcyBvZiBK
U0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZv
IEpTQ2FsbGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNr
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBK
U0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2Fs
bGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCBjNzg0ZGZiYTk0MDY5Njky
NDk5ZWM3MzY4YWUxYWNiZWIxYzc5NGRiLi41MWRhNzc3YWQyNDU0NTg1MTgyM2MxZDczNjk3YjU3
ZGUyMGFlMDdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJh
Y2tPYmplY3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2Fs
bGJhY2tPYmplY3RGdW5jdGlvbnMuaApAQCAtMjExLDcgKzIxMSw3IEBAIGJvb2wgSlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgSlNH
bG9iYWxPYmplCiAgICAgaWYgKHByb3BlcnR5TmFtZS51aWQoKSA9PSB2bS5wcm9wZXJ0eU5hbWVz
LT50b1N0cmluZ1RhZ1N5bWJvbC5pbXBsKCkpIHsKICAgICAgICAgU3RyaW5nIGNsYXNzTmFtZSA9
IHRoaXNPYmplY3QtPmNsYXNzUmVmKCktPmNsYXNzTmFtZSgpOwogICAgICAgICBpZiAoY2xhc3NO
YW1lLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXNPYmplY3QtPmNsYXNz
TmFtZSh2bSk7CisgICAgICAgICAgICBjbGFzc05hbWUgPSAgdGhpc09iamVjdC0+Y2xhc3NOYW1l
KHZtKTsKICAgICAgICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwganNTdHJpbmcodm0sIFdURk1vdmUo
Y2xhc3NOYW1lKSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU1NjcmlwdC5tbQppbmRleCA4NTAzNDdiN2NkNzEyNjBhMGJmNjU5MDc1MGE5YTQ1
MGRjMzExYzFjLi42YjAyMDZlMDM3ZjMyM2MzMmY5OTEzNDIyMWFkYWRhYjM3NWZhMGUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNTY3JpcHQubW0KQEAgLTE1NCw4ICsxNTQsNyBAQCAtICh2
b2lkKXJlYWRDYWNoZQogICAgIGlmICghbV9jYWNoZVBhdGgpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIE5TU3RyaW5nICpjYWNoZVBhdGhTdHJpbmcgPSBbbV9jYWNoZVBhdGggcGF0aF07Ci0gICAg
Y29uc3QgY2hhciogY2FjaGVGaWxlbmFtZSA9IGNhY2hlUGF0aFN0cmluZy5VVEY4U3RyaW5nOwor
ICAgIFN0cmluZyBjYWNoZUZpbGVuYW1lID0gW21fY2FjaGVQYXRoIHBhdGhdOwogCiAgICAgYXV0
byBmZCA9IEZpbGVTeXN0ZW06Om9wZW5BbmRMb2NrRmlsZShjYWNoZUZpbGVuYW1lLCBGaWxlU3lz
dGVtOjpGaWxlT3Blbk1vZGU6OlJlYWQsIHtGaWxlU3lzdGVtOjpGaWxlTG9ja01vZGU6OkV4Y2x1
c2l2ZSwgRmlsZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpOb25ibG9ja2luZ30pOwogICAgIGlmICgh
RmlsZVN5c3RlbTo6aXNIYW5kbGVWYWxpZChmZCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTVHlwZWRBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTVHlwZWRBcnJheS5jcHAKaW5kZXggYWJhNmRmNmUyYTMxODM4ZTczODg0OWQyOGI3MjkyZTIx
MzJhNGU5MS4uOTNlZTg4NGM1Yzk5ZGViNzBiYjQxOWRiODZhMmM5NWVjMTEyZGNkMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNUeXBlZEFycmF5LmNwcApAQCAtMjE5LDcgKzIxOSw3
IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIoSlND
b250ZXh0UmVmIGN0eCwgSlNUeXBlZEFycmF5CiAKICAgICBKU0FycmF5QnVmZmVyKiBqc0J1ZmZl
ciA9IGpzRHluYW1pY0Nhc3Q8SlNBcnJheUJ1ZmZlcio+KHZtLCB0b0pTKGpzQnVmZmVyUmVmKSk7
CiAgICAgaWYgKCFqc0J1ZmZlcikgewotICAgICAgICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRp
b24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5
V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmpl
Y3QiKSk7CisgICAgICAgIHNldEV4Y2VwdGlvbihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIg
ZXhwZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJyYXkgQnVmZmVyIG9iamVjdCJfcykpOwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKQEAgLTI0NCw3ICsyNDQsNyBAQCBKU09iamVjdFJl
ZiBKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyQW5kT2Zmc2V0KEpTQ29udGV4
dFJlZiBjdHgsIEpTVAogCiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBqc0R5bmFtaWND
YXN0PEpTQXJyYXlCdWZmZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAgIGlmICghanNC
dWZmZXIpIHsKLSAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZl
ciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0IikpOworICAgICAg
ICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVy
IHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFs
dWUubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KaW5kZXggZDNhZDA4
MGUxZGRmNGZlNmVmYmE5MTM1YmEyNjg3NmM3N2RjYmMyNi4uZjEyYTJjNDk1M2YwMDMyZGZiNGI3
MmY2OGZmODBmZWRkYjY5MDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU1ZhbHVlLm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZS5tbQpA
QCAtMTE3OSw3ICsxMTc5LDcgQEAgc3RhdGljIFN0cnVjdEhhbmRsZXJzKiBjcmVhdGVTdHJ1Y3RI
YW5kbGVyTWFwKCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgLy8gVHJ5IHRvIGZpbmQg
YSBtYXRjaGluZyB2YWx1ZVdpdGg8Rm9vPjpjb250ZXh0OiBtZXRob2QuCiAgICAgICAgIGF1dG8g
dHlwZSA9IGFkb3B0U3lzdGVtPGNoYXJbXT4obWV0aG9kX2NvcHlSZXR1cm5UeXBlKG1ldGhvZCkp
OwotICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJz
LT5maW5kKHR5cGUuZ2V0KCkpOworICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRl
ciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKFN0cmluZyB7IHR5cGUuZ2V0KCkgfSk7CiAgICAgICAg
IGlmIChpdGVyID09IHN0cnVjdEhhbmRsZXJzLT5lbmQoKSkKICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgU3RydWN0VGFnSGFuZGxlciYgaGFuZGxlciA9IGl0ZXItPnZhbHVlOwpAQCAtMTIx
Nyw3ICsxMjE3LDcgQEAgc3RhdGljIFN0cnVjdFRhZ0hhbmRsZXIqIGhhbmRlckZvclN0cnVjdFRh
Zyhjb25zdCBjaGFyKiBlbmNvZGVkVHlwZSkKIAogICAgIHN0YXRpYyBTdHJ1Y3RIYW5kbGVycyog
c3RydWN0SGFuZGxlcnMgPSBjcmVhdGVTdHJ1Y3RIYW5kbGVyTWFwKCk7CiAKLSAgICBTdHJ1Y3RI
YW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKGVuY29kZWRUeXBl
KTsKKyAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5m
aW5kKFN0cmluZyB7IGVuY29kZWRUeXBlIH0pOwogICAgIGlmIChpdGVyID09IHN0cnVjdEhhbmRs
ZXJzLT5lbmQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuICZpdGVyLT52YWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJNYXAubW0KaW5kZXggNzBkZWZjMDA0
MDNmYTFiYTUwZmE1MmNiNTU5NWMyYzE2YjdjNjJkYy4uZjgyMWRmOGUzZWJlZDU3ZjU0MGNkMmYw
MWQ2NGVjOTZkY2ZhODZjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U1dyYXBwZXJNYXAubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJN
YXAubW0KQEAgLTQzOCw3ICs0MzgsNyBAQCBzdGF0aWMgSlNDOjpKU09iamVjdCogYWxsb2NhdGVD
b25zdHJ1Y3RvckZvckN1c3RvbUNsYXNzKEpTQ29udGV4dCAqY29udGV4dCwgY29ucwogICAgICAg
ICAgICAgICAgIGNvbnN0IGNoYXIqIG5hbWUgPSBzZWxfZ2V0TmFtZShzZWxlY3Rvcik7CiAgICAg
ICAgICAgICAgICAgaWYgKCFpc0luaXRGYW1pbHlNZXRob2QoQChuYW1lKSkpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KG5hbWUsIChf
X2JyaWRnZSBDRlR5cGVSZWYpcHJvdG9jb2wpOworICAgICAgICAgICAgICAgIGluaXRUYWJsZS5z
ZXQoU3RyaW5nIHsgbmFtZSB9LCAoX19icmlkZ2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsKICAgICAg
ICAgICAgIH0pOwogICAgICAgICB9KTsKICAgICB9CkBAIC00NTEsNyArNDUxLDcgQEAgc3RhdGlj
IEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3RydWN0b3JGb3JDdXN0b21DbGFzcyhKU0NvbnRl
eHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgZm9yRWFjaE1ldGhvZEluQ2xhc3MoY3VycmVudENs
YXNzLCBeKE1ldGhvZCBtZXRob2QpIHsKICAgICAgICAgICAgIFNFTCBzZWxlY3RvciA9IG1ldGhv
ZF9nZXROYW1lKG1ldGhvZCk7CiAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lID0gc2VsX2dl
dE5hbWUoc2VsZWN0b3IpOwotICAgICAgICAgICAgYXV0byBpdGVyID0gaW5pdFRhYmxlLmZpbmQo
bmFtZSk7CisgICAgICAgICAgICBhdXRvIGl0ZXIgPSBpbml0VGFibGUuZmluZChTdHJpbmcgeyBu
YW1lIH0pOwogCiAgICAgICAgICAgICBpZiAoaXRlciA9PSBpbml0VGFibGUuZW5kKCkpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2Jq
Q0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXggZGY3NjBjNjI4NjY4YTRmNDZlODlkNTMzNjA5M2Qx
Y2E1YzAyNDRkYy4uOGQ4ZTM1MTY5ZDk2MzQ2OTIzN2U0Mzk1ZDYyOTMzMzM0YjI2ZmQ1YSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5t
bQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxsYmFja0Z1bmN0aW9uLm1t
CkBAIC01MzMsNyArNTMzLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVmIG9iakNDYWxsYmFja0Z1bmN0
aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNhbGxlckNvbnQKICAgICByZXR1cm4g
Y29uc3RfY2FzdDxKU09iamVjdFJlZj4ocmVzdWx0KTsKIH0KIAotY29uc3QgSlNDOjpDbGFzc0lu
Zm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakND
YWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ0NhbGxiYWNrRnVuY3Rpb24p
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxPYmpDQ2FsbGJhY2tG
dW5jdGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RPYmpD
Q2FsbGJhY2tGdW5jdGlvbik7CkBAIC01NzQsMTAgKzU3NCwxMCBAQCB2b2lkIE9iakNDYWxsYmFj
a0Z1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIFN0cmluZyBPYmpDQ2FsbGJhY2tGdW5j
dGlvbkltcGw6Om5hbWUoKQogewogICAgIGlmIChtX3R5cGUgPT0gQ2FsbGJhY2tJbml0TWV0aG9k
KQotICAgICAgICByZXR1cm4gY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0KCkpOwor
ICAgICAgICByZXR1cm4gU3RyaW5nIHsgY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0
KCkpIH07CiAgICAgLy8gRklYTUU6IE1heWJlIHdlIGNvdWxkIHN1cHBvcnQgaGF2aW5nIHRoZSBz
ZWxlY3RvciBhcyB0aGUgbmFtZSBvZiB0aGUgbm9uLWluaXQgCiAgICAgLy8gZnVuY3Rpb25zIHRv
IG1ha2UgaXQgYSBiaXQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb20gdGhlIEpTIHNpZGU/Ci0gICAg
cmV0dXJuICIiOworICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogfQogCiBKU1ZhbHVlUmVmIE9i
akNDYWxsYmFja0Z1bmN0aW9uSW1wbDo6Y2FsbChKU0NvbnRleHQgKmNvbnRleHQsIEpTT2JqZWN0
UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCmlu
ZGV4IDNkYmQ5ZDM1M2Q2ZWJkYWI2ZjIzYzgyOTEyNzdlNTM2NjY3YzA2OGYuLjlhNTg3MmNiMTc3
NWIwYzE4OTc2YzgxNmEwOWYzYThlMDE3MmJhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCkBA
IC02Miw3ICs2Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRpY0Z1
bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0Q2FsCiAKIERFRklORV9WSVNJVF9D
SElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElX
cmFwcGVyR2xvYmFsT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJ
V3JhcHBlckdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0
IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNf
aW5mbyA9IHsgIkpTQVBJV3JhcHBlckdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9Owog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyR2xvYmFs
T2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CiAKIHRlbXBsYXRlIDw+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xp
Yi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0
R0xpYi5jcHAKaW5kZXggM2VhZjhmNjc5MGFlNzg1YTNkZDUyM2FiOWFlNDE3NGQxYmRiMjhkNC4u
ZjA1OTljMTBmNDQzOTM2NjYyY2VkNTZiMTY4NTc2NTBiN2I1ODkyOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJPYmplY3RHTGli
LmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihz
dGF0aWNGdW5jdGlvbkdldHRlckpTQVBJV3JhcHBlck9iamVjdENhbGxiYWNrTwogCiBERUZJTkVf
VklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlND
YWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBw
ZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdy
YXBwZXJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBK
U0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0
cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDA4MTA3N2E0YzA0M2NjYjQ4YWVi
MjliMDFmOGZmYzBkOGFmYmUxM2EuLmVkN2YxYTczOWYwNWJkODgzN2ZkNjM5ZjY4NDZmZWY2MDc1
Y2FlODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxs
YmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlND
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVm
IGNhbGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiBjYWxsZXJDb250ZXh0LCBKU09iamVjdFJl
ZiBjb24KICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SlNDQ2FsbGJhY2tGdW5jdGlvbio+KHRvSlMo
Y29uc3RydWN0b3IpKS0+Y29uc3RydWN0KGNhbGxlckNvbnRleHQsIGFyZ3VtZW50Q291bnQsIGFy
Z3VtZW50cywgZXhjZXB0aW9uKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ0NhbGxiYWNr
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZv
ID0geyAiQ2FsbGJhY2tGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0aW9uKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNDQ2FsbGJhY2tGdW5j
dGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU0NDYWxs
YmFja0Z1bmN0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVz
dHMvSlNPTlBhcnNlVGVzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pT
T05QYXJzZVRlc3QuY3BwCmluZGV4IGEwNjJhYWI3ZWRjNzNkNWI1MjE3YTU1YTllZjg1ZWE2NmRj
NzgyZmIuLmRmN2JmZGJiMDIxMGIyNmMwMGRjNzhjMzE2MTAwOGZjYjZlYjllYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcApAQCAt
NDMsMTMgKzQzLDEzIEBAIGludCB0ZXN0SlNPTlBhcnNlKCkKICAgICBKU0xvY2tIb2xkZXIgbG9j
a2VyKHZtLmdldCgpKTsKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gSlNHbG9i
YWxPYmplY3Q6OmNyZWF0ZSgqdm0sIEpTR2xvYmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUoKnZt
LCBqc051bGwoKSkpOwogICAgIAotICAgIEpTVmFsdWUgdjAgPSBKU09OUGFyc2UoZ2xvYmFsT2Jq
ZWN0LCAiIik7Ci0gICAgSlNWYWx1ZSB2MSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIjJCVe
Iik7CisgICAgSlNWYWx1ZSB2MCA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIiX3MpOworICAg
IEpTVmFsdWUgdjEgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiJfcyk7CiAgICAgSlNW
YWx1ZSB2MiA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsIFN0cmluZygpKTsKICAgICBVQ2hhciBl
bXB0eVVDaGFyQXJyYXlbMV0gPSB7ICdcMCcgfTsKICAgICBKU1ZhbHVlIHYzID0gSlNPTlBhcnNl
KGdsb2JhbE9iamVjdCwgU3RyaW5nKGVtcHR5VUNoYXJBcnJheSwgMCkpOwogICAgIEpTVmFsdWUg
djQ7Ci0gICAgSlNWYWx1ZSB2NSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIxMjMiKTsKKyAg
ICBKU1ZhbHVlIHY1ID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIjEyMyJfcyk7CiAgICAgCiAg
ICAgZmFpbGVkID0gZmFpbGVkIHx8ICh2MCAhPSB2MSk7CiAgICAgZmFpbGVkID0gZmFpbGVkIHx8
ICh2MSAhPSB2Mik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mv
U2NyaXB0RnVuY3Rpb25DYWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9T
Y3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDdmZjNlNjFlNDI1MjM2YThlNjU2NTVhYjkwZTNh
OWQ0NzllOWFmNDIuLjNhYTkyNTNkMzM0ODcwMDNlOTczN2RiZDIyMGI4MGE0YWFiOTNhOTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlvbkNh
bGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlv
bkNhbGwuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHZvaWQgU2NyaXB0Q2FsbEFyZ3VtZW50SGFuZGxl
cjo6YXBwZW5kQXJndW1lbnQoY29uc3QgY2hhciogYXJndW1lbnQpCiB7CiAgICAgVk0mIHZtID0g
bV9nbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0pOwotICAgIG1f
YXJndW1lbnRzLmFwcGVuZChqc1N0cmluZyh2bSwgYXJndW1lbnQpKTsKKyAgICBtX2FyZ3VtZW50
cy5hcHBlbmQoanNTdHJpbmcodm0sIFN0cmluZyB7IGFyZ3VtZW50IH0pKTsKIH0KIAogdm9pZCBT
Y3JpcHRDYWxsQXJndW1lbnRIYW5kbGVyOjphcHBlbmRBcmd1bWVudChKU1ZhbHVlIGFyZ3VtZW50
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAppbmRleCAw
OThhZWQ5MzVhNjhmN2Q2Njg3YmQzNTIzMjUzMDc3ZjMxZWQxOWYyLi42ZDlkOGI1MWUxMTlkYmMw
NzgwOTExNGUxY2IxMGVkYjY3Mjg0NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmNwcApAQCAtOTYsNyArOTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIERF
RklORV9BTExPQ0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoQ29kZUJsb2NrUmFyZURhdGEpOwog
CiBjb25zdCBDbGFzc0luZm8gQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkNvZGVCbG9jayIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkNvZGVCbG9jayJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKENvZGVCbG9jaykKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJs
b2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBmYWE1MTk1MTM0NjQ4YzY2MjVmN2FjNTk0MzkxMjc0ZGQwNGI5YmIwLi42MGU5ZDg4
NjQ3ZDMyNTRhOTAyZjAzNmE4OWIxMGM5MDNiZDJkZjA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBu
YW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9
IHsKLSAgICAiRXZhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CisgICAgIkV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShFdmFsQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9ja0Vk
Z2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVC
bG9ja0VkZ2UuY3BwCmluZGV4IGJmOWQ2ZmU0MWNmODU3ODE0MGRmYWYzZGNkN2RlYWRkN2EzNjMz
OTQuLjM2ZGRiN2E2NjU3OTliNjc3NjdiMzA0ZmU1ZjM1ODk0N2FkNDc5MzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlOjpzX2luZm8gPSB7ICJFeGVj
dXRhYmxlVG9Db2RlQmxvY2tFZGdlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEV4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGVUb0Nv
ZGVCbG9ja0VkZ2UiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSkgfTsKIAogU3RydWN0dXJlKiBFeGVjdXRh
YmxlVG9Db2RlQmxvY2tFZGdlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCmluZGV4IGRlNmZlYmY4OGEzNGI5MDczZDBiNzc3
M2I3MWRjMjk0MDgzM2UzODEuLjg5NDAyNjBjODk5NTEyMzIyN2FhODM2NmRlNzQwMGMwYWU2OWQ3
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmNwcApAQCAt
MzEsNzAgKzMxLDcwIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kIGtpbmQpCitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0cmluZyhF
eGl0S2luZCBraW5kKQogewogICAgIHN3aXRjaCAoa2luZCkgewogICAgIGNhc2UgRXhpdEtpbmRV
bnNldDoKLSAgICAgICAgcmV0dXJuICJVbnNldCI7CisgICAgICAgIHJldHVybiAiVW5zZXQiX3M7
CiAgICAgY2FzZSBCYWRUeXBlOgotICAgICAgICByZXR1cm4gIkJhZFR5cGUiOworICAgICAgICBy
ZXR1cm4gIkJhZFR5cGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudFZhbHVlOgotICAgICAgICBy
ZXR1cm4gIkJhZENvbnN0YW50VmFsdWUiOworICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50VmFs
dWUiX3M7CiAgICAgY2FzZSBCYWRJZGVudDoKLSAgICAgICAgcmV0dXJuICJCYWRJZGVudCI7Cisg
ICAgICAgIHJldHVybiAiQmFkSWRlbnQiX3M7CiAgICAgY2FzZSBCYWRFeGVjdXRhYmxlOgotICAg
ICAgICByZXR1cm4gIkJhZEV4ZWN1dGFibGUiOworICAgICAgICByZXR1cm4gIkJhZEV4ZWN1dGFi
bGUiX3M7CiAgICAgY2FzZSBCYWRDYWNoZToKLSAgICAgICAgcmV0dXJuICJCYWRDYWNoZSI7Cisg
ICAgICAgIHJldHVybiAiQmFkQ2FjaGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudENhY2hlOgot
ICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50Q2FjaGUiOworICAgICAgICByZXR1cm4gIkJhZENv
bnN0YW50Q2FjaGUiX3M7CiAgICAgY2FzZSBCYWRJbmRleGluZ1R5cGU6Ci0gICAgICAgIHJldHVy
biAiQmFkSW5kZXhpbmdUeXBlIjsKKyAgICAgICAgcmV0dXJuICJCYWRJbmRleGluZ1R5cGUiX3M7
CiAgICAgY2FzZSBCYWRUeXBlSW5mb0ZsYWdzOgotICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZv
RmxhZ3MiOworICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZvRmxhZ3MiX3M7CiAgICAgY2FzZSBP
dmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJPdmVyZmxvdyI7CisgICAgICAgIHJldHVybiAiT3Zl
cmZsb3ciX3M7CiAgICAgY2FzZSBOZWdhdGl2ZVplcm86Ci0gICAgICAgIHJldHVybiAiTmVnYXRp
dmVaZXJvIjsKKyAgICAgICAgcmV0dXJuICJOZWdhdGl2ZVplcm8iX3M7CiAgICAgY2FzZSBOZWdh
dGl2ZUluZGV4OgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlSW5kZXgiOworICAgICAgICByZXR1
cm4gIk5lZ2F0aXZlSW5kZXgiX3M7CiAgICAgY2FzZSBJbnQ1Mk92ZXJmbG93OgotICAgICAgICBy
ZXR1cm4gIkludDUyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkludDUyT3ZlcmZsb3ciX3M7
CiAgICAgY2FzZSBTdG9yZVRvSG9sZToKLSAgICAgICAgcmV0dXJuICJTdG9yZVRvSG9sZSI7Cisg
ICAgICAgIHJldHVybiAiU3RvcmVUb0hvbGUiX3M7CiAgICAgY2FzZSBMb2FkRnJvbUhvbGU6Ci0g
ICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIjsKKyAgICAgICAgcmV0dXJuICJMb2FkRnJvbUhv
bGUiX3M7CiAgICAgY2FzZSBPdXRPZkJvdW5kczoKLSAgICAgICAgcmV0dXJuICJPdXRPZkJvdW5k
cyI7CisgICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiX3M7CiAgICAgY2FzZSBJbmFkZXF1YXRl
Q292ZXJhZ2U6Ci0gICAgICAgIHJldHVybiAiSW5hZGVxdWF0ZUNvdmVyYWdlIjsKKyAgICAgICAg
cmV0dXJuICJJbmFkZXF1YXRlQ292ZXJhZ2UiX3M7CiAgICAgY2FzZSBBcmd1bWVudHNFc2NhcGVk
OgotICAgICAgICByZXR1cm4gIkFyZ3VtZW50c0VzY2FwZWQiOworICAgICAgICByZXR1cm4gIkFy
Z3VtZW50c0VzY2FwZWQiX3M7CiAgICAgY2FzZSBFeG90aWNPYmplY3RNb2RlOgotICAgICAgICBy
ZXR1cm4gIkV4b3RpY09iamVjdE1vZGUiOworICAgICAgICByZXR1cm4gIkV4b3RpY09iamVjdE1v
ZGUiX3M7CiAgICAgY2FzZSBWYXJhcmdzT3ZlcmZsb3c6Ci0gICAgICAgIHJldHVybiAiVmFyYXJn
c092ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJWYXJhcmdzT3ZlcmZsb3ciX3M7CiAgICAgY2Fz
ZSBURFpGYWlsdXJlOgotICAgICAgICByZXR1cm4gIlREWkZhaWx1cmUiOworICAgICAgICByZXR1
cm4gIlREWkZhaWx1cmUiX3M7CiAgICAgY2FzZSBIb2lzdGluZ0ZhaWxlZDoKLSAgICAgICAgcmV0
dXJuICJIb2lzdGluZ0ZhaWxlZCI7CisgICAgICAgIHJldHVybiAiSG9pc3RpbmdGYWlsZWQiX3M7
CiAgICAgY2FzZSBVbmNvdW50YWJsZToKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZSI7Cisg
ICAgICAgIHJldHVybiAiVW5jb3VudGFibGUiX3M7CiAgICAgY2FzZSBVbmNvdW50YWJsZUludmFs
aWRhdGlvbjoKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZUludmFsaWRhdGlvbiI7CisgICAg
ICAgIHJldHVybiAiVW5jb3VudGFibGVJbnZhbGlkYXRpb24iX3M7CiAgICAgY2FzZSBXYXRjaGRv
Z1RpbWVyRmlyZWQ6Ci0gICAgICAgIHJldHVybiAiV2F0Y2hkb2dUaW1lckZpcmVkIjsKKyAgICAg
ICAgcmV0dXJuICJXYXRjaGRvZ1RpbWVyRmlyZWQiX3M7CiAgICAgY2FzZSBEZWJ1Z2dlckV2ZW50
OgotICAgICAgICByZXR1cm4gIkRlYnVnZ2VyRXZlbnQiOworICAgICAgICByZXR1cm4gIkRlYnVn
Z2VyRXZlbnQiX3M7CiAgICAgY2FzZSBFeGNlcHRpb25DaGVjazoKLSAgICAgICAgcmV0dXJuICJF
eGNlcHRpb25DaGVjayI7CisgICAgICAgIHJldHVybiAiRXhjZXB0aW9uQ2hlY2siX3M7CiAgICAg
Y2FzZSBHZW5lcmljVW53aW5kOgotICAgICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiOworICAg
ICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiX3M7CiAgICAgY2FzZSBCaWdJbnQzMk92ZXJmbG93
OgotICAgICAgICByZXR1cm4gIkJpZ0ludDMyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkJp
Z0ludDMyT3ZlcmZsb3ciX3M7CiAgICAgfQogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgcmV0dXJuICJVbmtub3duIjsKKyAgICByZXR1cm4gIlVua25vd24iX3M7CiB9CiAK
IGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCBraW5kKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAppbmRleCBiOGViMzEwNDgwNWZjYjVlOGYzNjMwYjZk
YTkxNWRjMjBiODRiYjhhLi5kODQwMzYyMGVjMjkyYzgxNzQ0ZWZjNjM3NzM3YTM2ZWNkOGY2NTg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaApAQCAtNTksNyAr
NTksNyBAQCBlbnVtIEV4aXRLaW5kIDogdWludDhfdCB7CiAgICAgQmlnSW50MzJPdmVyZmxvdywg
Ly8gV2UgZXhpdGVkIGJlY2F1c2Ugb2YgYW4gQmlnSW50MzIgb3ZlcmZsb3cuCiB9OwogCi1jb25z
dCBjaGFyKiBleGl0S2luZFRvU3RyaW5nKEV4aXRLaW5kKTsKK0FTQ0lJTGl0ZXJhbCBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kKTsKIGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCk7
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RlMGRhY2NhYTNmYWQyZDA3MDE5
MDZmMGM0MzMxMDMwMjNlYWMwYi4uODcwOWVjNmFkOTVmYjkzNmRjNzE2OGVjOWQ2Y2RkMWYyZGVh
ZGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9u
Q29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rp
b25Db2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9u
Q29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rp
b25Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNw
cAppbmRleCA2NTNkZDdhNGQzMzE0ODM2NjhiNTJhMjYxOWUxN2FjMTIyZWE0NWU3Li4xMGEwN2Qw
ZTA3MDcwOGM5YzcxZTk1ZDNmYjljODc3MmRhMmUxY2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBA
IC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIE1vZHVs
ZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAgICAiTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
ayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIk1vZHVsZVByb2dyYW1D
b2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRF
X01FVEhPRF9UQUJMRShNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGE1
MDhiNDY2MGEwNDgxYTg5MTRkYjJhNjA2MDdmNDEwNDU3Mzk3Y2UuLjgwNWIzZjc5N2EwMTZhMGJk
NjlhMTBiYzliMDE1ZjA4NDE2YTc3ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIG5hbWVz
cGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0g
ewotICAgICJQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAiUHJvZ3JhbUNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1Db2RlQmxvY2spCiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxv
Y2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2Nr
LmNwcAppbmRleCAxNjUzNTU3MTcxNWFlZDEzNTY2YmM3NzUwOWNiY2ViOTZjMTVlNWE2Li4xZDVk
MjEwYzkxMmViNmVlYjAzYmFiYTE4OThhNGM5MTYyMDZjMjc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKQEAgLTM5LDcg
KzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENv
ZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkQ29kZUJsb2NrKSB9OworY29u
c3QgQ2xhc3NJbmZvIFVubGlua2VkQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZENvZGVC
bG9jayJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShV
bmxpbmtlZENvZGVCbG9jaykgfTsKIAogVW5saW5rZWRDb2RlQmxvY2s6OlVubGlua2VkQ29kZUJs
b2NrKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIENvZGVUeXBlIGNvZGVUeXBlLCBjb25z
dCBFeGVjdXRhYmxlSW5mbyYgaW5mbywgT3B0aW9uU2V0PENvZGVHZW5lcmF0aW9uTW9kZT4gY29k
ZUdlbmVyYXRpb25Nb2RlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBlNDcxMmQ4NjhkZWJjZWZlNzQ2MzQ1NjY0NDYyMzgwZjg2MGYxY2E4Li5mNTdjYTM3
ZjIzNzM2MmU4NjNhMzJlNjZhMmI0Yzk3OGExY2ZhNTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcApAQCAt
MzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlu
a2VkRXZhbENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRFdmFsQ29kZUJsb2NrIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtl
ZEV2YWxDb2RlQmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRFdmFsQ29kZUJsb2Nr
OjpzX2luZm8gPSB7ICJVbmxpbmtlZEV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRXZhbENvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNlbGwp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RhZWYwM2ZhNjdhZWI3Y2IxNjcxNDEy
YWNmZGRjMjk0ZGY2MDE4Yi4uY2ZhYzhiYzczYTVmZDE3Zjk5ZWI0MDdiNTY2NGM4MGYzNjEyNzU0
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVu
Y3Rpb25Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNf
aW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBj
ZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggY2JmZWRmNTJjODAyNDAzNTA4
MjE0Y2RkNTc1MGY4OTc0ZTI2NmRlOS4uMTc1ZTVkNTgwM2ViMzhkNGNiZmYzY2Q2NmZiMjQ3ZjAz
NDdiNjA2YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBzdGF0aWNfYXNzZXJ0KHNpemVvZihVbmxpbmtlZEZ1bmN0aW9uRXhl
Y3V0YWJsZSkgPD0gMTI4LCAiVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUgc2hvdWxkIGZpdCBp
biBhIDEyOC1ieXRlIGNlbGwgdG8ga2VlcCBhbGxvY2F0ZWQgYmxvY2tzIGNvdW50IHRvIG9ubHkg
b25lIGFmdGVyIGluaXRpYWxpemluZyBKU0dsb2JhbE9iamVjdC4iKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0
aW9uRXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKSB9OwogCiBzdGF0aWMgVW5saW5rZWRGdW5jdGlv
bkNvZGVCbG9jayogZ2VuZXJhdGVVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKAogICAgIFZNJiB2
bSwgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNv
ZGUmIHNvdXJjZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggYzlkNGJj
NDYxMzU1ZWI3Y2IxYWFmZDcyZWY3MjJmYTEwNGU5MzBlMi4uM2NjODFhODM2MzUxNTQyYzBkMWNm
ZDVmODgzMzYwYjEyOGNhZmY5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0geyAiVW5s
aW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
aykgfTsKIAogdm9pZCBVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OmRlc3Ryb3koSlND
ZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCAyOWVjOWRiMGQ4ZjljYmU4
ZWRmOWE0OGNiY2QyYTdkZjk2YmMxMThmLi40ZTE5ZjYyMTQ2NmIxYTI4MjRmNmJhOGNiMTczZDc2
N2I5MDU1NzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9j
azo6c19pbmZvID0geyAiVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZFByb2dyYW1Db2Rl
QmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2lu
Zm8gPSB7ICJVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNl
bGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5
dGVjb2RlR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIv
Qnl0ZWNvZGVHZW5lcmF0b3IuY3BwCmluZGV4IDc5M2UwOWYyNjMwNWIzNzhmZDBlYTRiMjk4M2My
NzBlYmY0OGFiNDguLjNhMDM3MGQ1NmU1M2MzMzA0ZWZkOGY0MDgyY2I3NDIzN2U3NWMzZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNv
ZGVHZW5lcmF0b3IuY3BwCkBAIC00NTAsMTQgKzQ1MCwxNCBAQCBCeXRlY29kZUdlbmVyYXRvcjo6
Qnl0ZWNvZGVHZW5lcmF0b3IoVk0mIHZtLCBGdW5jdGlvbk5vZGUqIGZ1bmN0aW9uTm9kZSwgVW5s
aW5rZQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6TmFrZWQ6CiAg
ICAgICAgIGlmICghaXNDb25zdHJ1Y3RvcigpKSB7Ci0gICAgICAgICAgICBlbWl0VGhyb3dUeXBl
RXJyb3IoIkNhbm5vdCBjYWxsIGEgY29uc3RydWN0b3Igd2l0aG91dCB8bmV3fCIpOworICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVjdG9yIHdpdGhv
dXQgfG5ld3wiX3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ29uc3RydWN0b3JLaW5kOjpCYXNlOgogICAgIGNhc2UgQ29uc3RydWN0
b3JLaW5kOjpFeHRlbmRzOgogICAgICAgICBpZiAoIWlzQ29uc3RydWN0b3IoKSkgewotICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGNvbnN0cnVjdG9y
IHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90
IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Il9zKTsKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTI4NzEsNyArMjg3MSw3IEBA
IFJlZ2lzdGVySUQqIEJ5dGVjb2RlR2VuZXJhdG9yOjplbWl0SGFzUHJpdmF0ZUJyYW5kKFJlZ2lz
dGVySUQqIGRzdCwgUmVnaXN0ZXJJRCoKICAgICBpZiAoaXNTdGF0aWMpIHsKICAgICAgICAgUmVm
PExhYmVsPiBpc09iamVjdExhYmVsID0gbmV3TGFiZWwoKTsKICAgICAgICAgZW1pdEp1bXBJZlRy
dWUoZW1pdElzT2JqZWN0KG5ld1RlbXBvcmFyeSgpLCBiYXNlKSwgaXNPYmplY3RMYWJlbC5nZXQo
KSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJp
dmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3Igb2YgYSBub24tT2JqZWN0Iik7CisgICAgICAgIGVtaXRU
aHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNj
ZXNzb3Igb2YgYSBub24tT2JqZWN0Il9zKTsKICAgICAgICAgZW1pdExhYmVsKGlzT2JqZWN0TGFi
ZWwuZ2V0KCkpOwogICAgICAgICBlbWl0RXF1YWxpdHlPcDxPcFN0cmljdGVxPihkc3QsIGJhc2Us
IGJyYW5kKTsKICAgICB9IGVsc2UKQEAgLTI4ODQsNyArMjg4NCw3IEBAIHZvaWQgQnl0ZWNvZGVH
ZW5lcmF0b3I6OmVtaXRDaGVja1ByaXZhdGVCcmFuZChSZWdpc3RlcklEKiBiYXNlLCBSZWdpc3Rl
cklEKiBicmFuCiAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJlbD4gYnJhbmRD
aGVja09rTGFiZWwgPSBuZXdMYWJlbCgpOwogICAgICAgICBlbWl0SnVtcElmVHJ1ZShlbWl0RXF1
YWxpdHlPcDxPcFN0cmljdGVxPihuZXdUZW1wb3JhcnkoKSwgYmFzZSwgYnJhbmQpLCBicmFuZENo
ZWNrT2tMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFj
Y2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3IiKTsKKyAgICAgICAgZW1pdFRo
cm93VHlwZUVycm9yKCJDYW5ub3QgYWNjZXNzIHN0YXRpYyBwcml2YXRlIG1ldGhvZCBvciBhY2Nl
c3NvciJfcyk7CiAgICAgICAgIGVtaXRMYWJlbChicmFuZENoZWNrT2tMYWJlbC5nZXQoKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICAKQEAgLTM2NTYsNyArMzY1Niw3IEBAIFJlZ2lzdGVySUQqIEJ5
dGVjb2RlR2VuZXJhdG9yOjplbWl0UmV0dXJuKFJlZ2lzdGVySUQqIHNyYywgUmV0dXJuRnJvbSBm
cm9tKQogICAgICAgICAgICAgaWYgKGlzRGVyaXZlZCkgewogICAgICAgICAgICAgICAgIFJlZjxM
YWJlbD4gaXNVbmRlZmluZWRMYWJlbCA9IG5ld0xhYmVsKCk7CiAgICAgICAgICAgICAgICAgZW1p
dEp1bXBJZlRydWUoZW1pdElzVW5kZWZpbmVkKG5ld1RlbXBvcmFyeSgpLCBzcmMpLCBpc1VuZGVm
aW5lZExhYmVsLmdldCgpKTsKLSAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNh
bm5vdCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVy
aXZlZCBjbGFzcy4iKTsKKyAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5v
dCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVyaXZl
ZCBjbGFzcy4iX3MpOwogICAgICAgICAgICAgICAgIGVtaXRMYWJlbChpc1VuZGVmaW5lZExhYmVs
LmdldCgpKTsKICAgICAgICAgICAgICAgICBlbWl0VERaQ2hlY2soJm1fdGhpc1JlZ2lzdGVyKTsK
ICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29t
cGlsZXIvTm9kZXNDb2RlZ2VuLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGls
ZXIvTm9kZXNDb2RlZ2VuLmNwcAppbmRleCBmNmU0M2VjOGNiYmE4ZjI1NTkwYzZmODA4YTI0NDc1
ZGMyYjZlYWUxLi43YWM3NTg2NjVkOWZjMmFjOTA4NmU5N2VkMWNjNDRlMDY2ZGJlM2Q1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4u
Y3BwCkBAIC04OTYsNyArODk2LDcgQEAgdm9pZCBQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFAKICAgICAgICAg
UmVmPExhYmVsPiB2YWxpZFByb3BlcnR5TmFtZUxhYmVsID0gZ2VuZXJhdG9yLm5ld0xhYmVsKCk7
CiAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcm90b3R5cGVTdHJpbmcgPSBnZW5lcmF0b3Iu
ZW1pdExvYWQobnVsbHB0ciwgSlNWYWx1ZShnZW5lcmF0b3IuYWRkU3RyaW5nQ29uc3RhbnQoZ2Vu
ZXJhdG9yLnByb3BlcnR5TmFtZXMoKS5wcm90b3R5cGUpKSk7CiAgICAgICAgIGdlbmVyYXRvci5l
bWl0SnVtcElmRmFsc2UoZ2VuZXJhdG9yLmVtaXRCaW5hcnlPcDxPcFN0cmljdGVxPihnZW5lcmF0
b3IubmV3VGVtcG9yYXJ5KCksIHByb3RvdHlwZVN0cmluZy5nZXQoKSwgcHJvcGVydHlOYW1lLmdl
dCgpLCBPcGVyYW5kVHlwZXMoUmVzdWx0VHlwZTo6c3RyaW5nVHlwZSgpLCBSZXN1bHRUeXBlOjpz
dHJpbmdUeXBlKCkpKSwgdmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGdl
bmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxk
IG5hbWVkICdwcm90b3R5cGUnIik7CisgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxkIG5hbWVkICdwcm90b3R5cGUnIl9zKTsK
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbCh2YWxpZFByb3BlcnR5TmFtZUxhYmVsLmdldCgp
KTsKICAgICB9CiAKQEAgLTEwMTUsNyArMTAxNSw3IEBAIFJlZ2lzdGVySUQqIEJhc2VEb3ROb2Rl
OjplbWl0R2V0UHJvcGVydHlWYWx1ZShCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdp
CiAgICAgICAgICAgICBBU1NFUlQoc2NvcGUpOyAvLyBQcml2YXRlIG5hbWVzIGFyZSBhbHdheXMg
Y2FwdHVyZWQuCiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5kU3lt
Ym9sID0gZ2VuZXJhdG9yLmVtaXRHZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFy
eSgpLCBzY29wZS5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3ltYm9s
LmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwotICAgICAgICAgICAgZ2VuZXJhdG9y
LmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0
ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRy
eWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIl9zKTsKICAgICAgICAg
ICAgIHJldHVybiBkc3Q7CiAgICAgICAgIH0KIApAQCAtMTA3NCw3ICsxMDc0LDcgQEAgUmVnaXN0
ZXJJRCogQmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eShCeXRlY29kZUdlbmVyYXRvciYgZ2Vu
ZXJhdG9yLCBSZWdpc3RlckkKICAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcml2YXRl
QnJhbmRTeW1ib2wgPSBnZW5lcmF0b3IuZW1pdEdldFByaXZhdGVCcmFuZChnZW5lcmF0b3IubmV3
VGVtcG9yYXJ5KCksIHNjb3BlLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZhdGVCcmFuZChiYXNlLCBwcml2YXRlQnJh
bmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKLSAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZp
bmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlw
ZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7
CiAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgIH0KIApAQCAtMjQ1NCw3ICsyNDU0
LDcgQEAgUmVnaXN0ZXJJRCogUG9zdGZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3Im
IGdlbmVyYXRvciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRD
aGVja1ByaXZhdGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHBy
aXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhw
cmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5k
ZWZpbmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93
VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJf
cyk7CiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwog
ICAgICAgICB9CiAKQEAgLTI0NzIsNyArMjQ3Miw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2Rl
OjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkK
ICAgICAgICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0
KCkpOwogICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwoZ2VuZXJhdG9yLm5l
d1RlbXBvcmFyeSgpLCBnZXR0ZXJGdW5jdGlvbi5nZXQoKSwgTm9FeHBlY3RlZEZ1bmN0aW9uLCBh
cmdzLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBEZWJ1Z2dhYmxlQ2FsbDo6
WWVzKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dU
eXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIik7
CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICByZXR1cm4g
Z2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwogICAgICAgICB9CiAKQEAgLTI0OTAsNyAr
MjQ5MCw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJh
dG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBn
ZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5l
ZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAg
ICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICB9CiAK
QEAgLTI1NTgsNyArMjU1OCw3IEBAIFJlZ2lzdGVySUQqIERlbGV0ZUJyYWNrZXROb2RlOjplbWl0
Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0CiAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IHIxID0gZ2VuZXJhdG9yLmVtaXROb2RlKG1fc3Vic2NyaXB0KTsKICAgICBn
ZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RF
bmQoKSk7CiAgICAgaWYgKG1fYmFzZS0+aXNTdXBlck5vZGUoKSkKLSAgICAgICAgcmV0dXJuIGVt
aXRUaHJvd1JlZmVyZW5jZUVycm9yKGdlbmVyYXRvciwgIkNhbm5vdCBkZWxldGUgYSBzdXBlciBw
cm9wZXJ0eSIsIGRzdCk7CisgICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihn
ZW5lcmF0b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiX3MsIGRzdCk7CiAgICAg
cmV0dXJuIGdlbmVyYXRvci5lbWl0RGVsZXRlQnlWYWwoZmluYWxEZXN0LmdldCgpLCByMC5nZXQo
KSwgcjEuZ2V0KCkpOwogfQogCkBAIC0yNTc0LDcgKzI1NzQsNyBAQCBSZWdpc3RlcklEKiBEZWxl
dGVEb3ROb2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVn
aXN0ZXJJRAogCiAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9uSW5mbyhkaXZvdCgpLCBkaXZv
dFN0YXJ0KCksIGRpdm90RW5kKCkpOwogICAgIGlmIChtX2Jhc2UtPmlzU3VwZXJOb2RlKCkpCi0g
ICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0b3IsICJDYW5ub3Qg
ZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiLCBkc3QpOworICAgICAgICByZXR1cm4gZW1pdFRocm93
UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5
Il9zLCBkc3QpOwogICAgIHJldHVybiBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5SWQoZmluYWxEZXN0
LmdldCgpLCByMC5nZXQoKSwgbV9pZGVudCk7CiB9CiAKQEAgLTI3NDMsNyArMjc0Myw3IEBAIFJl
Z2lzdGVySUQqIFByZWZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRv
ciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZh
dGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFp
dHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbklu
Zm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAgICAgIGdlbmVy
YXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHBy
aXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7CiAgICAg
ICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBwcm9wRHN0LmdldCgpKTsKICAgICAg
ICAgfQogCkBAIC0yNzYwLDcgKzI3NjAsNyBAQCBSZWdpc3RlcklEKiBQcmVmaXhOb2RlOjplbWl0
RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAg
ICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0KCkpOwog
ICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwocHJvcERzdC5nZXQoKSwgZ2V0
dGVyRnVuY3Rpb24uZ2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywgbV9wb3NpdGlvbiwg
bV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7CiAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcg
dG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICAgICAgZ2Vu
ZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQg
cHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRz
dCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0KIApAQCAtMjc3OCw3ICsyNzc4LDcgQEAgUmVn
aXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9y
LCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0
LCBwcm9wRHN0LmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBnZW5lcmF0b3IuZW1pdFRo
cm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRl
ciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIHByb3BEc3QuZ2V0KCkpOwogICAgIH0KIApAQCAtMzIwOCw3ICszMjA4
LDcgQEAgUmVnaXN0ZXJJRCogSW5zdGFuY2VPZk5vZGU6OmVtaXRCeXRlY29kZShCeXRlY29kZUdl
bmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlckkKICAgICBnZW5lcmF0b3IuZW1pdEp1bXAoZG9u
ZS5nZXQoKSk7CiAKICAgICBnZW5lcmF0b3IuZW1pdExhYmVsKHR5cGVFcnJvci5nZXQoKSk7Ci0g
ICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiUmlnaHQgaGFuZCBzaWRlIG9mIGluc3Rh
bmNlb2YgaXMgbm90IGFuIG9iamVjdCIpOworICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9mIGlzIG5vdCBhbiBvYmplY3QiX3MpOwog
CiAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbChjdXN0b20uZ2V0KCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAppbmRleCBh
MzFmYzFmMTVkNGI4Mzg5NDhmNDJiNGNmMWMwOWM0N2QzOTk1MDdhLi5lMDJmYjgxN2QzZmZiNjEw
NjA4MGNhOTA3ZjExMmZjNjlkNDQ2MGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKQEAgLTE0NSw3ICsxNDUsNyBAQCBT
dHJpbmcgRGVidWdnZXJDYWxsRnJhbWU6OmZ1bmN0aW9uTmFtZSgpIGNvbnN0CiAgICAgaWYgKGlz
VGFpbERlbGV0ZWQoKSkgewogICAgICAgICBpZiAoSlNGdW5jdGlvbiogZnVuYyA9IGpzRHluYW1p
Y0Nhc3Q8SlNGdW5jdGlvbio+KHZtLCBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jYWxsZWUpKQogICAg
ICAgICAgICAgcmV0dXJuIGZ1bmMtPmNhbGN1bGF0ZWREaXNwbGF5TmFtZSh2bSk7Ci0gICAgICAg
IHJldHVybiBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2stPmluZmVycmVkTmFtZSgpLmRh
dGEoKTsKKyAgICAgICAgcmV0dXJuIFN0cmluZyB7IG1fc2hhZG93Q2hpY2tlbkZyYW1lLmNvZGVC
bG9jay0+aW5mZXJyZWROYW1lKCkuZGF0YSgpIH07CiAgICAgfQogCiAgICAgcmV0dXJuIG1fdmFs
aWRNYWNoaW5lRnJhbWUtPmZyaWVuZGx5RnVuY3Rpb25OYW1lKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAKaW5kZXggMDRiOTRmNWU1Y2Fj
Y2M5ZmQ1MzE0ZWE4MGI5MmQ4NDNhYjMxZmFiMi4uZTc2YTQxZjNhYzY4N2M4ZjVlZDRkZWFhZWU5
ODFhZDkyM2I5NWE5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2Vy
L0RlYnVnZ2VyU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlclNjb3BlLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERlYnVnZ2VyU2NvcGUpOwogCi1j
b25zdCBDbGFzc0luZm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVidWdnZXJTY29wZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGVi
dWdnZXJTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7
ICJEZWJ1Z2dlclNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07CiAKIERlYnVnZ2VyU2NvcGUqIERlYnVn
Z2VyU2NvcGU6OmNyZWF0ZShWTSYgdm0sIEpTU2NvcGUqIHNjb3BlKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAppbmRleCBhOGNk
ZTg4MTUxNzU3Y2Q3ZGRhNDkwZDQ0NDU4Mjc4ZWEzYWY4ZTE5Li5mMGE4MTkzMjQ5ZjA2M2M2NTAz
Y2I3N2U3MmJlMmM3ODcxNzZiMzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcApAQCAtNTc1LDcgKzU3NSw3IEBAIFN0cmluZyBI
ZWFwU25hcHNob3RCdWlsZGVyOjpqc29uKEZ1bmN0aW9uPGJvb2wgKGNvbnN0IEhlYXBTbmFwc2hv
dE5vZGUmKT4gYWxsb3dOCiAgICAgICAgICAgICBqc29uLmFwcGVuZChzbmFwc2hvdE5vZGUudmFs
dWUoKS5pZGVudGlmaWVyKTsKIAogICAgICAgICAgICAgLy8gTWF5YmUgd2Ugc2hvdWxkIGp1c3Qg
YWx3YXlzIGVuY29kZSB0aGUgcm9vdCBuYW1lcy4KLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHJv
b3ROYW1lID0gcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1ZS5tYXJrUmVhc29uKTsK
KyAgICAgICAgICAgIGF1dG8gcm9vdE5hbWUgPSByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKGl0
LnZhbHVlLm1hcmtSZWFzb24pOwogICAgICAgICAgICAgYXV0byByZXN1bHQgPSBsYWJlbEluZGV4
ZXMuYWRkKHJvb3ROYW1lLCBuZXh0TGFiZWxJbmRleCk7CiAgICAgICAgICAgICBpZiAocmVzdWx0
LmlzTmV3RW50cnkpCiAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgrKzsKQEAgLTU4Myw3
ICs1ODMsNyBAQCBTdHJpbmcgSGVhcFNuYXBzaG90QnVpbGRlcjo6anNvbihGdW5jdGlvbjxib29s
IChjb25zdCBIZWFwU25hcHNob3ROb2RlJik+IGFsbG93TgogCiAgICAgICAgICAgICB1bnNpZ25l
ZCByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IDA7CiAgICAgICAgICAgICBpZiAoaXQudmFsdWUu
cmVhY2hhYmlsaXR5RnJvbU9wYXF1ZVJvb3RSZWFzb25zKSB7Ci0gICAgICAgICAgICAgICAgYXV0
byByZXN1bHQgPSBsYWJlbEluZGV4ZXMuYWRkKGl0LnZhbHVlLnJlYWNoYWJpbGl0eUZyb21PcGFx
dWVSb290UmVhc29ucywgbmV4dExhYmVsSW5kZXgpOworICAgICAgICAgICAgICAgIGF1dG8gcmVz
dWx0ID0gbGFiZWxJbmRleGVzLmFkZChTdHJpbmcgeyBpdC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9t
T3BhcXVlUm9vdFJlYXNvbnMgfSwgbmV4dExhYmVsSW5kZXgpOwogICAgICAgICAgICAgICAgIGlm
IChyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgr
KzsKICAgICAgICAgICAgICAgICByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IHJlc3VsdC5pdGVy
YXRvci0+dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290
TWFya1JlYXNvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNv
bi5jcHAKaW5kZXggOTQzOTM5Y2NlNzlhMTdiZGJkZmUxYmFhMTY3MWRkNzIzZjJjY2Q5YS4uNjUy
MjRiOWIzZWI3MjIxZTE1Mzk3OTVjODc4MWY2YTQ0ODU0NDc3MCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmNwcApAQCAtMzAsMTEgKzMwLDExIEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KFJvb3RNYXJrUmVhc29uIHJlYXNvbikKK0FTQ0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2Ny
aXB0aW9uKFJvb3RNYXJrUmVhc29uIHJlYXNvbikKIHsKICNkZWZpbmUgQ0FTRV9ST09UX01BUktf
UkVBU09OKHJlYXNvbikgXAogICAgIGNhc2UgSlNDOjpSb290TWFya1JlYXNvbjo6cmVhc29uOiBc
Ci0gICAgICAgIHJldHVybiAjcmVhc29uOyBcCisgICAgICAgIHJldHVybiAjcmVhc29uIiJfczsg
XAogCiAgICAgc3dpdGNoIChyZWFzb24pIHsKICAgICAgICAgRk9SX0VBQ0hfUk9PVF9NQVJLX1JF
QVNPTihDQVNFX1JPT1RfTUFSS19SRUFTT04pCkBAIC00Miw3ICs0Miw3IEBAIGNvbnN0IGNoYXIq
IHJvb3RNYXJrUmVhc29uRGVzY3JpcHRpb24oUm9vdE1hcmtSZWFzb24gcmVhc29uKQogI3VuZGVm
IENBU0VfUk9PVF9NQVJLX1JFQVNPTgogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuICJOb25lIjsKKyAgICByZXR1cm4gIk5vbmUiX3M7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFz
b24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgKaW5kZXgg
ZjIwOTYzMzZhMmQyYTM2MTUzMzAxMmI0MWUyODJmNTA1MDNlNTVmNC4uYTg2ZjljNGI5OTYzMjdm
NjIyNGJhODI1NTIyYWU4YjZkNzg1MWQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9Sb290TWFya1JlYXNvbi5oCkBAIC01NSw3ICs1NSw3IEBAIGVudW0gY2xhc3MgUm9vdE1hcmtS
ZWFzb24gOiB1aW50OF90IHsKIAogI3VuZGVmIERFQ0xBUkVfUk9PVF9NQVJLX1JFQVNPTgogCi1j
b25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKK0FT
Q0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKIAog
fSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVy
LmNwcAppbmRleCA2YWUxNzkzOWY0ODg1OGQ2MDQ2Yzk1OTI5MmQzNmNmYmM2MzQ3MWYxLi4yNTFk
YmUzYTVkZTkwNmE1NmUwZDc4MzAzYzJiZTRiNDQ1MzExMWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0dsb2JhbE9iamVj
dEluc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xNjMsNyArMTYzLDcgQEAgdm9pZCBKU0dsb2Jh
bE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXI6OmFwcGVuZEFQSUJhY2t0cmFjZShTY3JpcHRDYWxs
U3RhY2smIGNhbGwKICAgICBmb3IgKGludCBpID0gMDsgaSA8IHNpemU7ICsraSkgewogICAgICAg
ICBhdXRvIGRlbWFuZ2xlZCA9IFN0YWNrVHJhY2U6OmRlbWFuZ2xlKHN0YWNrW2ldKTsKICAgICAg
ICAgaWYgKGRlbWFuZ2xlZCkKLSAgICAgICAgICAgIGNhbGxTdGFjay5hcHBlbmQoU2NyaXB0Q2Fs
bEZyYW1lKGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgpID8gZGVtYW5nbGVkLT5kZW1hbmdsZWRO
YW1lKCkgOiBkZW1hbmdsZWQtPm1hbmdsZWROYW1lKCksICJbbmF0aXZlIGNvZGVdIl9zLCBub1Nv
dXJjZUlELCAwLCAwKSk7CisgICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxG
cmFtZShTdHJpbmcgeyBkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA/IGRlbWFuZ2xlZC0+ZGVt
YW5nbGVkTmFtZSgpIDogZGVtYW5nbGVkLT5tYW5nbGVkTmFtZSgpIH0sICJbbmF0aXZlIGNvZGVd
Il9zLCBub1NvdXJjZUlELCAwLCAwKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGNhbGxT
dGFjay5hcHBlbmQoU2NyaXB0Q2FsbEZyYW1lKCI/Il9zLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9T
b3VyY2VJRCwgMCwgMCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKaW5kZXggNzhlNzczNGUyNjM5
YjdlOTg4YmQ5NDU5YjA3NmJmN2JjZTRjMDcxZS4uMzBhMmIwMWVhODBiM2VlNDlhZWMzOWQ3MzFk
NmM0NDkwMzcwOWUwOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgbmFtZXNw
YWNlIEluc3BlY3RvciB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5m
byBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0KSB9
OwogCiBKU0luamVjdGVkU2NyaXB0SG9zdDo6SlNJbmplY3RlZFNjcmlwdEhvc3QoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPEluamVjdGVkU2NyaXB0SG9zdD4mJiBpbXBsKQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMzM2LDEzICszMzYsMTMgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgdW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICBKU0FycmF5
KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJy
YXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJu
YWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJ0YXJnZXRGdW5jdGlvbiIsIGJvdW5kRnVuY3Rpb24t
PnRhcmdldEZ1bmN0aW9uKCkpKTsKKyAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2Jh
bE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3Qs
ICJ0YXJnZXRGdW5jdGlvbiJfcywgYm91bmRGdW5jdGlvbi0+dGFyZ2V0RnVuY3Rpb24oKSkpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyIsIGJvdW5kRnVuY3Rpb24tPmJv
dW5kVGhpcygpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3Qs
IGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRU
aGlzIl9zLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRoaXMoKSkpOwogICAgICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzKCkpIHsKICAgICAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRBcmdzIiwgYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzQ29weShnbG9iYWxPYmplY3QpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImJvdW5kQXJncyJfcywgYm91bmRGdW5jdGlvbi0+Ym91bmRBcmdzQ29w
eShnbG9iYWxPYmplY3QpKSk7CiAgICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMzg4LDEwICszODgsMTAgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAgICAg
IEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxw
dHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgp
KTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYXJyYXkiLCBpdGVy
YXRlZFZhbHVlKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2Jq
ZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImFy
cmF5Il9zLCBpdGVyYXRlZFZhbHVlKSk7CiAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAg
ICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3Ry
dWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkp
KTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9T
dHJpbmcoa2luZCkpKTsKICAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICAgfQogCkBA
IC00MDIsMTAgKzQwMiwxMCBAQCBKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRl
cm5hbFByb3BlcnRpZXMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgICAgICAgICAg
dW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICAgICAgSlNBcnJheSogYXJyYXkgPSBjb25zdHJ1
Y3RFbXB0eUFycmF5KGdsb2JhbE9iamVjdCwgbnVsbHB0ciwgMik7CiAgICAgICAgICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICAgICAgYXJyYXktPnB1
dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9w
ZXJ0eShnbG9iYWxPYmplY3QsICJtYXAiLCBpdGVyYXRlZFZhbHVlKSk7CisgICAgICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgIm1hcCJfcywgaXRlcmF0ZWRWYWx1ZSkpOwogICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
ICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChn
bG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2Jq
ZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5nKGtpbmQpKSk7CiAgICAgICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDE2LDEwICs0MTYsMTAgQEAgSlNWYWx1ZSBK
U0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAg
ICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51
bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1
ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGlu
ZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0IiwgaXRl
cmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJz
ZXQiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1
Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiLCB0b1N0cmluZyhraW5kKSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIl9zLCB0b1N0
cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAg
fQpAQCAtNDI5LDcgKzQyOSw3IEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldElu
dGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgIEpT
QXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxwdHIs
IDEpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAg
ICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9i
YWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0
LCAic3RyaW5nIiwgc3RyaW5nSXRlcmF0b3ItPml0ZXJhdGVkU3RyaW5nKCkpKTsKKyAgICAgICAg
YXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50
ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJzdHJpbmciX3MsIHN0cmluZ0l0ZXJhdG9yLT5p
dGVyYXRlZFN0cmluZygpKSk7CiAgICAgICAgIHJldHVybiBhcnJheTsKICAgICB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhv
c3RQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVj
dGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKaW5kZXggYWRiYjVlNTdjMzQ1MWMzZDNhODhmODE4
ZjdlYzA1N2NlYjU5ODgyNC4uOThiNTJlYzJlODQ4NWNmN2FiMWQwYTIxYTRkNmE3NjZkNWVlOWU5
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVk
U2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKQEAgLTUyLDcgKzUyLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGVGdW5jdGlvbkV2YWx1YXRlV2kKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmlidXRlRXZhbHVhdGUpOwogc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVB
dHRyaWJ1dGVTYXZlZFJlc3VsdEFsaWFzKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0
ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3Rl
ZFNjcmlwdEhvc3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZh
U2NyaXB0Q2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lLmNwcAppbmRleCAyODk4Y2RmZWI5OWVlYWFjOTNlMjZlYTA2OTJj
ZDcxMjFlYzc4NjEyLi45NTU2OWUwYmNiZDQyNTk1M2Y1YjYyY2RjZDE5MmFhMmRkNzEwYzliIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENh
bGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFT
Y3JpcHRDYWxsRnJhbWUuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0
Q2FsbEZyYW1lOjpzX2luZm8gPSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRDYWxs
RnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0Q2FsbEZyYW1lOjpzX2luZm8g
PSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZSkgfTsKIAogSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lOjpKU0phdmFTY3JpcHRDYWxsRnJhbWUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmPEphdmFTY3JpcHRDYWxsRnJhbWU+JiYgaW1wbCkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcAppbmRl
eCBhYjVhOGFjZDAzMmZiODIxNTkzNGM3ZTQwYTAzMzJmODZhMGI4YjEyLi4xNzA4OGQ4NTkzNmQ1
NjdmOWUwNzFjMjY3ZTU3Y2M2YTY0Y2IxZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGpzSmF2YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVRoaXNPYmplY3QpOwogc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lQXR0cmlidXRlVHlw
ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0phdmFTY3JpcHRDYWxsRnJh
bWVJc1RhaWxEZWxldGVkKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2Fs
bEZyYW1lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRD
YWxsRnJhbWVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JBdWRpdEFnZW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCmluZGV4IDMwYWNhZjMzNDU4MDUzNzRkODFk
YmIwYjFjNWQ0OWZmN2FmMGE2ZTEuLmMyODc3MzZkNzFlN2ViOWU4ODU1OGZmY2QwYjcwNDUyNWJm
ZmNmOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFBy
b3RvY29sOjpFcnJvclN0cmluZ09yPHN0ZDo6dHVwbGU8UmVmPFByb3RvY29sOjpSdW50aW1lOjpS
ZW1vdGVPYmplY3Q+LCBzdGQ6Om9wCiAgICAgaWYgKGluamVjdGVkU2NyaXB0Lmhhc05vVmFsdWUo
KSkKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKGVycm9yU3RyaW5nKTsKIAotICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIiksICIpYCkoV2ViSW5zcGVjdG9yQXVkaXQpOyB9KSIpOworICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIl9zKSwgIilgKShXZWJJbnNwZWN0b3JBdWRpdCk7IH0pIik7CiAKICAg
ICBJbmplY3RlZFNjcmlwdDo6RXhlY3V0ZU9wdGlvbnMgb3B0aW9uczsKICAgICBvcHRpb25zLm9i
amVjdEdyb3VwID0gImF1ZGl0Il9zOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCBlZjBmZjYyYTc4YTNhMWY2MGQ1NTMyOWE1NTM3OGI0ZjU1MTJmZDdkLi4wYTY3YzhlYWY3
OGMzMmZjOTJhY2RkNjFiN2MzOWM2NmM1OGZkMjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50LmNwcApAQCAtNDksNyArNDksNyBAQAogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAot
Y29uc3QgY2hhciogY29uc3QgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0
R3JvdXAgPSAiYmFja3RyYWNlIjsKK2NvbnN0IEFTQ0lJTGl0ZXJhbCBJbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50OjpiYWNrdHJhY2VPYmplY3RHcm91cCA9ICJiYWNrdHJhY2UiX3M7CiAKIC8vIE9iamVj
dHMgY3JlYXRlZCBhbmQgcmV0YWluZWQgYnkgZXZhbHVhdGluZyBicmVha3BvaW50IGFjdGlvbnMg
YXJlIHB1dCBpbnRvIG9iamVjdCBncm91cHMKIC8vIGFjY29yZGluZyB0byB0aGUgYnJlYWtwb2lu
dCBhY3Rpb24gaWRlbnRpZmllciBhc3NpZ25lZCBieSB0aGUgZnJvbnRlbmQuIEEgYnJlYWtwb2lu
dCBtYXkKQEAgLTc0MSw3ICs3NDEsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxTdHJpbmc+
IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmdldFNjcmlwdFNvdXJjZShjb25zdCBQcgogewogICAg
IGF1dG8gaXQgPSBtX3NjcmlwdHMuZmluZChwYXJzZUludGVnZXJBbGxvd2luZ1RyYWlsaW5nSnVu
azxKU0M6OlNvdXJjZUlEPihzY3JpcHRJZCkudmFsdWVfb3IoMCkpOwogICAgIGlmIChpdCA9PSBt
X3NjcmlwdHMuZW5kKCkpCi0gICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZCgiTWlzc2luZyBz
Y3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3Rl
ZCgiTWlzc2luZyBzY3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIl9zKTsKIAogICAgIHJldHVybiBp
dC0+dmFsdWUuc291cmNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCmluZGV4IGUw
Y2U3NjVhNDJjYWE1ZmQwNjM3MDE1ZGVhZGQ1MjU0YWEzOTdhMTguLjRmYWUxYTk5ZGJhMmNmZWMy
OWM5Mzc2ODdjNDRjZTVlMTNmOTAwN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgK
QEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFJlZlB0cjxKU0M6OkJyZWFr
cG9pbnQ+IGRlYnVnZ2VyQnJlYWtwb2ludEZyb21QYXlsb2FkKFByb3RvY29sOjpFcnJvclN0cmlu
ZyYsIFJlZlB0cjxKU09OOjpPYmplY3Q+JiYgb3B0aW9ucyk7CiAKLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgYmFja3RyYWNlT2JqZWN0R3JvdXA7CisgICAgc3RhdGljIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBiYWNrdHJhY2VPYmplY3RHcm91cDsKIAogICAgIC8vIEluc3BlY3RvckFnZW50QmFz
ZQogICAgIHZvaWQgZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNrZW5kKEZyb250ZW5kUm91dGVyKiwg
QmFja2VuZERpc3BhdGNoZXIqKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwCmluZGV4
IDI0YjNlZmQ3YzJhMTg5MTllYjUyNWExNTY3MjM0ZTMwNjc1ODY2ZTAuLmIwNzE4YjljMDU2MmI1
MTc0NDJhODA3Y2ZmZWNhYjFmNDg2YWZkNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySGVhcEFnZW50LmNwcApA
QCAtMjU0LDcgKzI1NCw3IEBAIFByb3RvY29sOjpFcnJvclN0cmluZ09yPFJlZjxQcm90b2NvbDo6
UnVudGltZTo6UmVtb3RlT2JqZWN0Pj4gSW5zcGVjdG9ySGVhcEFnZW50CiAKICAgICBhdXRvIG9i
amVjdCA9IGluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoY2VsbCwgb2JqZWN0R3JvdXAsIHRydWUp
OwogICAgIGlmICghb2JqZWN0KQotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIkludGVy
bmFsIGVycm9yOiB1bmFibGUgdG8gY2FzdCBPYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIG1ha2VV
bmV4cGVjdGVkKCJJbnRlcm5hbCBlcnJvcjogdW5hYmxlIHRvIGNhc3QgT2JqZWN0Il9zKTsKIAog
ICAgIHJldHVybiBvYmplY3QucmVsZWFzZU5vbk51bGwoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCmluZGV4IGExNzMxNWNjNjg0
OTk2YTA1YzVhNWJhNjE1NjQ0MWU4YTliZWQ4NWUuLmM4NjdlZWQyNWE5ZjU4MzdiOTdmYzM3ZWEx
MTRkZGRjMmNiNjRiZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhl
Y3V0YWJsZUFsbG9jYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9FeGVj
dXRhYmxlQWxsb2NhdG9yLmNwcApAQCAtMTE1Miw4ICsxMTUyLDggQEAgdm9pZCBkdW1wSklUTWVt
b3J5KGNvbnN0IHZvaWQqIGRzdCwgY29uc3Qgdm9pZCogc3JjLCBzaXplX3Qgc2l6ZSkKICAgICAg
ICAgc3RhdGljIHZvaWQgZmx1c2goKSBXVEZfUkVRVUlSRVNfTE9DSyhkdW1wSklUTWVtb3J5TG9j
aykKICAgICAgICAgewogICAgICAgICAgICAgaWYgKGZkID09IC0xKSB7Ci0gICAgICAgICAgICAg
ICAgU3RyaW5nIHBhdGggPSBPcHRpb25zOjpkdW1wSklUTWVtb3J5UGF0aCgpOwotICAgICAgICAg
ICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoIiVwaWQiLCBTdHJpbmc6Om51bWJlcihnZXRDdXJy
ZW50UHJvY2Vzc0lEKCkpKTsKKyAgICAgICAgICAgICAgICBTdHJpbmcgcGF0aCB7IE9wdGlvbnM6
OmR1bXBKSVRNZW1vcnlQYXRoKCkgfTsKKyAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBs
YWNlKCIlcGlkIl9zLCBTdHJpbmc6Om51bWJlcihnZXRDdXJyZW50UHJvY2Vzc0lEKCkpKTsKICAg
ICAgICAgICAgICAgICBmZCA9IG9wZW4oRmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0
aW9uKHBhdGgpLmRhdGEoKSwgT19DUkVBVCB8IE9fVFJVTkMgfCBPX0FQUEVORCB8IE9fV1JPTkxZ
IHwgT19FWExPQ0sgfCBPX05PTkJMT0NLLCAwNjY2KTsKICAgICAgICAgICAgICAgICBSRUxFQVNF
X0FTU0VSVChmZCAhPSAtMSk7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRDb2RlLmNwcAppbmRleCA2YmY1YTFjMzYyODVlZDdiMjAwMTY3YzQ4ODcyM2QwNGQ2NTBiZTBj
Li45ODM2ZWE1ZjM5ZjcwYjBhNDdhNzZlNTIzNDY2YTkzNDg2ZmMxY2Y4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUQ29kZS5jcHAKQEAgLTQ0LDI0ICs0NCwyNCBAQCBKSVRDb2RlOjp+SklU
Q29kZSgpCiB7CiB9CiAKLWNvbnN0IGNoYXIqIEpJVENvZGU6OnR5cGVOYW1lKEpJVFR5cGUgaml0
VHlwZSkKK0FTQ0lJTGl0ZXJhbCBKSVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUpCiB7
CiAgICAgc3dpdGNoIChqaXRUeXBlKSB7CiAgICAgY2FzZSBKSVRUeXBlOjpOb25lOgotICAgICAg
ICByZXR1cm4gIk5vbmUiOworICAgICAgICByZXR1cm4gIk5vbmUiX3M7CiAgICAgY2FzZSBKSVRU
eXBlOjpIb3N0Q2FsbFRodW5rOgotICAgICAgICByZXR1cm4gIkhvc3QiOworICAgICAgICByZXR1
cm4gIkhvc3QiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpJbnRlcnByZXRlclRodW5rOgotICAgICAg
ICByZXR1cm4gIkxMSW50IjsKKyAgICAgICAgcmV0dXJuICJMTEludCJfczsKICAgICBjYXNlIEpJ
VFR5cGU6OkJhc2VsaW5lSklUOgotICAgICAgICByZXR1cm4gIkJhc2VsaW5lIjsKKyAgICAgICAg
cmV0dXJuICJCYXNlbGluZSJfczsKICAgICBjYXNlIEpJVFR5cGU6OkRGR0pJVDoKLSAgICAgICAg
cmV0dXJuICJERkciOworICAgICAgICByZXR1cm4gIkRGRyJfczsKICAgICBjYXNlIEpJVFR5cGU6
OkZUTEpJVDoKLSAgICAgICAgcmV0dXJuICJGVEwiOworICAgICAgICByZXR1cm4gIkZUTCJfczsK
ICAgICBkZWZhdWx0OgogICAgICAgICBDUkFTSCgpOwotICAgICAgICByZXR1cm4gIiI7CisgICAg
ICAgIHJldHVybiAiIl9zOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUu
aAppbmRleCA3ZTM4MzM4MmIzZjUxY2U3NDE4NTMzOGQ2MGRkNjAwNWMzYTViY2M3Li5mYjEwNmRl
ZmQzMDlmMTdiMWJkNGQ2ZGNhMDE5MDI3ZjU5MGIzYWJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0pJVENvZGUuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4gdXNpbmcgQ29kZVB0ciA9IE1hY3JvQXNzZW1ibGVyQ29kZVB0cjx0YWc+OwogICAgIHRl
bXBsYXRlPFB0clRhZyB0YWc+IHVzaW5nIENvZGVSZWYgPSBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8
dGFnPjsKIAotICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0eXBlTmFtZShKSVRUeXBlKTsKKyAgICBz
dGF0aWMgQVNDSUlMaXRlcmFsIHR5cGVOYW1lKEpJVFR5cGUpOwogCiAgICAgc3RhdGljIEpJVFR5
cGUgYm90dG9tVGllckpJVCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
T3BlcmF0aW9ucy5jcHAKaW5kZXggZWZjOWEwZThiYjAyZTIyNTgxMTg0NjIzZDEwNjBhODkzNWNk
ZjJhMS4uYWI2NmVhNDI5ZDQ4NTBlYjdjMWJiZGU2NmZjOTFkMmJkZDNjZWUzNiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3BwCkBAIC0xMjcsNyArMTI3LDcg
QEAgc3RhdGljIEpTVmFsdWUgZ2V0V3JhcHBlZFZhbHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTR2xvYmFsT2JqZWN0KiB0YXIKICAgICBpZiAodmFsdWUuaXNDYWxsYWJsZSh2bSkp
CiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNSZW1vdGVGdW5jdGlvbjo6dHJ5
Q3JlYXRlKHRhcmdldEdsb2JhbE9iamVjdCwgdm0sIHN0YXRpY19jYXN0PEpTT2JqZWN0Kj4odmFs
dWUuYXNDZWxsKCkpKSk7CiAKLSAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAidmFsdWUgcGFzc2luZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJlIGNhbGxhYmxlIG9yIHByaW1p
dGl2ZSIpOworICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBw
YXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsK
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBl
N2QzY2U5NDIxZTVkYzEyZTA5YmFmMDJiZTU1MDQyYWZhZDYwN2Q4Li5iZDJlYjgxMmM2YzM3ZWQ1
MmVkYzYzYjkyNjdmY2JjYTk4MTU5NGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtNzQxLDcg
Kzc0MSw3IEBAIHN0YXRpYyBib29sIHNoZWxsU3VwcG9ydHNSaWNoU291cmNlSW5mbyhjb25zdCBK
U0dsb2JhbE9iamVjdCopCiAgICAgcmV0dXJuIHN1cHBvcnRzUmljaFNvdXJjZUluZm87CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIsICZKU0ds
b2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogY29uc3QgR2xvYmFsT2JqZWN0
TWV0aG9kVGFibGUgR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewog
ICAgICZzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8sCiAgICAgJnNob3VsZEludGVycnVwdFNj
cmlwdCwKQEAgLTEwOTMsMTAgKzEwOTMsMTAgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgY2FjaGVQ
YXRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmICghY2FjaGVFbmFibGVkKCkpCi0gICAgICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgY2hhcio+KG51bGxwdHIpOworICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKICAgICAgICAgY29uc3QgY2hhciogY2FjaGVQYXRoID0gT3B0aW9uczo6
ZGlza0NhY2hlUGF0aCgpOwogICAgICAgICBTdHJpbmcgZmlsZW5hbWUgPSBGaWxlU3lzdGVtOjpl
bmNvZGVGb3JGaWxlTmFtZShGaWxlU3lzdGVtOjpsYXN0Q29tcG9uZW50T2ZQYXRoSWdub3JpbmdU
cmFpbGluZ1NsYXNoKHNvdXJjZU9yaWdpbigpLnVybCgpLmZpbGVTeXN0ZW1QYXRoKCkpKTsKLSAg
ICAgICAgcmV0dXJuIEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChjYWNoZVBh
dGgsIG1ha2VTdHJpbmcoc291cmNlKCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUs
ICIuYnl0ZWNvZGUtY2FjaGUiKSk7CisgICAgICAgIHJldHVybiBGaWxlU3lzdGVtOjpwYXRoQnlB
cHBlbmRpbmdDb21wb25lbnQoU3RyaW5nIHsgY2FjaGVQYXRoIH0sIG1ha2VTdHJpbmcoc291cmNl
KCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUsICIuYnl0ZWNvZGUtY2FjaGUiKSk7
CiAgICAgfQogCiAgICAgdm9pZCBsb2FkQnl0ZWNvZGUoKSBjb25zdApAQCAtMTI1OSwxMCArMTI1
OSwxMCBAQCBzdGF0aWMgQ1N0cmluZyB0b0NTdHJpbmcoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIFQmIHN0cgogICAgICAgICB0aHJvd091dE9mTWVtb3J5
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVVRG
OENvbnZlcnNpb25FcnJvcjo6SWxsZWdhbFNvdXJjZToKLSAgICAgICAgc2NvcGUudGhyb3dFeGNl
cHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxlZ2FsIHNv
dXJjZSBlbmNvdW50ZXJlZCBkdXJpbmcgVVRGOCBjb252ZXJzaW9uIikpOworICAgICAgICBzY29w
ZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwg
IklsbGVnYWwgc291cmNlIGVuY291bnRlcmVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24iX3MpKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBVVEY4Q29udmVyc2lvbkVycm9yOjpTb3VyY2VFeGhh
dXN0ZWQ6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgY3JlYXRl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiU291cmNlIGV4aGF1c3RlZCBkdXJpbmcgVVRGOCBjb252ZXJz
aW9uIikpOworICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0
ZUVycm9yKGdsb2JhbE9iamVjdCwgIlNvdXJjZSBleGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVy
c2lvbiJfcykpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNF
X0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMTQ3Nyw3ICsxNDc3LDcgQEAgcHJpdmF0ZToKICAg
ICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNDTWVtb3J5Rm9vdHByaW50OjpzX2luZm8gPSB7
ICJNZW1vcnlGb290cHJpbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ01lbW9yeUZvb3RwcmludCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0NNZW1vcnlGb290cHJpbnQ6OnNfaW5mbyA9IHsgIk1lbW9yeUZvb3RwcmludCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NNZW1vcnlG
b290cHJpbnQpIH07CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk1lbW9yeVVz
YWdlU3RhdGlzdGljcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSop
KQogewpAQCAtMTY2MiwxMyArMTY2MiwxMyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25SZWFkRmlsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcgogICAg
ICAgICBTdHJpbmcgdHlwZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSkudG9XVEZTdHJpbmcoZ2xv
YmFsT2JqZWN0KTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CiAgICAgICAgIGlmICh0eXBlICE9ICJiaW5hcnkiKQotICAgICAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScg
YXMgc2Vjb25kIGFyZ3VtZW50LiIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScgYXMgc2Vjb25kIGFyZ3VtZW50
LiJfcyk7CiAgICAgICAgIGlzQmluYXJ5ID0gdHJ1ZTsKICAgICB9CiAKICAgICBSZWZQdHI8VWlu
dDhBcnJheT4gY29udGVudCA9IGZpbGxCdWZmZXJXaXRoQ29udGVudHNPZkZpbGUoZmlsZU5hbWUp
OwogICAgIGlmICghY29udGVudCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iKTsKKyAgICAgICAgcmV0dXJuIHRo
cm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iX3Mp
OwogCiAgICAgaWYgKCFpc0JpbmFyeSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1N0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOFdpdGhMYXRpbjFGYWxsYmFjayhjb250ZW50LT5k
YXRhKCksIGNvbnRlbnQtPmxlbmd0aCgpKSkpOwpAQCAtMTgxMiw3ICsxODEyLDcgQEAgcHJpdmF0
ZToKICAgICBGSUxFKiBtX2Rlc2NyaXB0b3I7CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNGaWxl
RGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2NyaXB0b3IiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZURlc2NyaXB0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSlNGaWxlRGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2Ny
aXB0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNGaWxlRGVzY3JpcHRvcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1
bmN0aW9uT3BlbkZpbGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSkpCiB7CkBAIC0xODQ3LDcgKzE4NDcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZnVuY3Rpb25SZWFkbGluZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcgogICAgICAgICBsaW5lLmFwcGVuZChjKTsKICAgICB9CiAgICAgbGluZS5hcHBlbmQoJ1ww
Jyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhnbG9iYWxPYmplY3QtPnZt
KCksIGxpbmUuZGF0YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhn
bG9iYWxPYmplY3QtPnZtKCksIFN0cmluZyB7IGxpbmUuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJlY2lzZVRpbWUsIChKU0dsb2JhbE9iamVjdCos
IENhbGxGcmFtZSopKQpAQCAtMTkwMSw3ICsxOTAxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uQ2FsbGVySXNCQlFPck9NR0NvbXBpbGVkLCAoSlNHbG9iYWxPYmplY3QqIGds
b2IKICAgICBDYWxsZXJGdW5jdG9yIHdhc21Ub0pTRnJhbWU7CiAgICAgU3RhY2tWaXNpdG9yOjp2
aXNpdChjYWxsRnJhbWUsIHZtLCB3YXNtVG9KU0ZyYW1lKTsKICAgICBpZiAoIXdhc21Ub0pTRnJh
bWUuY2FsbGVyRnJhbWUoKSB8fCAhd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5pc0FueVdh
c21DYWxsZWUoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdhc20tPmpzIGltcG9ydCBmdW5jdGlvbiIpOworICAgICAg
ICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJjYWxsZXIgaXMgbm90
IGEgd2FzbS0+anMgaW1wb3J0IGZ1bmN0aW9uIl9zKTsKIAogICAgIC8vIFdlIGhhdmUgYSB3cmFw
cGVyIGZyYW1lIHRoYXQgd2UgZ2VuZXJhdGUgZm9yIGltcG9ydHMuIElmIHdlIGV2ZXIgY2FuIGRp
cmVjdCBjYWxsIGZyb20gd2FzbSB3ZSB3b3VsZCBuZWVkIHRvIGNoYW5nZSB0aGlzLgogICAgIEFT
U0VSVCghd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5jYWxsZWUoKS5pc1dhc20oKSk7CkBA
IC0yNTI0LDcgKzI1MjQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25TZXRU
aW1lb3V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogICAgIHZtLmRlZmVy
cmVkV29ya1RpbWVyLT5zY2hlZHVsZVdvcmtTb29uKHRpY2tldCwgW2NhbGxiYWNrXShEZWZlcnJl
ZFdvcmtUaW1lcjo6VGlja2V0KSB7CiAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QgPSBjYWxsYmFjay0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVm
ZmVyIGFyZ3M7Ci0gICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmlu
ZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iKTsKKyAgICAgICAgY2FsbChn
bG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4n
dCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgfSk7CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKIH0KQEAgLTI4MTMsOSArMjgxMyw5IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihmdW5jdGlvbldlYkFzc2VtYmx5TWVtb3J5TW9kZSwgKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPCiAKICAgICBpZiAoSlNPYmplY3QqIG9iamVjdCA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCkuZ2V0T2JqZWN0KCkpIHsKICAgICAgICAgaWYgKGF1dG8qIG1lbW9yeSA9IGpzRHluYW1pY0Nh
c3Q8SlNXZWJBc3NlbWJseU1lbW9yeSo+KHZtLCBvYmplY3QpKQotICAgICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgbWFrZVN0cmluZyhtZW1vcnktPm1lbW9yeSgp
Lm1vZGUoKSkpKTsKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmco
dm0sIFN0cmluZyB7IG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2RlKCkpIH0pKTsKICAg
ICAgICAgaWYgKGF1dG8qIGluc3RhbmNlID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqPih2bSwgb2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
anNTdHJpbmcodm0sIG1ha2VTdHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkpKTsKKyAgICAg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyB7IG1ha2VT
dHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkgfSkpOwogICAgIH0KIAogICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseU1lbW9yeU1v
ZGUgZXhwZWN0cyBlaXRoZXIgYSBXZWJBc3NlbWJseS5NZW1vcnkgb3IgV2ViQXNzZW1ibHkuSW5z
dGFuY2UiX3MpOwpAQCAtMzE4Myw3ICszMTgzLDcgQEAgc3RhdGljIHZvaWQgcnVuV2l0aE9wdGlv
bnMoR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENvbW1hbmRMaW5lJiBvcHRpb25zLCBib28K
ICAgICAgICAgSlNJbnRlcm5hbFByb21pc2UqIHByb21pc2UgPSBudWxscHRyOwogICAgICAgICBi
b29sIGlzTW9kdWxlID0gb3B0aW9ucy5tX21vZHVsZSB8fCBzY3JpcHRzW2ldLnNjcmlwdFR5cGUg
PT0gU2NyaXB0OjpTY3JpcHRUeXBlOjpNb2R1bGU7CiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmNv
ZGVTb3VyY2UgPT0gU2NyaXB0OjpDb2RlU291cmNlOjpGaWxlKSB7Ci0gICAgICAgICAgICBmaWxl
TmFtZSA9IHNjcmlwdHNbaV0uYXJndW1lbnQ7CisgICAgICAgICAgICBmaWxlTmFtZSA9IFN0cmlu
ZyB7IHNjcmlwdHNbaV0uYXJndW1lbnQgfTsKICAgICAgICAgICAgIGlmIChzY3JpcHRzW2ldLnN0
cmljdE1vZGUgPT0gU2NyaXB0OjpTdHJpY3RNb2RlOjpTdHJpY3QpCiAgICAgICAgICAgICAgICAg
c2NyaXB0QnVmZmVyLmFwcGVuZCgiXCJ1c2Ugc3RyaWN0XCI7XG4iLCBzdHJsZW4oIlwidXNlIHN0
cmljdFwiO1xuIikpOwogCkBAIC0zNDMwLDcgKzM0MzAsNyBAQCB2b2lkIENvbW1hbmRMaW5lOjpw
YXJzZUFyZ3VtZW50cyhpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAgICAgICAgICBpZiAoKytp
ID09IGFyZ2MpCiAgICAgICAgICAgICAgICAgcHJpbnRVc2FnZVN0YXRlbWVudCgpOwogICAgICAg
ICAgICAgT3B0aW9uczo6c2V0T3B0aW9uKCJ1c2VQcm9maWxlcj0xIik7Ci0gICAgICAgICAgICBt
X3Byb2ZpbGVyT3V0cHV0ID0gYXJndltpXTsKKyAgICAgICAgICAgIG1fcHJvZmlsZXJPdXRwdXQg
PSBTdHJpbmcgeyBhcmd2W2ldIH07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQog
ICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItbSIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAppbmRleCBkYTYwMGVhMDBmMGM4ZDY0M2E1N2Y2
NmZiNWY5YjBlM2EzNTY4M2E4Li43YjQ4MjdlZjNjMjM2NzIwNWRjOGQyMzllYTQyYTgxN2EzOTgy
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0
aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5j
cHAKQEAgLTIzMjgsOSArMjMyOCw5IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVZhcmFyZ3NDaGVja3Bv
aW50KFZNJiB2bSwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTR2xvYmFsT2JqZWN0CiAKICAgICBK
U1ZhbHVlIHJlc3VsdDsKICAgICBpZiAoT3Bjb2RlOjpvcGNvZGVJRCAhPSBvcF9jb25zdHJ1Y3Rf
dmFyYXJncykKLSAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQo
Y2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRl
Y29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiKTsKKyAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9i
YWxPYmplY3QsIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9w
ZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiX3MpOwogICAg
IGVsc2UKLSAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgZ2V0T3BlcmFu
ZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5
dGVjb2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiIpOworICAgICAgICByZXN1bHQgPSBjb25zdHJ1
Y3QoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUp
LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIl9z
KTsKIAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgY2FsbEZy
YW1lLT51bmNoZWNrZWRSKGJ5dGVjb2RlLm1fZHN0KSA9IHJlc3VsdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAKaW5kZXggMTA5MzUxZDgzNTUwNjMxMWY5ZjljNTA1MGQ3Y2Ri
NmQ2Y2ZlNjM2OS4uYzc3MmU4ZmI5OTU4OGQ1ZmI3NGUwNDFhMThlZTZmYjM1YTU5MDhlNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTI2NzYsNyArMjY3Niw3IEBA
IEpTVG9rZW5UeXBlIExleGVyPFQ+OjpzY2FuUmVnRXhwKEpTVG9rZW4qIHRva2VuUmVjb3JkLCBV
Q2hhciBwYXR0ZXJuUHJlZml4KQogICAgICAgICBtX2Vycm9yID0gdHJ1ZTsKICAgICAgICAgU3Ry
aW5nIGNvZGVQb2ludCA9IFN0cmluZzo6ZnJvbUNvZGVQb2ludChjdXJyZW50Q29kZVBvaW50KCkp
OwogICAgICAgICBpZiAoIWNvZGVQb2ludCkKLSAgICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52
YWxpZCB1bmljb2RlIGNoYXJhY3RlcmAiOworICAgICAgICAgICAgY29kZVBvaW50ID0gImBpbnZh
bGlkIHVuaWNvZGUgY2hhcmFjdGVyYCJfczsKICAgICAgICAgbV9sZXhFcnJvck1lc3NhZ2UgPSBt
YWtlU3RyaW5nKCJJbnZhbGlkIG5vbi1sYXRpbiBjaGFyYWN0ZXIgaW4gUmV4RXhwIGxpdGVyYWwn
cyBmbGFncyAnIiwgZ2V0VG9rZW4oKnRva2VuUmVjb3JkKSwgY29kZVBvaW50LCAiJyIpOwogICAg
ICAgICByZXR1cm4gdG9rZW47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXIuY3BwCmluZGV4IDU1MjZmNWM5YTEyNTAwODEzM2U5MThlMjZlZjMyNDdhODVkZTIzODkuLjgy
ZWMyNWE4YmZlM2I0NTZmMzA2NzU5NjZiMGY0OTYxMzUxYTY2ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTUwMDksNyArNTAwOSw3IEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gUGFyc2VyPExleGVyVHlwZT46OnBhcnNl
UHJpbWFyeUV4cHJlCiAgICAgICAgIFRyZWVFeHByZXNzaW9uIHJlID0gY29udGV4dC5jcmVhdGVS
ZWdFeHAobG9jYXRpb24sICpwYXR0ZXJuLCAqZmxhZ3MsIHN0YXJ0KTsKICAgICAgICAgaWYgKCFy
ZSkgewogICAgICAgICAgICAgWWFycjo6RXJyb3JDb2RlIGVycm9yQ29kZSA9IFlhcnI6OmNoZWNr
U3ludGF4KHBhdHRlcm4tPnN0cmluZygpLCBmbGFncy0+c3RyaW5nKCkpOwotICAgICAgICAgICAg
cmVnZXhGYWlsKFlhcnI6OmVycm9yTWVzc2FnZShlcnJvckNvZGUpKTsKKyAgICAgICAgICAgIHJl
Z2V4RmFpbChTdHJpbmcgeyBZYXJyOjplcnJvck1lc3NhZ2UoZXJyb3JDb2RlKSB9KTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gcmU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDQyNWI4ZmFk
MTM4MGU3M2M2OGU4MjE2ZGU0NWJlZDQ2ZGJhYWRlNTguLmU5MzgyZDQ5NDMyYzkyZWM4NWUzMzFk
ZDViZTMzMTUwYTM2Y2YxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BYnN0cmFjdE1vZHVsZVJlY29yZC5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNw
YWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKIH0gLy8gbmFtZXNwYWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50
ZXJuYWwKIAotY29uc3QgQ2xhc3NJbmZvIEFic3RyYWN0TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7
ICJBYnN0cmFjdE1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQWJzdHJhY3RNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFz
c0luZm8gQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIkFic3RyYWN0TW9kdWxlUmVj
b3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEFic3RyYWN0TW9kdWxlUmVjb3JkKSB9OwogCiBBYnN0cmFjdE1vZHVsZVJlY29yZDo6QWJz
dHJhY3RNb2R1bGVSZWNvcmQoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRl
bnRpZmllciYgbW9kdWxlS2V5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcAppbmRleCBlOWJkYjdjODVkYWFmZTU2Y2JmODFiZTZiNGU3NWVmN2RlM2JkMjdl
Li4wZjQ5NWI2NzgzOWMwM2RmNDBmMDlmMjllMTU5OGUyZTY2YWE3ZjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3Ip
OwogCi1jb25zdCBDbGFzc0luZm8gQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQWdncmVnYXRl
RXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCmluZGV4IDA4
ODZmOTNmNjVjZjVjNjExYzUzYjRkOGI1MmQ2NDVjM2Q1MzFlYmYuLmQ3YjEzODY2YTMwYmVlMjE5
ZDcxMTRiOWI4NmY5MmFlZDZjMWI1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQXJyYXlD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmFycmF5Q29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUNvbnN0cnVjdG9yKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEFycmF5Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBhcnJheUNvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRl
cmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggZDNhZDIxZTViYzk3ZWE5NDUwYzZjZTBiNmY3ZTBj
NjI1MTdjOTE5OS4uM2Y5NjhkMjFkNTM3ZGU3ZjZhMmQ5MTBiODAyMzZiMzhkYWM3M2I5NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0
ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIEFycmF5SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCAxODE1ZTE0
N2I5NjVlY2M2MmEyZWUzYmU4OGQ5NDhhMGMwYjRmMGVkLi41NzNhMTdiMGRjMGQ5MGQzNDE5YTAz
NjUxNjBhNDJjNDE1MDNmM2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlQcm90b3R5cGUuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGFycmF5UHJvdG9GdW5jTGFzdEluZGV4T2YpOwogCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQXJyYXlQcm90b3R5cGUgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6OnNfaW5mbyA9IHsi
QXJyYXkiLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5UHJvdG90eXBlKX07Citjb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIkFycmF5Il9zLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5UHJvdG90eXBlKSB9OwogCiBBcnJheVByb3RvdHlw
ZSogQXJyYXlQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpAQCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU09iamVj
dCo+IHNwZWNpZXNDb25zdHJ1CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgY29uc3RydWN0b3IsIGFyZ3MsICJTcGVjaWVzIGNvbnN0cnVjdGlvbiBkaWQgbm90IGdldCBh
IHZhbGlkIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24g
ZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZXhjZXB0aW9uUmVzdWx0KTsKICAgICByZXR1cm4gc3RkOjpwYWlyIHsgU3Bl
Y2llc0NvbnN0cnVjdFJlc3VsdDo6Q3JlYXRlZE9iamVjdCwgbmV3T2JqZWN0IH07CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9t
U3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMjA5NTlhOTkwNDcxNTNhY2ViMzlhZGJk
YjBmMjE0MTI2MWZhZjllLi5jZThkYWVlZTRmZGQyYTE4NDFiOGNmZjg0ZGIzMDMxYWQwYWYxN2E3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5j
SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0Zyb21TeW5jSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnJvbVN5bmNJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sICZhc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShBc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3lu
Y0Zyb21TeW5jSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Zyb21T
eW5jSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIEFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlw
ZTo6QXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRl
eCBmN2ZhYzU4YmM0OThiZTBjZDJjYTQ0ZDVlM2ZhMmJkMDYxMWNmNjA5Li40Y2Y3ZDZmYjM4MDNi
NTYwMjAwY2QyNTZiNTQ2YjBlNTM2ZmZjNThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0
LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0lu
Zm8gQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3lu
Y0Z1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jRnVu
Y3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCA0NTFk
MTA5MzdkNjQyYzdkMjZhZWUwMmUzNWY4NWQ1ZWE4YjM3ZDFmLi41ZmYxNTJjYWY1YzE4NTU1ZGZl
MGZjMzBmNmNkMjA3OTMzOTk2YTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Qcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OwogCiBBc3luY0Z1bmN0aW9uUHJv
dG90eXBlOjpBc3luY0Z1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiAgICAgOiBKU0M6OkpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDEyYzlhYmU0NTc2YzllYjllM2FiNDdi
ODgyYjJkYjY2YzZlMjFkNzUuLjU3YWU5YjAzYTFhNTM5MzQ3ODI1OGVlOTVjYTcxNjIyODUxOWRl
NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkFzeW5j
R2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IDhiNDA0ODU0N2Y4ZmRiY2E1NTk3YjM4YTk3
ZjgwNDliMjlkNDcxODcuLjZmNDYzY2ZlM2I0NTUwOTc5Njg5ZGY3MTUyOTgyOTJjMjgxZDM3YWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Q
cm90b3R5cGU6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQzo6SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDBlNmRjYjUzZDYzODA5NTU1NTJkZDBjN2YzZDEyNjBl
NzIzZGY1OGMuLmNmMjIxOGRlNWFhYjlmZmY1NzM4MWY1MWQ3MGE0NGFjY2IxZmJhNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0dlbmVyYXRvclByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEFzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBjYzY5
ODYzMjEwNzMwZmNmZjQxMGM3ZTlmYjkyYzQ5MmQwZDA3Y2RlLi5mYTNhMDNjYWJhZGE3Y2E3MWU1
MjBlZTAyN2Y1ODgxNWE3YzVmMjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEFzeW5jSXRlcmF0
b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0
b21pY3NPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09i
amVjdC5jcHAKaW5kZXggOWVlNDVkZjQ3M2E0OTE1NzVkOTU1YmNmNzk5MGVmZDA1YjgwYWQ4Ni4u
ZTJmODE3NTgxY2MxODA2ZTg3ODQzZDVkOGY5OTU0MzEwZjY5MmY3YyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKQEAgLTU1LDcgKzU1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEF0b21pY3NPYmplY3Qp
OwogRk9SX0VBQ0hfQVRPTUlDU19GVU5DKERFQ0xBUkVfRlVOQ19QUk9UTykKICN1bmRlZiBERUNM
QVJFX0ZVTkNfUFJPVE8KIAotY29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNfaW5mbyA9
IHsgIkF0b21pY3MiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEF0b21pY3NPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQXRvbWljc09iamVj
dDo6c19pbmZvID0geyAiQXRvbWljcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBdG9taWNzT2JqZWN0KSB9OwogCiBBdG9taWNzT2JqZWN0
OjpBdG9taWNzT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05v
bkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWI4NWQ5YjFiNzU0NWY2NGZm
NWEyYmZhYTFjZThmNTUwNjgwN2U5ZC4uNzc1NmNhZTFhNzA1NzQxODVjZTk3NTdlN2MyM2I3YjM1
ZDI5NGUwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEJpZ0ludENvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZiaWdJbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJpZ0ludENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEJp
Z0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
JmJpZ0ludENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQmln
SW50Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgQmlnSW50Q29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBiaWdJbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcAppbmRleCBmMTdlNTdjODVkZDZhMGNhNTFkZmU2
NWI2YzM0Y2ViZDJjZjhhYWNiLi4yN2ZhNjhjZjAzMzE4ZDg4MjkzNDI0NTUyM2JiZTE5ZGI4ZTIz
NTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludE9iamVjdC5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShCaWdJbnRPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8g
QmlnSW50T2JqZWN0OjpzX2luZm8gPSB7ICJCaWdJbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludE9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBCaWdJbnRPYmplY3Q6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRPYmplY3QpIH07
CiAKIAogQmlnSW50T2JqZWN0KiBCaWdJbnRPYmplY3Q6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYmlnSW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAKaW5kZXggOTUyMjA5ZDM3MTY1
NWM2MDk4ZGI2YmVlN2I1YjNlNzU2ZjZmOWJkZi4uNzg2NWE3OWZlNmVkODJiYzUwN2Y1MGQ4MDNm
YTMwM2JiZmZhNmY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
aWdJbnRQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGJpZ0ludFByb3RvRnVuY1ZhbHVlT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludFByb3RvdHlwZTo6c19pbmZvID0geyAiQmlnSW50Iiwg
JkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCaWdJbnRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBiaWdJbnRQ
cm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jv
b2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZWUyNTA2ZjkyNjM3NTU2ZDc0Mzk4NmI5MTE1NTY2
ZWYxYmJhYWEzNS4uZmEyY2ZkYmM2NGJlZDAzMjQ3MzExYzcwOGVjY2M4N2U0MzBlYTYwNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVjdG9yKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5D
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Db25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEJvb2xlYW5Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKaW5kZXgg
YjhjNjI0NmQxZmI5MGJjZDU4MjQ2ZWFlZjQzOTJmYTJkMjZhYmZmYS4uMzExY2FjODFmZDFjZTUz
NTMyZmQ1M2Q5NWE2OTA1MWY4MjQ0ZmNhMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKQEAgLTI3LDcgKzI3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShCb29sZWFuT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xl
YW4iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVhbk9iamVjdDo6c19pbmZv
ID0geyAiQm9vbGVhbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0OjpCb29sZWFu
T2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFu
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90
b3R5cGUuY3BwCmluZGV4IGFmMDA3YTM1ZWEwZTQwZjUzN2YxNjdjZDMwZjM1M2Y2OTdkYTAzNWIu
Ljg3N2UzODUwZTIzMDNlNmU2NjUzOTFkZjY1MWNiODc0NDE4ZGUyYzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGJvb2xlYW5Qcm90b0Z1
bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFu
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJCb29sZWFuIiwgJkJvb2xlYW5PYmplY3Q6OnNfaW5mbywg
JmJvb2xlYW5Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29s
ZWFuUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Qcm90b3R5cGU6OnNfaW5m
byA9IHsgIkJvb2xlYW4iX3MsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gYm9vbGVh
blByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9CeXRlY29kZUNhY2hlRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qnl0ZWNvZGVDYWNoZUVycm9yLmNwcAppbmRleCBhOWZjYjNlZjI1NDk2MmVjOWMwZDg0MWZmN2Ey
ZmZmMWM2MTg2ZmVmLi5kZDljMGUzNmNhZGYyZmE5ZjM2NDNjZTE0YzM3MjNhODkyNTE0NDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJy
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVjb2RlQ2FjaGVF
cnJvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgYm9vbCBCeXRlY29kZUNhY2hlRXJyb3I6OlN0YW5k
YXJkRXJyb3I6OmlzVmFsaWQoKSBjb25zdAogCiBTdHJpbmcgQnl0ZWNvZGVDYWNoZUVycm9yOjpT
dGFuZGFyZEVycm9yOjptZXNzYWdlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gc2FmZVN0cmVycm9y
KG1fZXJybm8pLmRhdGEoKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgc2FmZVN0cmVycm9yKG1fZXJy
bm8pLmRhdGEoKSB9OwogfQogCiBib29sIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6V3JpdGVFcnJvcjo6
aXNWYWxpZCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9DYWxsRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5j
cHAKaW5kZXggOTc4OWQ3NzNjMWMzNGU2MGFhMDUyNGNmYzcyZTdhMWI2MjMwY2E5ZS4uYjY0MjI2
NjM4ZjdmNDVhZTdlMmRkOWM1ZTdjOTY1ZDczZWJhNDM4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NhbGxEYXRhLmNwcApAQCAtMzMsMTIgKzMzLDEyIEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1KU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNhbGwoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbk9i
amVjdCwgZnVuY3Rpb25PYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9CiAKLUpTVmFsdWUg
Y2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0
LCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaAppbmRleCA3M2E5YzE1NWVkNDNm
YTIwYjU4OWMxOGIxZmZlZmY0YzQ0OTQ1MjNjLi4xYWM5M2U4MTIwOGI4ZDBmYzNlNmIyZTJkNjEx
MDIwMmQ3YWZiMDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
YWxsRGF0YS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmgK
QEAgLTYwLDggKzYwLDggQEAgZW51bSBjbGFzcyBQcm9maWxpbmdSZWFzb24gOiB1aW50OF90IHsK
IH07CiAKIC8vIENvbnZlbmllbmNlIHdyYXBwZXIgc28geW91IGRvbid0IG5lZWQgdG8gZGVhbCB3
aXRoIENhbGxEYXRhIHVubGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVzZSBpdC4KLUpTX0VYUE9SVF9Q
UklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmpl
Y3QsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JU
X1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9i
amVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJv
ck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0
KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2Jq
ZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAogSlNfRVhQT1JUX1BSSVZBVEUg
SlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29u
c3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwogSlNfRVhQ
T1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlv
bk9iamVjdCwgY29uc3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlz
dCYsIE5ha2VkUHRyPEV4Y2VwdGlvbj4mIHJldHVybmVkRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKaW5kZXggMjQ2NDAyZTBjNWQwYmI3N2Y0NmY4
ZTBlMWEyMjlkMWJjYWJkYjc4Yi4uYTU3NjkyOGVkOGFiYzEyNWQ5NTg1NDhkYWQwZDlkMGQ0OTUw
Nzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZv
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKQEAgLTE3
Niw3ICsxNzYsNyBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICB1c2luZyBDaGVja0pTQ2FzdFNu
aXBwZXRGdW5jdGlvblB0ciA9IFJlZjxTbmlwcGV0PiAoKikodm9pZCk7CiAKICAgICAvLyBBIHN0
cmluZyBkZW5vdGluZyB0aGUgY2xhc3MgbmFtZS4gRXhhbXBsZTogIldpbmRvdyIuCi0gICAgY29u
c3QgY2hhciogY2xhc3NOYW1lOworICAgIEFTQ0lJTGl0ZXJhbCBjbGFzc05hbWU7CiAgICAgLy8g
UG9pbnRlciB0byB0aGUgY2xhc3MgaW5mb3JtYXRpb24gb2YgdGhlIGJhc2UgY2xhc3MuCiAgICAg
Ly8gbnVsbHB0cmlmIHRoZXJlIGlzIG5vbmUuCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBwYXJlbnRD
bGFzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFy
Z3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwCmluZGV4IGRhOTA4ZGFjNDQwYmU3Njg4MDI0NGEwNjViY2Q5ZTdlMTg2N2I1Y2QuLjlm
NTFiZWQzZGFhZmE5YjM4MjEwMWY2MjQyMDMwMzk1ZmY2NGQxYWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNwcApAQCAtMzMsNyArMzMs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKENsb25lZEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBDbG9uZWRBcmd1bWVu
dHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ2xvbmVkQXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJ
bmZvIENsb25lZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENsb25lZEFyZ3VtZW50
cykgfTsKIAogQ2xvbmVkQXJndW1lbnRzOjpDbG9uZWRBcmd1bWVudHMoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgQnV0dGVyZmx5KiBidXR0ZXJmbHkpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUsIGJ1dHRlcmZseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvZGVDYWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2Fj
aGUuY3BwCmluZGV4IDI4ODRlOWE0YWNiOWQ4OTc2OGFhMGMzNDVkODM2OTBlNjNkN2VmODYuLjUy
NjFlMzA0OWI5Y2JiNDZjMmQwMmVmMjYzNGEzYzUyZjJkOTJjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcApAQCAtMjMzLDcgKzIzMyw3IEBAIFVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rp
b25FeGVjdXRhYmxlKFZNJiB2CiAgICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBwcm9ncmFt
LT5zaW5nbGVTdGF0ZW1lbnQoKTsKICAgICBpZiAoVU5MSUtFTFkoIWZ1bmNEZWNsKSkgewogICAg
ICAgICBKU1Rva2VuIHRva2VuOwotICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNlckVy
cm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJsZSwg
dG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CisgICAgICAgIGVycm9yID0gUGFyc2VyRXJyb3Io
UGFyc2VyRXJyb3I6OlN5bnRheEVycm9yLCBQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3JJcnJlY292
ZXJhYmxlLCB0b2tlbiwgIlBhcnNlciBlcnJvciJfcywgLTEpOwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICB9CiAgICAgQVNTRVJUKGZ1bmNEZWNsLT5pc0Z1bmNEZWNsTm9kZSgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tcGxldGlvbi5jcHAKaW5kZXggM2ZiZjFk
OGQzMzgzYTdhYjIxNzFhOTM4YWZhZTY5NjJjN2ZjYjBjZi4uMTlkMTZjYjgyNDhlOWExZjlmZDhi
OGEzMTk4ZTc3NmI0MjkyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tcGxldGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tcGxldGlvbi5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgYm9vbCBjaGVja01vZHVsZVN5bnRheChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFAK
ICAgICBpZiAoIW1vZHVsZVByb2dyYW1Ob2RlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJFbnRy
eVBvaW50TW9kdWxlIik7CisgICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6
OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSJfcyk7CiAgICAgTW9kdWxlQW5hbHl6ZXIg
bW9kdWxlQW5hbHl6ZXIoZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyOjpmcm9tVWlkKHByaXZhdGVO
YW1lKSwgc291cmNlLCBtb2R1bGVQcm9ncmFtTm9kZS0+dmFyRGVjbGFyYXRpb25zKCksIG1vZHVs
ZVByb2dyYW1Ob2RlLT5sZXhpY2FsVmFyaWFibGVzKCkpOwogICAgIG1vZHVsZUFuYWx5emVyLmFu
YWx5emUoKm1vZHVsZVByb2dyYW1Ob2RlKTsKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE3Miw3ICsx
NzIsNyBAQCBKU1ZhbHVlIGV2YWx1YXRlV2l0aFNjb3BlRXh0ZW5zaW9uKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZAogc3RhdGljIFN5bWJvbCogY3JlYXRlU3lt
Ym9sRm9yRW50cnlQb2ludE1vZHVsZShWTSYgdm0pCiB7CiAgICAgLy8gR2VuZXJhdGUgdGhlIHVu
aXF1ZSBrZXkgZm9yIHRoZSBzb3VyY2UtcHJvdmlkZWQgbW9kdWxlLgotICAgIFByaXZhdGVOYW1l
IHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1bGUi
KTsKKyAgICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24s
ICJFbnRyeVBvaW50TW9kdWxlIl9zKTsKICAgICByZXR1cm4gU3ltYm9sOjpjcmVhdGUodm0sIHBy
aXZhdGVOYW1lLnVpZCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db25zb2xlT2JqZWN0LmNwcAppbmRleCAwZGRlOTg3NzI3NjY1NTk4NDY5NjQ1ZjQzOTZjMjMy
YzU2NmU0M2ExLi5iOWFhYmQ0YzE0OGQyNGQzMjRmNjYyMjhiYTFjODRlYmYzMTllNzRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcApAQCAt
NzQsNyArNzQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJv
dG9GdW5jUmVjb3JkKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQ
cm90b0Z1bmNSZWNvcmRFbmQpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c29sZVByb3RvRnVuY1NjcmVlbnNob3QpOwogCi1jb25zdCBDbGFzc0luZm8gQ29uc29sZU9iamVj
dDo6c19pbmZvID0geyAiY29uc29sZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBD
b25zb2xlT2JqZWN0OjpzX2luZm8gPSB7ICJjb25zb2xlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENvbnNvbGVPYmplY3QpIH07CiAKIENv
bnNvbGVPYmplY3Q6OkNvbnNvbGVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5jcHAKaW5kZXggOTZlNjdkOGRlMjYyY2Ew
ZGZhMWJmMTFiMzEwMjFmMzAxNmJjYzUzNy4uNjJmYmE2YTcxMWY4YmIyODU0ZDg3M2Y1NzhhM2Iw
YWI4OTc4NmFkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29u
c3RydWN0RGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3Ry
dWN0RGF0YS5jcHAKQEAgLTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNv
bnN0cnVjdG9yT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBjb25zdCBjaGFyKiBlcnJvck1l
c3NhZ2UpCitKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgY29uc3RydWN0b3JPYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVjdChnbG9iYWxPYmplY3Qs
IGNvbnN0cnVjdG9yT2JqZWN0LCBjb25zdHJ1Y3Rvck9iamVjdCwgYXJncywgZXJyb3JNZXNzYWdl
KTsKIH0KIAotSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJn
TGlzdCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorSlNPYmplY3QqIGNvbnN0cnVj
dChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0
LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJnTGlzdCYgYXJncywgQVNDSUlMaXRlcmFsIGVy
cm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCmluZGV4IDU0NTJhZTJhYjhlOGQ0YTI0NTZhZjFj
NWVmNTIxZDg2ZThhNmVjYzMuLjc5MTYxY2EwNTEyZmNiMWQ1MzBlNjJiNjBmMThmNjdjY2FjZWRi
NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgK
QEAgLTM1LDggKzM1LDggQEAgbmFtZXNwYWNlIEpTQyB7CiBjbGFzcyBKU09iamVjdDsKIAogLy8g
Q29udmVuaWVuY2Ugd3JhcHBlciBzbyB5b3UgZG9uJ3QgbmVlZCB0byBkZWFsIHdpdGggQ2FsbERh
dGEgdW5sZXNzIHlvdSBhcmUgZ29pbmcgdG8gdXNlIGl0LgotSlNfRVhQT1JUX1BSSVZBVEUgSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JUX1BS
SVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rp
b25PYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgQVND
SUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CitKU19FWFBPUlRfUFJJVkFURSBKU09iamVjdCogY29u
c3RydWN0KEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSBu
ZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAog
SlNfRVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgY29uc3RydWN0b3IsIGNvbnN0IENhbGxEYXRhJiwgY29uc3QgQXJnTGlzdCYsIEpTVmFs
dWUgbmV3VGFyZ2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0N1c3RvbUdldHRlclNldHRlci5jcHAKaW5kZXggZDFjMDJmMDU5ZDA0NGZhMDNlNTM0NDkzNWNh
MGMyZmNiZjUwZmY4Ny4uZWJmY2M0MzY2MWM2MDc3MzdhNzk3YTI0OWIwZWFlYzdiYTdjMzRhNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0
dGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwCkBAIC0zMiw2ICszMiw2IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKTsKIAotY29u
c3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVy
U2V0dGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShD
dXN0b21HZXR0ZXJTZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVy
OjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB9IC8v
IG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RPTUF0dHJpYnV0ZUdldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDk3ZTcyZTE0MmViYTg0ODk0
MzYzZjA0MzkyOTk1ZmE1YjljZGQyNTEuLjcxZmRiZTZhMmY5ZmNhZDc3OThlNzhjYTcyY2M1N2Mw
MDZkNjNmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RPTUF0
dHJpYnV0ZUdldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcApAQCAtMzIsNiArMzIsNiBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERPTUF0
dHJpYnV0ZUdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBET01BdHRyaWJ1dGVHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdldHRlclNldHRlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NQXR0cmlidXRl
R2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUF0dHJpYnV0ZUdldHRlclNldHRl
cjo6c19pbmZvID0geyAiRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRl
clNldHRlcikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAppbmRleCBlNzM3YjJmYTM4ZGE3MDk5
YzYxMGFjZjk3NTRiZGYzZDBhODk2MzgzLi42ZDA5MDJjOWZjYzk0YWQwZDUxZTUxZGUyOGVhMmM5
NjUyOTRjN2EzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oZGF0ZU5vdyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
RGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sICZkYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShEYXRlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRh
dGVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBEYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBkYXRlQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggNTMyNWNmZmVmMzE4YTczN2JiYmJiZTRlYzY0NjBiZDg5
NjhlNGQ5Mi4uZjg3YmI2NmMwMzY3NWIyNjU1MzNmMTg5YmY0ZGQ5ZGUwODk1ODQwOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCkBAIC0yNyw3
ICsyNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRGF0ZUluc3Rh
bmNlOjpzX2luZm8gPSB7IkRhdGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJ
bnN0YW5jZTo6c19pbmZvID0geyAiRGF0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlSW5zdGFuY2UpIH07CiAKIERhdGVJbnN0YW5j
ZTo6RGF0ZUluc3RhbmNlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNl
KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQ
cm90b3R5cGUuY3BwCmluZGV4IDg1NDVhNTU5YTczMjhiNTUzN2RiODEyODNjOThhNjM5ZDZjNGE4
M2IuLjRkMDRhNTJiZWQ4ZmMyMjEzYjUyMWJkYTU2YjdiOGMzOTUxZDExNWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC0yMTAsNyAr
MjEwLDcgQEAgc3RhdGljIGJvb2wgZmlsbFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSoKICAgICByZXR1cm4gb2s7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7Ik9iamVjdCIsICZCYXNlOjpz
X2luZm8sICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RGF0ZVByb3RvdHlwZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlUHJvdG90eXBlVGFibGUKQEAgLTM1OCwx
MiArMzU4LDEyIEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihkYXRlUHJvdG9GdW5jVG9Qcmlt
aXRpdmVTeW1ib2wsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1l
LT50aGlzVmFsdWUoKS50b1RoaXMoZ2xvYmFsT2JqZWN0LCBFQ01BTW9kZTo6c3RyaWN0KCkpOwog
ICAgIGlmICghdGhpc1ZhbHVlLmlzT2JqZWN0KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9Qcmlt
aXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtT
eW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIl9zKTsK
ICAgICBKU09iamVjdCogdGhpc09iamVjdCA9IGpzQ2FzdDxKU09iamVjdCo+KHRoaXNWYWx1ZSk7
CiAgICAgSW50ZWdyaXR5OjphdWRpdFN0cnVjdHVyZUlEKHRoaXNPYmplY3QtPnN0cnVjdHVyZUlE
KCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJvdG90eXBl
W1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJv
dG90eXBlW1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iX3Mp
OwogCiAgICAgSlNWYWx1ZSBoaW50VmFsdWUgPSBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50
KDApOwogICAgIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgdHlwZSA9IHRvUHJlZmVycmVkUHJpbWl0
aXZlVHlwZShnbG9iYWxPYmplY3QsIGhpbnRWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcAppbmRleCBiYTQyYzYxODczZTM3OWMw
ZDNkMmIzOGU3NzNjYzE3NzZmZTRkMTU3Li5hY2M2MjlmMGQzMGQxNDExMzgzNWM2ZWUyYzVjMmYy
N2QwYWYzNzZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJl
Y3RBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RpcmVj
dEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShEaXJlY3RBcmd1bWVudHMpOwogCi1j
b25zdCBDbGFzc0luZm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERpcmVj
dEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBEaXJlY3RBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShEaXJlY3RBcmd1bWVudHMpIH07CiAKIERpcmVjdEFyZ3VtZW50czo6RGly
ZWN0QXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVuc2lnbmVkIGxlbmd0
aCwgdW5zaWduZWQgY2FwYWNpdHkpCiAgICAgOiBHZW5lcmljQXJndW1lbnRzKHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAppbmRleCA1NGIxNDk0NThmZjIy
ODcwZmRkYjgzMWZlYTk5Njc0ZDIyZDFhNTIyLi44ZTQ4YmIxNGRkNjFkYzgyM2EyODAyZGQxODNk
NTM2OGE2YWZlZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKQEAgLTkz
LDcgKzkzLDcgQEAgSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSB0aHJvd0RPTUF0dHJpYnV0ZVNl
dHRlclR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCosIFRocm8KIC8vIENvbnZlbmllbmNlIHdyYXBw
ZXJzLCB3cmFwIHJlc3VsdCBhcyBhbiBFbmNvZGVkSlNWYWx1ZS4KIGlubGluZSB2b2lkIHRocm93
Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwg
RXhjZXB0aW9uKiBleGNlcHRpb24pIHsgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgZXhjZXB0aW9uKTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1FcnJvcihKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwgSlNWYWx1ZSBlcnJv
cikgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGVycm9yKSk7IH0KLWlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IGNoYXIq
IGVycm9yTWVzc2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdl
KSkpOyB9CitpbmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVz
c2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdlKSkpOyB9CiBp
bmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTVR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRo
cm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUpKTsgfQogaW5saW5lIEVuY29kZWRKU1Zh
bHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dT
Y29wZSYgc2NvcGUsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvck1lc3NhZ2Up
KTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IFN0cmluZyYgZXJyb3JN
ZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzA2NGQxMjBhN2Y4YzQyMThl
MTE3YjU2NjVkYjdlYTUwMjhhN2I3ZC4uNTBkMmVmMDRjYTMyNzA1MTJiZGZmZTAyYzNjMTU3MDJk
MjI4ZjAwNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJv
ckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFcnJvckNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcAppbmRleCA3MzhlN2Y0ZTEy
N2UxN2RlZjJmNDU5Yzk4YmEwYTc3MjUwNTY1OThiLi4zNTJiN2QyOTgzYzNhOTVlMGFkZDYxNjI4
YjMyMDRkMTgwZTM2ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckluc3RhbmNlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkpTTm9u
RmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShFcnJvckluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5m
byA9IHsgIkVycm9yIl9zLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVycm9ySW5zdGFuY2UpIH07CiAKIEVycm9ySW5zdGFu
Y2U6OkVycm9ySW5zdGFuY2UoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRXJyb3JUeXBl
IGVycm9yVHlwZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCBlZjQzMWYzOTVlMzQy
NWEyNjM1NGU5MzIwYWNjNGY5MjUyYjM4MjljLi5jNjZiZmE4MzBjNDFkMjdmOTFhMzMwYjY2YjYw
YTBhOWQwN2Y0NzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JQcm90b3R5cGUuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGVycm9yUHJvdG9GdW5jVG9TdHJpbmcpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6
c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJvclByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBFcnJvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGVycm9yUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRhYmxlLmNw
cAppbmRleCAxYjJmNGY1MmFiN2JmY2UzNDBiM2MzOTUyOWUxODA1NzJjZDE2NDQzLi5kZDg0OTMz
ODJmZjYxNDEwYmJlZWVkZDBiYmUyNzdkYzUyMDhlNjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5m
byA9IHsgIkV2YWxFeGVjdXRhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShFdmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
dmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiRXZhbEV4ZWN1dGFibGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUp
IH07CiAKIEV2YWxFeGVjdXRhYmxlOjpFdmFsRXhlY3V0YWJsZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaW5TdHJpY3RDb250ZXh0
LCBEZXJpdmVkQ29udGV4dFR5cGUgZGVyaXZlZENvbnRleHRUeXBlLCBib29sIGlzQXJyb3dGdW5j
dGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFsQ29udGV4dFR5
cGUgZXZhbENvbnRleHRUeXBlLCBOZWVkc0NsYXNzRmllbGRJbml0aWFsaXplciBuZWVkc0NsYXNz
RmllbGRJbml0aWFsaXplciwgUHJpdmF0ZUJyYW5kUmVxdWlyZW1lbnQgcHJpdmF0ZUJyYW5kUmVx
dWlyZW1lbnQpCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKS5ldmFsRXhlY3V0YWJsZVN0
cnVjdHVyZS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT52bSgpLCBzb3VyY2UsIGluU3RyaWN0Q29udGV4
dCwgZGVyaXZlZENvbnRleHRUeXBlLCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBpc0luc2lkZU9y
ZGluYXJ5RnVuY3Rpb24sIGV2YWxDb250ZXh0VHlwZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcAppbmRleCA0ZTIwNjQ2MGI5ZDIwMDY3
OGZmYzRhYmVhMzE2OTA1NDFkOGZmZjVmLi5mYjE5OWYzODc2MGFjYmUwZDM5NGJlMzAxNmY5ZjJk
YzI3NjI2OWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbi5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGNlcHRpb246OnNfaW5mbyA9IHsgIkV4Y2VwdGlvbiIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEV4Y2VwdGlvbjo6c19pbmZvID0geyAiRXhjZXB0aW9uIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4Y2VwdGlvbikgfTsKIAogRXhjZXB0aW9uKiBF
eGNlcHRpb246OmNyZWF0ZShWTSYgdm0sIEpTVmFsdWUgdGhyb3duVmFsdWUsIFN0YWNrQ2FwdHVy
ZUFjdGlvbiBhY3Rpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0V4Y2VwdGlvbkhlbHBlcnMuY3BwCmluZGV4IDA5OWZmNzFjZDYyNjViOGQxY2E4YzkxZTM2MTEz
NjFlZTBlZTdmYTMuLmQyMTM0Mzk2NDczNjBlOWNiNWI1ZDkzOTZhY2FhNDEyZGM4ZGM4NGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIFN0cmluZyBub3RBRnVuY3Rpb25Tb3VyY2VB
cHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY29uc3QgU3QKICAgICAgICAg
cmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2FnZSwgc291
cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNlOjpGb3Vu
ZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIG5vdEFGdW5jdGlvbkluZGV4ID0gb3JpZ2luYWxNZXNz
YWdlLnJldmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiIpOworICAgIGF1dG8gbm90QUZ1bmN0
aW9uSW5kZXggPSBvcmlnaW5hbE1lc3NhZ2UucmV2ZXJzZUZpbmQoImlzIG5vdCBhIGZ1bmN0aW9u
Il9zKTsKICAgICBSRUxFQVNFX0FTU0VSVChub3RBRnVuY3Rpb25JbmRleCAhPSBub3RGb3VuZCk7
CiAgICAgU3RyaW5nVmlldyBkaXNwbGF5VmFsdWU7CiAgICAgaWYgKG9yaWdpbmFsTWVzc2FnZS5p
czhCaXQoKSkgCkBAIC0xOTcsNyArMTk3LDcgQEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUGFyYW1l
dGVySW5Tb3VyY2VBcHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY28KICAg
ICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2Fn
ZSwgc291cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNl
OjpGb3VuZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIGluSW5kZXggPSBzb3VyY2VUZXh0LnJldmVy
c2VGaW5kKCJpbiIpOworICAgIGF1dG8gaW5JbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQo
ImluIl9zKTsKICAgICBpZiAoaW5JbmRleCA9PSBub3RGb3VuZCkgewogICAgICAgICAvLyBUaGlz
IHNob3VsZCBiYXNpY2FsbHkgbmV2ZXIgaGFwcGVuLCBzaW5jZSBKUyBjb2RlIG11c3QgdXNlIHRo
ZSBsaXRlcmFsCiAgICAgICAgIC8vIHRleHQgImluIiBmb3IgdGhlIGBpbmAgb3BlcmF0aW9uLiBI
b3dldmVyLCBpZiB3ZSBmYWlsIHRvIGZpbmQgImluIgpAQCAtMjE4LDcgKzIxOCw3IEBAIGlubGlu
ZSBTdHJpbmcgaW52YWxpZFBhcmFtZXRlckluc3RhbmNlb2ZTb3VyY2VBcHBlbmRlcihjb25zdCBT
dHJpbmcmIGNvbnRlbnQsIGNvCiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3Vy
Y2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3Vy
cmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBpbnN0
YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9mIik7CisgICAg
YXV0byBpbnN0YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9m
Il9zKTsKICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBTeW1ib2wuaGFzSW5zdGFuY2UgZnVu
Y3Rpb24gaXMgZGlyZWN0bHkgY2FsbGVkLgogICAgIGlmIChpbnN0YW5jZW9mSW5kZXggPT0gbm90
Rm91bmQpCiAgICAgICAgIHJldHVybiBvcmlnaW5hbE1lc3NhZ2U7CkBAIC0yNDYsNyArMjQ2LDcg
QEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUHJvdG90eXBlU291cmNlQXBwZW5kZXIoY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvbnMKICAgICBpZiAob2NjdXJyZW5jZSA9PSBFcnJvcklu
c3RhbmNlOjpGb3VuZEFwcHJveGltYXRlU291cmNlKQogICAgICAgICByZXR1cm4gZGVmYXVsdEFw
cHJveGltYXRlU291cmNlRXJyb3Iob3JpZ2luYWxNZXNzYWdlLCBzb3VyY2VUZXh0KTsKIAotICAg
IGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyIpOwor
ICAgIGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyJf
cyk7CiAgICAgaWYgKGV4dGVuZHNJbmRleCA9PSBub3RGb3VuZCB8fCBzb3VyY2VUZXh0LmZpbmQo
ImV4dGVuZHMiKSAhPSBleHRlbmRzSW5kZXgpCiAgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKG9y
aWdpbmFsTWVzc2FnZSwgIiAoZXZhbHVhdGluZyAnIiwgc291cmNlVGV4dCwgIicpIik7CiAKQEAg
LTMyNCwyNyArMzI0LDI3IEBAIEpTT2JqZWN0KiBjcmVhdGVFcnJvckZvckludmFsaWRHbG9iYWxB
c3NpZ25tZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvCiAKIEpTT2JqZWN0KiBj
cmVhdGVURFpFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVy
biBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIHVuaW5p
dGlhbGl6ZWQgdmFyaWFibGUuIik7CisgICAgcmV0dXJuIGNyZWF0ZVJlZmVyZW5jZUVycm9yKGds
b2JhbE9iamVjdCwgIkNhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJsZS4iX3MpOwog
fQogCiBKU09iamVjdCogY3JlYXRlSW52YWxpZFByaXZhdGVOYW1lRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgbWFrZVN0cmluZygiQ2Fubm90IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiKSwg
ZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNyZWF0ZVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIGludmFsaWQgcHJpdmF0ZSBmaWVs
ZCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEpTT2JqZWN0
KiBjcmVhdGVSZWRlZmluZWRQcml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VT
dHJpbmcoIkNhbm5vdCByZWRlZmluZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIiksIGRlZmF1bHRT
b3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCAiQ2Fubm90IHJlZGVmaW5lIGV4aXN0aW5nIHByaXZhdGUgZmllbGQiX3Ms
IGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3Jl
YXRlUHJpdmF0ZU1ldGhvZEFjY2Vzc0Vycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VTdHJpbmco
IkNhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcyksIGRlZmF1bHRTb3Vy
Y2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyBwcml2YXRlIG1ldGhvZCBvciBhY2Vzc29yIl9zLCBk
ZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0
ZVJlaW5zdGFsbFByaXZhdGVNZXRob2RFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5n
KCJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUgbWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0aGFu
IG9uY2UiX3MpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1
cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCBpbnN0YWxsIHNhbWUgcHJp
dmF0ZSBtZXRob2RzIG9uIG9iamVjdCBtb3JlIHRoYW4gb25jZSJfcywgZGVmYXVsdFNvdXJjZUFw
cGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEV4Y2VwdGlvbiogdGhyb3dPdXRPZk1lbW9yeUVy
cm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwCmluZGV4
IGZkNDczODJkMTVlZjc1OTk3MmY5NGM2MmUzMDBjZTkwZjA2OWI4ZjAuLjY4YWVlYWFmYTFiMDE5
MzU4MDJmOWZjNTViZDY4YTc5NTcyMDc3NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGVjdXRhYmxlQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAi
RXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZUJhc2U6OnNf
aW5mbyA9IHsgIkV4ZWN1dGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07CiAKIHZvaWQgRXhlY3V0YWJsZUJhc2U6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNw
cAppbmRleCBmMzFkYjg2YTc5NjE2ZTQ1YThkYzExNWFhMjY1NzBhYzNjN2U2NmY1Li5mNWZjMWE4
MWQ2NmM1ZWZjMTUyMzRmMDA3OWEyZjAyODA3NTUwYjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgRmluYWxpemF0aW9u
UmVnaXN0cnlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBGaW5hbGl6YXRpb25S
ZWdpc3RyeVByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUu
Y3BwCmluZGV4IDg1M2U0YWE4NzRjYjUxMDBhMzYzYjJjMDAxNDMzNTNjZmZhNWIwOWMuLjhhMGMx
MTgxOTY2MjJlMTY2ZmM4MWFhYmNkOThlYTc4OGExZWNkNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVBy
b3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZTo6c19pbmZvID0geyAiRmlu
YWxpemF0aW9uUmVnaXN0cnkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJGaW5h
bGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZSkgfTsKIAogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxpemF0aW9uUmVnaXN0
cnlSZWdpc3Rlcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNG
aW5hbGl6YXRpb25SZWdpc3RyeVVucmVnaXN0ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAxNjVlN2E3Zjdl
NDZkZGRjODE0MDU1OWQyMTcxMWI4MjBhNTI3MTQyLi5lYTM1NGEwY2ZmZjNjMjRlNTQ4MGQyOWYz
NGNkZDc5YWFlMWU3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9u
Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0V2l0
aEZ1bmN0aW9uQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEZ1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggZjE0OWQ0ZTU5YTcyNGE4NDI1
N2ZiNjg3ODQ5MmMyYWEzYjE2MmU4Yi4uYjQ3NDQ2NGU3MjIwYTU5NDlhNzM2MzM5ZTViZTBjMDM1
MjY4NDU2ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkV4ZWN1dGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJGdW5jdGlv
bkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uRXhlY3V0YWJsZSJf
cywgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFibGUpIH07CiAKIEZ1bmN0aW9uRXhlY3V0YWJsZTo6
RnVuY3Rpb25FeGVjdXRhYmxlKFZNJiB2bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBVbmxp
bmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogdW5saW5rZWRFeGVjdXRhYmxlLCBJbnRyaW5zaWMgaW50
cmluc2ljLCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbikKICAgICA6IFNjcmlwdEV4ZWN1
dGFibGUodm0uZnVuY3Rpb25FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCB2bSwgc291cmNlLCB1
bmxpbmtlZEV4ZWN1dGFibGUtPmxleGljYWxTY29wZUZlYXR1cmVzKCksIHVubGlua2VkRXhlY3V0
YWJsZS0+ZGVyaXZlZENvbnRleHRUeXBlKCksIGZhbHNlLCBpc0luc2lkZU9yZGluYXJ5RnVuY3Rp
b24gfHwgIXVubGlua2VkRXhlY3V0YWJsZS0+aXNBcnJvd0Z1bmN0aW9uKCksIEV2YWxDb250ZXh0
VHlwZTo6Tm9uZSwgaW50cmluc2ljKQpAQCAtMTY0LDcgKzE2NCw3IEBAIEpTU3RyaW5nKiBGdW5j
dGlvbkV4ZWN1dGFibGU6OnRvU3RyaW5nU2xvdyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFycm93RnVuY3Rpb25Nb2RlOgogICAgIGNh
c2UgU291cmNlUGFyc2VNb2RlOjpDbGFzc0ZpZWxkSW5pdGlhbGl6ZXJNb2RlOgotICAgICAgICBm
dW5jdGlvbkhlYWRlciA9ICIiOworICAgICAgICBmdW5jdGlvbkhlYWRlciA9ICIiX3M7CiAgICAg
ICAgIGJyZWFrOwogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFzeW5jRnVuY3Rpb25Nb2Rl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5
cGUuY3BwCmluZGV4IDFkNTJhYmY1ODVjMmJhYmVkNmM4NGI1OTk3NGJiYTk2NzNkYTBmYTkuLmM5
YzlhOGFjN2UyNDcxMThhNmJmMzRlMmIyNWE1NWU5ZDBkNDRhM2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMyLDcg
KzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShGdW5jdGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5j
dGlvblByb3RvdHlwZSkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25Qcm90b0Z1bmNUb1N0cmluZyk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihjYWxsRnVuY3Rpb25Qcm90b3R5cGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcAppbmRleCBhMTNkZmE0NTY2ODMxODhmNzk0ZDc5
OTM2YTkyMTM4NTYxZjIzMjcwLi40YTliNjQwNGRkNGM3M2VlYzc5NDM4NjljNTg0NDVmYmI0MjRi
ZjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEZ1bmN0aW9uUmFyZURhdGE6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uUmFyZURhdGEi
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9u
UmFyZURhdGEpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25SYXJlRGF0YTo6c19pbmZvID0g
eyAiRnVuY3Rpb25SYXJlRGF0YSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShGdW5jdGlvblJhcmVEYXRhKSB9OwogCiBGdW5jdGlvblJhcmVEYXRhKiBG
dW5jdGlvblJhcmVEYXRhOjpjcmVhdGUoVk0mIHZtLCBFeGVjdXRhYmxlQmFzZSogZXhlY3V0YWJs
ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ZhM2IyMTE2MjM2ODdjMWE5
OWIzNTUxOGQyYjRkMDQyN2Q0Nzc2MC4uZjQ5MWU3YzVlN2I3YzEwM2YzZWMwMTY0M2I1MGMzNGJm
YWY3MTRkMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEdlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNhbGxHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rp
b25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IGFlOWVmMjE4OGQ4ZmJlMWRmYTU2NGJjOWE0MmRi
ZDQwNzEyNTdlOTMuLmM0MmVkNDMyNTcxYTYxZDA1NGRkNjI2MmM0ZTNjY2ZiZTY3NDBmMGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShHZW5lcmF0b3JGdW5j
dGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvblByb3Rv
dHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSkgfTsK
IAogR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZt
LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9H
ZW5lcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2Vu
ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBmYTA5YjlkMzA2ZmVmZTA2MzU4MThhZjJjMjJkYmRl
ODJiMWNkYzhjLi43ZTgwYjFjMzQ3MTIxYTI0NzFhMTc3MDgyYTc3N2IyMTBjYzkzNmMzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkdlbmVyYXRvciIsICZCYXNlOjpz
X2luZm8sICZnZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gR2VuZXJhdG9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZnZW5lcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBA
YmVnaW4gZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IGZhZDJjMjNmNzEwOTI5NzBiNWVjMDhlODE0
ODRmMjE5MjEzMDkwNzcuLmU2NmUwMzM0ZTU5Njk3MzU2N2Y5MWQyYWY3ZDU2Mjk0MjZiMDhiMzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcApA
QCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEdldHRlclNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIl9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdldHRlclNldHRlcikgfTsKIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxk
cmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCmluZGV4IDAwYjY1YzBi
YTgyMjY4YjQ4MjY5NTQyMWQwODkyYmQ3ZDMzYjhiM2MuLjc1ZTg0YjM4ZmY3MjdiMzJjOGViMDAx
MTZhMGIxZDBhZDg0MGJmZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiR2xv
YmFsRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoR2xvYmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJHbG9iYWxFeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbEV4ZWN1dGFibGUp
IH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSGFzaE1hcEltcGwuY3BwCmluZGV4IGQxYzRjNWNmOTZlOTc1NGYyMzJiZTUyNjUwZjJlZThk
MmI0MmU2NTIuLmVhYmE2NGU2ZDhlMjZiMWU1ZjdmZWIxZGY0NTA1MDY3ZjEwYjIzNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hhc2hNYXBJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNoTWFwSW1wbC5jcHAKQEAgLTM2LDEx
ICszNiwxMSBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+
LCBIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhSwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBD
bGFzc0luZm8gSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT46OnNfaW5mbyA9Ci0g
ICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT4pIH07CisgICAg
eyAiSGFzaE1hcEJ1Y2tldCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhS2V5PikgfTsKIAogdGVt
cGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFL
ZXlWYWx1ZT46OnNfaW5mbyA9Ci0gICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVj
a2V0RGF0YUtleVZhbHVlPikgfTsKKyAgICB7ICJIYXNoTWFwQnVja2V0Il9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1h
cEJ1Y2tldERhdGFLZXlWYWx1ZT4pIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIERhdGE+CiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAppbmRleCBkNWJjNDk0MDk1N2U1NTJiZjY0YTUwYTU5
MDJjMTEwYzE1MjZkYjkxLi4wMWJjMDg2YWY4NDk4MGY4NmEwNGJiMmFkZDliNThhMTRkYmU2MTg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGVybmFsRnVuY3Rpb24pOwogCi1jb25zdCBD
bGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGVybmFsRnVu
Y3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJu
YWxGdW5jdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOYXRpdmVGdW5jdGlvbiBm
dW5jdGlvbkZvckNhbGwsIE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uRm9yQ29uc3RydWN0KQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxDb2xsYXRvci5jcHAKaW5kZXggYjZiYjc1MTU4MGQ3NjgyZTE2NmE0NTk2NWYzMjMyOWJl
MmM0YzY1NS4uMzY5NzU1MTEzNDlhZjNhNDU4OWEzYTAxNWRmMGU1MWEyOWFkZTJlMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwCkBAIC0zNiw3
ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bENvbGxh
dG9yOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsQ29sbGF0b3I6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3IpIH07CiAKIG5hbWVz
cGFjZSBJbnRsQ29sbGF0b3JJbnRlcm5hbCB7CiBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFs
c2U7CkBAIC0xNzIsNyArMTcyLDcgQEAgdm9pZCBJbnRsQ29sbGF0b3I6OmluaXRpYWxpemVDb2xs
YXRvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGxvY2EKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCiAgICAgewotICAgICAgICBTdHJpbmcg
Y29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICAgICAg
U3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCks
IEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKICAgICAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxsKCkpIHsKICAgICAgICAg
ICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUoY29sbGF0aW9uKSkgewpAQCAt
MTg4LDcgKzE4OCw3IEBAIHZvaWQgSW50bENvbGxhdG9yOjppbml0aWFsaXplQ29sbGF0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBsb2NhCiAgICAgaWYgKG51bWVyaWMg
IT0gVHJpU3RhdGU6OkluZGV0ZXJtaW5hdGUpCiAgICAgICAgIGxvY2FsZU9wdGlvbnNbc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5OjpLbildID0gU3RyaW5nKG51bWVy
aWMgPT0gVHJpU3RhdGU6OlRydWUgPyAidHJ1ZSJfcyA6ICJmYWxzZSJfcyk7CiAKLSAgICBTdHJp
bmcgY2FzZUZpcnN0T3B0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlv
bnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAidXBwZXIiLCAibG93ZXIiLCAiZmFs
c2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1cHBlclwiLCBcImxvd2VyXCIsIG9y
IFwiZmFsc2VcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYXNlRmlyc3RPcHRpb24gPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWNhc2VGaXJzdE9wdGlvbi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlT3B0aW9uc1tz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRlbnNpb25LZXk6OktmKV0gPSBjYXNlRmly
c3RPcHRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMGJjNWFhMzdkN2NkZTAyMDMzZDczZTlm
ODVjYjJlMTMxNzMxMDMyOS4uOTRlZWQ4N2ZiMzgxNmQ3ZmVjOGI3ZmNhODkyOTY3ODg4MTU1YWM0
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxD
b2xsYXRvckNvbnN0cnVjdG9yLmNwcApAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxJbnRsQ29sbGF0b3IpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SW50bENvbGxhdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZjb2xsYXRvckNvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bENvbGxhdG9yQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmY29sbGF0b3JDb25zdHJ1
Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvckNvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxDb2xsYXRvckNvbnN0cnVjdG9yLmx1dC5o
CiBAYmVnaW4gY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwNTlj
MTk1ZmIwMzU1ZDQ1NTA3MTZhZWI4NGM1OTkwMWM4MmQ0NTMxLi5kMGY5YjZjNjE2M2Y0NzE1YjU3
ZTg1ZTQwNjMxMDhiYzhmMWQzMTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bENvbGxhdG9yRnVuY0NvbXBhcmUp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5Db2xsYXRvciIsICZCYXNlOjpzX2luZm8sICZjb2xsYXRv
clByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRv
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuQ29sbGF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZjb2xsYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvclByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JQcm90b3R5cGUubHV0LmgKIEBi
ZWdpbiBjb2xsYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAppbmRleCBjMmQ0OWRhOThhNjYwYmM2
MmIwNGFmZTE5YzU3OGYyNTkyZmQ0YmI5Li5hMWM2MTQ1YzE3MWM0MGQxODhmMDcyOTU4NWYwNWVk
Yjc1YzBhYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBVRGF0ZUludGVydmFs
Rm9ybWF0RGVsZXRlcjo6b3BlcmF0b3IoKShVRGF0ZUludGVydmFsRm9ybWF0KiBmb3JtYXR0ZXIp
CiAgICAgICAgIHVkdGl0dmZtdF9jbG9zZShmb3JtYXR0ZXIpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1h
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07CiAKIG5hbWVzcGFjZSBJbnRsRGF0ZVRpbWVGb3Jt
YXRJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAt
NjA0LDcgKzYwNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRp
bWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50bFN0
cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhbGVu
ZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGludGxT
dHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxl
bmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxlbmRh
ci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBl
KGNhbGVuZGFyKSkgewpAQCAtNjE0LDcgKzYxNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0
Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwK
ICAgICAgICAgbG9jYWxlT3B0aW9uc1tzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRl
bnNpb25LZXk6OkNhKV0gPSBjYWxlbmRhcjsKICAgICB9CiAKLSAgICBTdHJpbmcgbnVtYmVyaW5n
U3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBT
dHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBBU0NJSUxpdGVy
YWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFudW1iZXJpbmdTeXN0ZW0uaXNOdWxsKCkpIHsK
ICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShudW1iZXJpbmdTeXN0
ZW0pKSB7CkBAIC04ODEsNyArODgxLDcgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogICAgICAg
ICBicmVhazsKICAgICB9CiAKLSAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVzdCBm
aXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJlc3Qg
Zml0XCIiLCAiYmVzdCBmaXQiKTsKKyAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVz
dCBmaXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJl
c3QgZml0XCIiX3MsICJiZXN0IGZpdCJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKIAogICAgIG1fZGF0ZVN0eWxlID0gaW50bE9wdGlvbjxEYXRlVGltZVN0eWxl
PihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmRhdGVTdHlsZSwgeyB7
ICJmdWxsIl9zLCBEYXRlVGltZVN0eWxlOjpGdWxsIH0sIHsgImxvbmciX3MsIERhdGVUaW1lU3R5
bGU6OkxvbmcgfSwgeyAibWVkaXVtIl9zLCBEYXRlVGltZVN0eWxlOjpNZWRpdW0gfSwgeyAic2hv
cnQiX3MsIERhdGVUaW1lU3R5bGU6OlNob3J0IH0gfSwgImRhdGVTdHlsZSBtdXN0IGJlIFwiZnVs
bFwiLCBcImxvbmdcIiwgXCJtZWRpdW1cIiwgb3IgXCJzaG9ydFwiIl9zLCBEYXRlVGltZVN0eWxl
OjpOb25lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCBiNDUxZWUwOWIxZGRm
MTdhZjU3MmFjOWE0ZWJiOTE3M2VlNmYyYjczLi4zZjg1MjFkMmIyN2MyM2EyNmY4YTgyOTllMzRi
YWFiY2RhZDNiMTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0
NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxEYXRlVGltZUZvcm1h
dENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2lu
Zm8sICZkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZv
cm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGU3NDEy
Y2MyODIxMmZiYTlmYTIxODlkZjY0NDY4YTRiM2ZjMzgxMGEuLmVjMTgxNTY5ODczODcxZmExZjMw
YjlkYTg1MzM3ZDA2MzVlYmM4ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNTAs
NyArNTAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGF0ZVRpbWVG
b3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5EYXRl
VGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5m
byA9IHsgIkludGwuRGF0ZVRpbWVGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZv
cm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3Bw
CmluZGV4IGZiZTg2ZTRiN2VhYTA2M2NiYjY0NjNiOWExZmE5ZjcxYjI5MTg3ZTQuLmE4YmNmYmJh
ZDE2ZDMxZTViZGI0YjhjODZmNWI0NDJhOTRhMTExMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCkBAIC0zNiw3ICszNiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lczo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIElu
dGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9Owog
CiBJbnRsRGlzcGxheU5hbWVzKiBJbnRsRGlzcGxheU5hbWVzOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwCmluZGV4IGVhMDUx
YmIzNGM1ZTFkOTIyZDdiZjA4NGYxM2E1ZTQ2ZjEwYzQzMjQuLjBhM2JmOGQ0OTQ0ODI3NGQ2MTdk
YTE5OWE0NDIwMGJhNmNiNjRlMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGlzcGxheU5h
bWVzQ29uc3RydWN0b3JTdXBwb3J0ZWRMb2NhbGVzT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmZGlzcGxheU5hbWVzQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1lc0NvbnN0cnVjdG9y
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lc0NvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIGRpc3BsYXlOYW1lc0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKaW5kZXggNDVhNjIwNWQxMmI4ZDhiMzZkMmY4YmFhOWU3NzNlZTQxMmMwMjU0Mi4uNmMx
ODVlYTU5MDBhMDQzZTI0MmZjZGE1MzFmNGE2Y2ZkODAwZmM5YiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
aW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIiwgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1l
c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5EaXNwbGF5TmFtZXMiX3MsICZCYXNlOjpzX2luZm8sICZk
aXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGlzcGxheU5hbWVzUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkaXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwCmlu
ZGV4IGY1YzMwNTcwOThjOTQ4ZjMxNGNmMWJjZmQ2OWNkZTg4ZDI1ZTkzM2YuLjc4NWM5M2ZjNTQ0
ZWM3ZDhjZWVlYmMxOTg5ZDA3ZmFkMjJiNTQ1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdDo6c19pbmZvID0g
eyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1h
dDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0KSB9OwogCiAvLyBXZSBkbyBub3Qg
dXNlIElDVURlbGV0ZXI8dWxpc3RmbXRfY2xvc2U+IGJlY2F1c2Ugd2UgZG8gbm90IHdhbnQgdG8g
aW5jbHVkZSB1bGlzdGZvcm1hdHRlci5oIGluIEludGxMaXN0Rm9ybWF0LmguCiAvLyB1bGlzdGZv
cm1hdHRlci5oIG5lZWRzIHRvIGJlIGluY2x1ZGVkIHdpdGggI3VuZGVmIFVfSElERV9EUkFGVF9B
UEksIGFuZCB3ZSB3b3VsZCBsaWtlIHRvIG1pbmltaXplIHRoaXMgZWZmZWN0IGluIEludGxMaXN0
Rm9ybWF0LmNwcC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWQwMDg0NTNmZmY2ZmY3YWQ3
M2JmNjk2OTZhNTI5NzQ1MTAwZWZhNS4uNjJmZjJkZTk0NWZiZDg0NGI5N2ZjZjYyYzk3MDlhMjdk
NmJjOTFiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExp
c3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvclN1cHBv
cnRlZExvY2FsZXNPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19p
bmZvLCAmbGlzdEZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRs
TGlzdEZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgJmxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIGxpc3RGb3JtYXRDb25zdHJ1Y3Rv
clRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlz
dEZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
TGlzdEZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggYmY3MzdhYzViYTRhYmUxMjFiZWM2MTVmODMw
ZjJiYjNjNjA2YjBiZi4uMjFhZWIwNTc2NTNmYzkzYTBhMzQ5YjcwM2JjNWM3MWViMTBkNjg1MyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0
Rm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihpbnRsTGlzdEZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmbGlz
dEZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxM
aXN0Rm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZs
aXN0Rm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bExpc3RGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBsaXN0Rm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5jcHAKaW5kZXggZmNjYWQzMTE4OWE4
YWQ3ZTAwMjQ5ZDQ5MjBjOWFhOGJjNjA0N2RhNS4uZWIzYmY5MmZjYzQ3NjQwNzRiZmUzMjQ1YTc1
ODE5N2QyNjY4OTA4MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bExvY2FsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExv
Y2FsZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsTG9jYWxlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07Citjb25z
dCBDbGFzc0luZm8gSW50bExvY2FsZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07
CiAKIG5hbWVzcGFjZSBJbnRsTG9jYWxlSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKQEAgLTI1MSwyMSArMjUxLDIxIEBAIHZvaWQgSW50bExvY2FsZTo6
aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJp
bmcmIHRhCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgbGFuZ3VhZ2UgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bGFuZ3VhZ2UsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIGxhbmd1YWdlID0g
aW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMt
Pmxhbmd1YWdlLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwo
KSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWxh
bmd1YWdlLmlzTnVsbCgpICYmICFpc1VuaWNvZGVMYW5ndWFnZVN1YnRhZyhsYW5ndWFnZSkpIHsK
ICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJsYW5ndWFnZSBp
cyBub3QgYSB3ZWxsLWZvcm1lZCBsYW5ndWFnZSB2YWx1ZSJfcyk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmpl
Y3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBudWxscHRyLCBudWxs
cHRyKTsKKyAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3Qs
IG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51
bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHZvaWQoKSk7CiAgICAgaWYgKCFzY3JpcHQuaXNOdWxsKCkgJiYgIWlzVW5pY29kZVNjcmlw
dFN1YnRhZyhzY3JpcHQpKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAic2NyaXB0IGlzIG5vdCBhIHdlbGwtZm9ybWVkIHNjcmlwdCB2YWx1ZSJfcyk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9
LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9LCBB
U0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFyZWdpb24uaXNOdWxsKCkgJiYg
IWlzVW5pY29kZVJlZ2lvblN1YnRhZyhyZWdpb24pKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAicmVnaW9uIGlzIG5vdCBhIHdlbGwtZm9ybWVkIHJlZ2lv
biB2YWx1ZSJfcyk7CkBAIC0yNzUsNyArMjc1LDcgQEAgdm9pZCBJbnRsTG9jYWxlOjppbml0aWFs
aXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgdGEK
ICAgICBpZiAoIWxhbmd1YWdlLmlzTnVsbCgpIHx8ICFzY3JpcHQuaXNOdWxsKCkgfHwgIXJlZ2lv
bi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQub3ZlcnJpZGVMYW5ndWFnZVNjcmlwdFJlZ2lv
bihsYW5ndWFnZSwgc2NyaXB0LCByZWdpb24pOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50
bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNh
bGVuZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGlu
dGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5j
YWxlbmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxl
bmRhci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJU
eXBlKGNhbGVuZGFyKSkgewpAQCAtMjg1LDcgKzI4NSw3IEBAIHZvaWQgSW50bExvY2FsZTo6aW5p
dGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJpbmcm
IHRhCiAgICAgICAgIGxvY2FsZUlELnNldEtleXdvcmRWYWx1ZSgiY2FsZW5kYXIiX3MsIGNhbGVu
ZGFyKTsKICAgICB9CiAKLSAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihn
bG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxs
KCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShjb2xsYXRp
b24pKSB7CkBAIC0yOTUsMTIgKzI5NSwxMiBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVM
b2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGxhdGlvbiJfcywgY29sbGF0aW9uKTsK
ICAgICB9CiAKLSAgICBTdHJpbmcgaG91ckN5Y2xlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXJDeWNsZSwgeyAiaDExIiwgImgx
MiIsICJoMjMiLCAiaDI0IiB9LCAiaG91ckN5Y2xlIG11c3QgYmUgXCJoMTFcIiwgXCJoMTJcIiwg
XCJoMjNcIiwgb3IgXCJoMjRcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBob3VyQ3ljbGUgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
aG91ckN5Y2xlLCB7ICJoMTEiLCAiaDEyIiwgImgyMyIsICJoMjQiIH0sICJob3VyQ3ljbGUgbXVz
dCBiZSBcImgxMVwiLCBcImgxMlwiLCBcImgyM1wiLCBvciBcImgyNFwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWhvdXJDeWNsZS5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZh
bHVlKCJob3VycyJfcywgaG91ckN5Y2xlKTsKIAotICAgIFN0cmluZyBjYXNlRmlyc3QgPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIiwgbnVsbHB0cik7Cisg
ICAgU3RyaW5nIGNhc2VGaXJzdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRp
b25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsgInVwcGVyIiwgImxvd2VyIiwgImZh
bHNlIiB9LCAiY2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwidXBwZXJcIiwgXCJsb3dlclwiLCBv
ciBcImZhbHNlXCIiX3MsIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2FzZUZpcnN0LmlzTnVsbCgpKQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGNhc2VmaXJzdCJfcywgY2FzZUZpcnN0
KTsKQEAgLTMxMCw3ICszMTAsNyBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAgIGlmIChu
dW1lcmljICE9IFRyaVN0YXRlOjpJbmRldGVybWluYXRlKQogICAgICAgICBsb2NhbGVJRC5zZXRL
ZXl3b3JkVmFsdWUoImNvbG51bWVyaWMiX3MsIG51bWVyaWMgPT0gVHJpU3RhdGU6OlRydWUgPyAi
eWVzIiA6ICJubyIpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdP
cHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdT
eXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51bWJlcmluZ1N5c3Rl
bSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0
ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwog
ICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmlj
b2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzc2NTNiYjM3MTM5NTc3MjI2NWVhZWVjM2UxMTVkYjBmMThlYmJiYy4uMDkyZDhhNDRm
MjFlYWIxZjQ5NTIxOWJhNmQxZjdmYWQxNjBiZTQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoSW50bExvY2FsZUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIElu
dGxMb2NhbGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1Y3RvcikgfTsKIAogSW50bExvY2FsZUNvbnN0
cnVjdG9yKiBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBJbnRsTG9jYWxlUHJvdG90eXBlKiBsb2NhbGVQcm90b3R5cGUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUu
Y3BwCmluZGV4IDA5MGM5MjUzMjMxZDYyMzlmOTQ5ZDM4MjZiMGRmNjQ2NDI2MDkyOGYuLjMyZDIy
ODI0ZGVjNmVkYTVmYzRmYmZjZTAwNGRmN2U4ZTAyNmQ4ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCkBAIC01OSw3
ICs1OSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGludGxMb2NhbGVQcm90
b3R5cGVHZXR0ZXJXZWVrSW5mbyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bExvY2FsZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Mb2NhbGUiLCAmQmFzZTo6
c19pbmZvLCAmbG9jYWxlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bExvY2FsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxvY2FsZSJfcywgJkJhc2U6OnNfaW5mbywgJmxvY2Fs
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExvY2FsZVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGxvY2FsZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCmluZGV4IDk1M2MzOWZlNjRhOWU4NGQwYmI2
YzEwYzA0MmIwNzNhZjY5ZTM1NjkuLmNhMDQyNDk4NTAxZjI2ODA4N2Y0NDUxZWJmZWU3MjljYWVk
OTEzOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVy
Rm9ybWF0KSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbyA9IHsg
Ik9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0KSB9OwogCiBuYW1lc3BhY2UgSW50bE51bWJlckZvcm1h
dEludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CkBAIC0z
MDQsNyArMzA0LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0Ojppbml0aWFsaXplTnVtYmVyRm9y
bWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmEKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51
bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxs
KCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAg
IGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpA
QCAtMzI4LDcgKzMyOCw3IEBAIHZvaWQgSW50bE51bWJlckZvcm1hdDo6aW5pdGlhbGl6ZU51bWJl
ckZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhCiAgICAgbV9zdHlsZSA9
IGludGxPcHRpb248U3R5bGU+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+c3R5bGUsIHsgeyAiZGVjaW1hbCJfcywgU3R5bGU6OkRlY2ltYWwgfSwgeyAicGVyY2VudCJf
cywgU3R5bGU6OlBlcmNlbnQgfSwgeyAiY3VycmVuY3kiX3MsIFN0eWxlOjpDdXJyZW5jeSB9LCB7
ICJ1bml0Il9zLCBTdHlsZTo6VW5pdCB9IH0sICJzdHlsZSBtdXN0IGJlIGVpdGhlciBcImRlY2lt
YWxcIiwgXCJwZXJjZW50XCIsIFwiY3VycmVuY3lcIiwgb3IgXCJ1bml0XCIiX3MsIFN0eWxlOjpE
ZWNpbWFsKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAg
U3RyaW5nIGN1cnJlbmN5ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5jeSIpLCB7IH0sIG51bGxwdHIsIG51
bGxwdHIpOworICAgIFN0cmluZyBjdXJyZW5jeSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2Jq
ZWN0LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiY3VycmVuY3kiKSwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjdXJyZW5jeS5pc051bGwo
KSkgewogICAgICAgICBpZiAoIWlzV2VsbEZvcm1lZEN1cnJlbmN5Q29kZShjdXJyZW5jeSkpIHsK
QEAgLTM1NSw3ICszNTUsNyBAQCB2b2lkIEludGxOdW1iZXJGb3JtYXQ6OmluaXRpYWxpemVOdW1i
ZXJGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYQogICAgIG1fY3VycmVu
Y3lTaWduID0gaW50bE9wdGlvbjxDdXJyZW5jeVNpZ24+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
SWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImN1cnJlbmN5U2lnbiIpLCB7IHsgInN0YW5kYXJk
Il9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkIH0sIHsgImFjY291bnRpbmciX3MsIEN1cnJlbmN5
U2lnbjo6QWNjb3VudGluZyB9IH0sICJjdXJyZW5jeVNpZ24gbXVzdCBiZSBlaXRoZXIgXCJzdGFu
ZGFyZFwiIG9yIFwiYWNjb3VudGluZ1wiIl9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIHVuaXQg
PSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJv
bVN0cmluZyh2bSwgInVuaXQiKSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcg
dW5pdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCBJZGVudGlmaWVy
Ojpmcm9tU3RyaW5nKHZtLCAidW5pdCIpLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJ
SUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgp
KTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlbGxGb3JtZWRVbml0PiB3ZWxsRm9ybWVkVW5pdDsKICAg
ICBpZiAoIXVuaXQuaXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDQx
NjQwODk5N2MxOGY3Yzc2MjhmNzc1YjhkNDFkZjc3MjQyYTRkMTYuLjZiZmI4OTllYjlkMjgyNDEy
Y2UyODM1NTFiYjJiOTM0NThlMDE1NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAt
NDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsTnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlcwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVyRm9ybWF0Q29uc3RydWN0b3JUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdENvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIG51bWJlckZvcm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKaW5kZXggOGRiMjk0MDhhZGZhYmNhMTgzNmQxOTBkOGNkMWI4ZTU1ODU5ZmFlYi4u
MDUxZmZlOGFiMzQ4Mjc2MTdiZjU1ODA4ZTM4OGZmNGE2YTg5YjQxYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bE51bWJlckZvcm1hdFByb3RvdHlwZUZ1bmNGb3JtYXRSYW5nZVRvUGFydHMKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZudW1iZXJG
b3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuTnVtYmVyRm9ybWF0Il9zLCAmQmFzZTo6c19pbmZv
LCAmbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKaW5kZXgg
MDQ5YmMzOTQ2ODI1NmRlMzZmYmNkZGE4ZmEyNzIyMTliYjMxOGVmNC4uNWUxNzY5ZTNmNTlhZjkw
NThkZmFlOTJlNTc5NjBlZWJkOGZlMGExZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTE2OCw3ICsxNjgsNyBAQCBzdHJ1Y3QgTWF0Y2hlclJl
c3VsdCB7CiAgICAgc2l6ZV90IGV4dGVuc2lvbkluZGV4IHsgMCB9OwogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsgIkludGwiLCAmQmFzZTo6c19pbmZvLCAmaW50
bE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxPYmplY3QpIH07
Citjb25zdCBDbGFzc0luZm8gSW50bE9iamVjdDo6c19pbmZvID0geyAiSW50bCJfcywgJkJhc2U6
OnNfaW5mbywgJmludGxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsT2JqZWN0KSB9OwogCiB2b2lkIFVGaWVsZFBvc2l0aW9uSXRlcmF0b3JEZWxldGVyOjpvcGVy
YXRvcigpKFVGaWVsZFBvc2l0aW9uSXRlcmF0b3IqIGl0ZXJhdG9yKSBjb25zdAogewpAQCAtNTg4
LDcgKzU4OCw3IEBAIFRyaVN0YXRlIGludGxCb29sZWFuT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wCiAgICAgcmV0dXJuIHRyaVN0YXRl
KHZhbHVlLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKTsKIH0KIAotU3RyaW5nIGludGxTdHJpbmdP
cHRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3QqIG9wdGlvbnMsIFBy
b3BlcnR5TmFtZSBwcm9wZXJ0eSwgc3RkOjppbml0aWFsaXplcl9saXN0PGNvbnN0IGNoYXIqPiB2
YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBjaGFyKiBmYWxsYmFjaykKK1N0cmlu
ZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0
KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHksIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjaykKIHsKICAgICAvLyBHZXRPcHRpb24gKG9wdGlvbnMsIHByb3BlcnR5LCB0eXBlPSJz
dHJpbmciLCB2YWx1ZXMsIGZhbGxiYWNrKQogICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8v
ZWNtYTQwMi8jc2VjLWdldG9wdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE9iamVjdC5oCmluZGV4IDk4ZTliYjU4M2U1NWJiN2NmOTdiMGE4NTgxYzBiOGM2NWNmMWM5OTcu
LjM0MTE3NjQyMjhmYWI0ODIyYTZjYmU4MDZlODhlODYxZjM0MmZiOTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKQEAgLTEyMiw3ICsxMjIsNyBAQCBUaW1l
Wm9uZUlEIHV0Y1RpbWVab25lSURTbG93KCk7CiBDYWxlbmRhcklEIHV0Y1RpbWVab25lSUQoKTsK
IAogVHJpU3RhdGUgaW50bEJvb2xlYW5PcHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU09iamVjdCog
b3B0aW9ucywgUHJvcGVydHlOYW1lKTsKLVN0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFs
T2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgc3RkOjppbml0aWFsaXpl
cl9saXN0PGNvbnN0IGNoYXIqPiB2YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBj
aGFyKiBmYWxsYmFjayk7CitTdHJpbmcgaW50bFN0cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCos
IEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjayk7CiB1bnNpZ25lZCBpbnRsTnVtYmVyT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNP
YmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgdW5zaWduZWQgbWluaW11bSwgdW5zaWduZWQg
bWF4aW11bSwgdW5zaWduZWQgZmFsbGJhY2spOwogdW5zaWduZWQgaW50bERlZmF1bHROdW1iZXJP
cHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIG1p
bmltdW0sIHVuc2lnbmVkIG1heGltdW0sIHVuc2lnbmVkIGZhbGxiYWNrKTsKIFZlY3RvcjxjaGFy
LCAzMj4gbG9jYWxlSURCdWZmZXJGb3JMYW5ndWFnZVRhZ1dpdGhOdWxsVGVybWluYXRvcihjb25z
dCBDU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUGx1cmFsUnVsZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzLmNwcAppbmRleCBhODUxMzExYzc0NGI1ZWFiMTY1YWM3ZjRkNTY3MTAwNmQ4NjY3
ODNlLi42OGVkZjE2M2JkNDc5ZmExODYxZTAyM2IyZDc3MjQ3ODNjNmRmZGViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlcy5jcHAKQEAgLTUy
LDcgKzUyLDcgQEAgdm9pZCBVUGx1cmFsUnVsZXNEZWxldGVyOjpvcGVyYXRvcigpKFVQbHVyYWxS
dWxlcyogcGx1cmFsUnVsZXMpCiAgICAgICAgIHVwbHJ1bGVzX2Nsb3NlKHBsdXJhbFJ1bGVzKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlczo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsUGx1cmFsUnVsZXMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzOjpzX2lu
Zm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzKSB9OwogCiB1c2luZyBVRW51bWVyYXRpb25E
ZWxldGVyID0gSUNVRGVsZXRlcjx1ZW51bV9jbG9zZT47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNw
cAppbmRleCA4MTJhYWEyMDAwZTMwYjllNmI5Y2Y3MzA1N2JlZDQ0NDAyMjc4ODE2Li4wMGVmYmE1
YzFkZWUyZDY5MjQ0YjJiYTBhNWE0YWUxODU4MzI5NDlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3Iu
Y3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGlu
dGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsZXNPCiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnBsdXJhbFJ1
bGVzQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1
cmFsUnVsZXNDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXND
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sICZwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBwbHVyYWxSdWxlc0NvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwCmluZGV4IDYyYzA4YmY5NTdhMTMyZjEyZDZk
NGJmYjJkODFjZGIwOThkM2E1OTEuLjJiNGU5NTZjODU0NTlmNTQ1YTIwYzJmMmQ3OTE2YmVkNjUx
Yzk4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVy
YWxSdWxlc1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUGx1cmFsUnVsZXNQcm90b3R5cGVGdW5jUmVzb2x2
ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUGx1
cmFsUnVsZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUGx1cmFsUnVsZXMiLCAmQmFzZTo6
c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50
bFBsdXJhbFJ1bGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlBsdXJhbFJ1bGVzIl9zLCAm
QmFzZTo6c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcGx1cmFsUnVsZXNQcm90
b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcAppbmRleCBlMzI4YTFjMWY0MGM0OWU2OTU0NTFhNTNk
Mjk5ZTUyMzE3YjlkNzU2Li45NWM0M2FmNzdlNzc5OWMyZWFiMzNlNzRmZTBhMTMxYzUwYTU2NjZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVU
aW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVs
YXRpdmVUaW1lRm9ybWF0LmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkg
fTsKIAogbmFtZXNwYWNlIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRJbnRlcm5hbCB7CiB9CkBAIC05
Niw3ICs5Niw3IEBAIHZvaWQgSW50bFJlbGF0aXZlVGltZUZvcm1hdDo6aW5pdGlhbGl6ZVJlbGF0
aXZlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgTG9jYWxlTWF0Y2hlciBs
b2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVyPihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsgeyAibG9va3VwIl9zLCBM
b2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3MsIExvY2FsZU1hdGNoZXI6OkJl
c3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwi
YmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBudW1i
ZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
dm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAgICAgICBp
ZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IGE4MjVjMzY2NzEzYzE0NDkw
Y2I2ZGRlYjQ1NzZkYmQ1NTZjZjM2NjQuLmQ2N2VjZjI1ZTg3NjMwODQyZTBjNmE0NThlZjM5MmMx
YTJlODI2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxS
ZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAtNDQs
NyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUmVsYXRpdmVU
aW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVsYXRpdmVUaW1l
Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFJl
bGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJklu
dGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDQ3OTQ1YWQ2YTk3MmFmZmY1
ZTYzOGJhZDk0ZTQyZTA5Zjk5ZTMyMS4uYWZiNDBhN2M3NzM1ZDc0OWQzNDNhYmVkODQyOWI1Zjhm
YjFmMjNmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJl
bGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTQyLDcgKzQy
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFJlbGF0aXZlVGltZUZv
cm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGkKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlJlbGF0aXZlVGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZyZWxhdGl2ZVRpbWVGb3Jt
YXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUmVsYXRpdmVUaW1lRm9ybWF0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKaW5kZXgg
YTVjZDAzYmU4YmQwOGRlZjExZjYwNGZkNWNlZTc2NTBkMDFhMDE5ZC4uMDE2YTFjMzIyNjk2YTY3
NWIwZmFkNGQ5YmZlOWQyMGU4ZDUyMzQxNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudEl0ZXJhdG9y
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSW50bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRl
cmF0b3IpIH07CiAKIEludGxTZWdtZW50SXRlcmF0b3IqIEludGxTZWdtZW50SXRlcmF0b3I6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFr
SXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4mJiBzZWdtZW50ZXIsIEJveDxWZWN0b3I8
VUNoYXI+PiBidWZmZXIsIEpTU3RyaW5nKiBzdHJpbmcsIEludGxTZWdtZW50ZXI6OkdyYW51bGFy
aXR5IGdyYW51bGFyaXR5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwN2Mw
NWNiYzBiY2FlOWMyNWEzZjNjYjAxMWVjMzJhZDhjNTYzMzI1Li41NTljNThjMzQ0YmI4MzliNGY0
NDk5MzIxYTFhMDk4ODYyMDkwODZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAt
MzksNyArMzksNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVu
dEl0ZXJhdG9yUHJvdG90eXBlRnVuY05leHQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNlZ21l
bnQgU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0
b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiU2VnbWVudCBTdHJpbmcgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sICZzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50SXRlcmF0
b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFNlZ21lbnRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmNwcAppbmRleCA4ZDg1ZmU3YzljYzJlNjBjZmU2YjIyMzgzMzQ5N2RkZjliNGY3
Y2IzLi4zZmRhMDVkMjkwNzkwNTg0N2EwYThmMWYxMjVkNDBjODFlNWQxZmMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcApAQCAtMzQsNyAr
MzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50
ZXI6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsU2VnbWVudGVyOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKIAogSW50
bFNlZ21lbnRlciogSW50bFNlZ21lbnRlcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcAppbmRleCAyNTkwNjEwNTBjZWNiYmFlZDljYTQx
MmM0NjA3MTE3OTA5NWU5ZDA0Li5mMWQxZWM0MWQ4YmI2OTM1ODU1MjM0ZDkzMjY5N2UzNGFlMTIy
MjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRlckNvbnN0cnVjdG9yU3VwcG9ydGVkTG9j
YWxlc09mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnNl
Z21lbnRlckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFNlZ21lbnRlckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZzZWdt
ZW50ZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50ZXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IubHV0LmgKIEBiZWdpbiBzZWdtZW50ZXJDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5
cGUuY3BwCmluZGV4IDY2YTVjYzNhOTdlZGY2OThiYmI5YTFlMjMxNmUwYzFmYzk5YTllNWEuLmJi
ZTA5NDdhZGMzZmQyZTcwOWVjNjk2OTJhMDU3MzUwOTNkNjg4NTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3Bw
CkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxT
ZWdtZW50ZXJQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlNlZ21lbnRlciIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50ZXJQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudGVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
U2VnbWVudGVyIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVyUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlclByb3RvdHlwZSkgfTsKIAog
LyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2VnbWVu
dGVyUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudHMuY3BwCmluZGV4IDhkZTM0YTMwNGVkZTAzZTBiODRiMjBjMjgwMTEzNDQxOTk2YWI0
ZjguLjUxNWU1OTUyNjUzNmU3ZDVmZWMxMGNjNTUyYTk2MGJkZDc5MmRiOWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMzcsNyArMzcs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50czo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNl
Z21lbnRzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRzKSB9OwogCiBJbnRsU2VnbWVu
dHMqIEludGxTZWdtZW50czo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHN0
ZDo6dW5pcXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPiYmIHNl
Z21lbnRlciwgQm94PFZlY3RvcjxVQ2hhcj4+JiYgYnVmZmVyLCBKU1N0cmluZyogc3RyaW5nLCBJ
bnRsU2VnbWVudGVyOjpHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCmlu
ZGV4IDUzZTNlY2YwMmZmODRhMjkzNjljNTQ5YTY2ZDA3ODk2ZTVlZjZkZDcuLjBjZTU1Y2RjMGYx
ZjEwNjkxZTllZmIzN2U2MjMxMGJmYWY5ZGFmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcApAQCAtNDAsNyAr
NDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVudHNQcm90
b3R5cGVGdW5jSXRlcmF0b3IpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEludGxTZWdtZW50c1Byb3RvdHlwZTo6c19pbmZvID0geyAiJVNlZ21lbnRzJSIsICZCYXNlOjpz
X2luZm8sICZzZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxTZWdtZW50c1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdtZW50cyUiX3MsICZCYXNlOjpzX2luZm8sICZz
ZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50c1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudHNQcm90b3R5
cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50c1Byb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMDkyYmE1
NTU5ZDVmYzJkNTllYjFkYzZiNDc0ZTNjZTk3MWFkMTA5YS4uYTIxZWVkM2IzODk2MmZjN2VjOGI2
NGM4ZWY3ZDllYzVkOWI1YmUxYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2
b2lkIEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0FycmF5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJy
YXkuY3BwCmluZGV4IDMxNzk4NWZmZWQ2YWViM2U4ODU5Mzg0MzAyMDNlYzliYTQzZDBjYzAuLjRh
ODQwZWVkNmRlMWQ3NTM1ZDY5YWY1ODljMzllOTk1ZmY4NjVhODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCkBAIC0zNiw3ICszNiw3IEBAIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBMZW5ndGhFeGNlZWRlZFRoZU1heGltdW1BcnJheUxlbmd0aEVycm9yIHsgIkxlbmd0
aCBleGNlZWRlZCB0CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShK
U0FycmF5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9IHsiQXJyYXkiLCAm
SlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQXJyYXkpfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FycmF5OjpzX2luZm8gPSB7ICJB
cnJheSJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FycmF5KSB9OwogCiBKU0FycmF5KiBKU0FycmF5Ojp0cnlDcmVh
dGVVbmluaXRpYWxpemVkUmVzdHJpY3RlZChPYmplY3RJbml0aWFsaXphdGlvblNjb3BlJiBzY29w
ZSwgR0NEZWZlcnJhbENvbnRleHQqIGRlZmVycmFsQ29udGV4dCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIHVuc2lnbmVkIGluaXRpYWxMZW5ndGgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCmluZGV4IGRhNmQxZGNlYjIxZTdjMGQ3ZmFkNDc0
YmE1MTA5OGMxM2NhNjczNTYuLjlmOGU0MmRiNjYxNDEzNzZhYjQ5Yjc1NDllNDc3OGY4OGUxYTI3
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIu
Y3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUJ1ZmZlcjo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZl
cil9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXI6OnNfaW5mbyA9IHsgIkFycmF5QnVm
ZmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXlCdWZmZXIpIH07CiAKIEpTQXJyYXlCdWZmZXI6OkpTQXJyYXlCdWZmZXIoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPEFycmF5QnVmZmVyPiYmIGFycmF5QnVm
ZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
YjkyY2UxNTczYzBjOTUxYjkwYjFiOTE5NzA1NmExMTU2OTE5YjZmYS4uMzhmMmFkZWNmOGQwNDE0
ZTc5MjljYjYzMDc0NDI1ZTY0NDM1Yzg5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCkBAIC00MSwx
MyArNDEsMTMgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0U2hh
cmVkQXJyYXlCdWZmZXIpOwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyQ29u
c3RydWN0b3IpCiB9OwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNTaGFyZWRBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZEFycmF5
QnVmZmVyQ29uc3RydWN0b3IpCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCmluZGV4IGNmYTA4Y2JlZjUx
ZjExNTgxOTY5NTVkMDUyNzFmNjc2MjFlYmU4YzUuLjE5MGJlZjExMmNjNWRiOTEwODExYmNlYjhj
NDA0ZTQyN2MyOTIwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU0FycmF5
QnVmZmVyKj4gc3BlY2llc0NvCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgc3BlY2llcy52YWx1ZSgpLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBn
ZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiBuZXdPYmplY3QgPSBjb25z
dHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLnZhbHVlKCksIGFyZ3MsICJTcGVjaWVzIGNvbnN0
cnVjdGlvbiBkaWQgbm90IGdldCBhIHZhbGlkIGNvbnN0cnVjdG9yIl9zKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlcnJvclJlc3VsdCk7CiAKICAgICAvLyAxNy4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QobmV3LCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KQEAgLTI1Nyw3
ICsyNTcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc2hhcmVkQXJyYXlCdWZmZXJQcm90
b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYgogfQogCiBjb25zdCBDbGFzc0luZm8g
SlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZSkKKyAgICAiQXJyYXlCdWZmZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclByb3RvdHlw
ZSkKIH07CiAKIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OkpTQXJyYXlCdWZmZXJQcm90b3R5cGUo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcAppbmRleCA5MTliMzE1OWNjMzc2MDQ1
ZDlhYjk2YTNiZTYyZTBhYWQyMjZiZTYyLi42ZjhkNWFkMGM5MzRhZWIyNTM5NDBjYjdhZThlZTBi
YzBiZDk0YmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Fy
cmF5QnVmZmVyVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
cnJheUJ1ZmZlclZpZXcuY3BwCkBAIC0zNyw3ICszNyw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJWaWV3OjpzX2luZm8gPSB7Ci0gICAgIkFycmF5
QnVmZmVyVmlldyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZpZXcpCisgICAgIkFycmF5QnVmZmVyVmlldyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5
QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlCdWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0
OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5kZXggMWNhMjUxNDZkYTIxNTUwZDczMzQ4OWYzMGIz
MWQ1NGM2MDc4YTA4Yi4uYTI0MWFmODA5NTg3Y2RmZmZmYzBlZTU4ZDliZDhjZTcxMWQ2MmI2NyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5SXRlcmF0b3Iu
Y3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5SXRlcmF0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQXJyYXlJdGVyYXRvcikgfTsKIAogSlNBcnJheUl0ZXJhdG9yKiBKU0FycmF5
SXRlcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCog
aXRlcmF0ZWRPYmplY3QsIEpTVmFsdWUga2luZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwCmluZGV4IDkwODU3ZjRiOGM1NTc1MTA4
OGUyODIyOWU0ZmFjNmUyYmU5MzFlMGEuLjVjMGMzMjlhNDU0OTIwNTE5ZmYyZmI1YTA0ZGMzYWRh
MzhhNDcxZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3lu
Y0Z1bmN0aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTQXN5bmNGdW5jdGlvbjo6c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiIs
ICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
QXN5bmNGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jRnVuY3Rpb246OnNfaW5m
byA9IHsgIkFzeW5jRnVuY3Rpb24iX3MsICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNGdW5jdGlvbikgfTsKIAogSlNBc3luY0Z1bmN0
aW9uOjpKU0FzeW5jRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFi
bGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0s
IGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCmluZGV4IGVkNTA2ZWVlMTVmOTM4ZTI1
MTQ0YWY0NzI2YmNhMjljNDQxZTk0ODIuLmZjZjFkOTJlMTAzNzVkZTQzNmQ2MGNhOGM3ZTEwZjRl
ZWM1MDQ4ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQXN5bmNHZW5lcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6
c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvcikgfTsKIAogSlNBc3lu
Y0dlbmVyYXRvciogSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcAppbmRleCA0YjAwMjVjNTQ0YzU5OTFkNDhh
NDg0YWJjZGJmNDliN2I1Njg0YTkyLi4zNDJiYWFjMDczMTg5NjQ1NjgzNmE5NjdhMTM0YWJhMWJm
NDg2ZGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3JGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9
IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uKSB9
OwogCiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbihW
TSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmln
SW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmlnSW50LmNwcAppbmRl
eCAwM2Q5NDQwYmE1ZDBlNzhiZDMxNzFkZjczYzYyMjljMzI1ZjE0MzJkLi44OWQ3YmNlZWE5NTk2
NTc1ZTJkOTcyZTFjNmNhNDhhNjhlYmRlOWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCaWdJbnQuY3BwCkBAIC02MCw3ICs2MCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCIsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCaWdJbnQpIH07Citjb25z
dCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JpZ0ludCkgfTsKIAogSlNCaWdJ
bnQ6OkpTQmlnSW50KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIERpZ2l0KiBkYXRhLCB1
bnNpZ25lZCBsZW5ndGgpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBAIC0yNDU5LDcgKzI0
NTksNyBAQCBKU1ZhbHVlIEpTQmlnSW50OjpwYXJzZUludChKU0dsb2JhbE9iamVjdCogbnVsbE9y
R2xvYmFsT2JqZWN0Rm9yT09NLCBWTSYgdm0sIENoYQogICAgICAgICBBU1NFUlQobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NKTsKICAgICAgICAgaWYgKGVycm9yUGFyc2VNb2RlID09IEVycm9yUGFy
c2VNb2RlOjpUaHJvd0V4Y2VwdGlvbnMpIHsKICAgICAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9i
YWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmpl
Y3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRvIEJpZ0ludCIpKTsKKyAgICAgICAg
ICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVT
eW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3Ry
aW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBKU1ZhbHVlKCk7
CiAgICAgfQpAQCAtMjU3Niw3ICsyNTc2LDcgQEAgSlNWYWx1ZSBKU0JpZ0ludDo6cGFyc2VJbnQo
SlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgVk0mIHZtLCBDaGEKICAg
ICAgICAgICAgICAgICBpZiAoZXJyb3JQYXJzZU1vZGUgPT0gRXJyb3JQYXJzZU1vZGU6OlRocm93
RXhjZXB0aW9ucykgewogICAgICAgICAgICAgICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChudWxsT3JHbG9iYWxP
YmplY3RGb3JPT00pOwotICAgICAgICAgICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2Jq
ZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiKSk7CisgICAgICAg
ICAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3Bl
LCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8g
cGFyc2UgU3RyaW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICByZXR1cm4gSlNWYWx1ZSgpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKaW5kZXggYzdhMTY3OTU1
M2UwODEzMjU0NTA2NGE1MjVlOTFhMDRiMDdkNGJjOC4uMWVlODExZTBkNWY5ZWQzN2EzZDY5MGZl
YWZhOGUzMzgyYWZhYmIwNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNCb3VuZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0JvdW5kRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNCb3VuZEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNCb3VuZEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNCb3VuZEZ1bmN0aW9uKSB9OwogCiBKU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oYm91bmRUaGlzTm9BcmdzRnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwCmluZGV4IGQ1NDcyZTYwNjA2NzNkYjk0ODRmYmVjNWRi
NjY4YzIyMjBiYzZiMWIuLjNkMjEzYWViYzRjZWIwNTJlYzgxMThlYjFhNDNiYWZhM2U3ZDdiYTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NhbGxlZS5jcHAKQEAgLTMwLDcg
KzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGVlKSB9OwogCiBKU0NhbGxlZTo6SlNDYWxsZWUoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NlbGwuY3BwCmluZGV4IDYzOTQyODY3YTEzMGZlNmM1ZmUwMThlNzQ0ZjE0ZDYxMTlkYjRjMmEu
LjE2NTU0NDhjODliYjllM2Q4MjJjZWExZjQxNmI1ZDZhOGI4YTc5N2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtNDgsNyArNDgsNyBAQCB2b2lkIEpTQ2Vs
bDo6ZHVtcChQcmludFN0cmVhbSYgb3V0KSBjb25zdAogCiB2b2lkIEpTQ2VsbDo6ZHVtcFRvU3Ry
ZWFtKGNvbnN0IEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKLSAgICBvdXQucHJp
bnRmKCI8JXAsICVzPiIsIGNlbGwsIGNlbGwtPmNsYXNzTmFtZShjZWxsLT52bSgpKSk7CisgICAg
b3V0LnByaW50ZigiPCVwLCAlcz4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUoY2VsbC0+dm0oKSku
Y2hhcmFjdGVycygpKTsKIH0KIAogc2l6ZV90IEpTQ2VsbDo6ZXN0aW1hdGVkU2l6ZUluQnl0ZXMo
Vk0mIHZtKSBjb25zdApAQCAtMjEwLDcgKzIxMCw3IEBAIHZvaWQgSlNDZWxsOjpnZXRPd25TcGVj
aWFsUHJvcGVydHlOYW1lcyhKU09iamVjdCosIEpTR2xvYmFsT2JqZWN0KiwgUHJvcGVydHlOYW1l
CiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotY29uc3QgY2hhciogSlND
ZWxsOjpjbGFzc05hbWUoVk0mIHZtKSBjb25zdAorQVNDSUlMaXRlcmFsIEpTQ2VsbDo6Y2xhc3NO
YW1lKFZNJiB2bSkgY29uc3QKIHsKICAgICByZXR1cm4gY2xhc3NJbmZvKHZtKS0+Y2xhc3NOYW1l
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAppbmRleCA3Yzg4ODM0Mzky
YjAxNjQzYTFjNTg3ODBkZGVkOTVmNmM0MjViM2ZiLi5kZjA2OTc3NzFhZGNmNjViM2VmMWI3ZGNm
NDFkMTk4MjM2M2NkMzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaApA
QCAtMTM5LDcgKzEzOSw3IEBAIHB1YmxpYzoKIAogICAgIFR5cGVJbmZvOjpJbmxpbmVUeXBlRmxh
Z3MgaW5saW5lVHlwZUZsYWdzKCkgY29uc3QgeyByZXR1cm4gbV9mbGFnczsgfQogICAgIAotICAg
IGNvbnN0IGNoYXIqIGNsYXNzTmFtZShWTSYpIGNvbnN0OworICAgIEFTQ0lJTGl0ZXJhbCBjbGFz
c05hbWUoVk0mKSBjb25zdDsKIAogICAgIC8vIEV4dHJhY3RpbmcgdGhlIHZhbHVlLgogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgZ2V0U3RyaW5nKEpTR2xvYmFsT2JqZWN0KiwgU3RyaW5nJikg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3Rv
bUdldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3Vz
dG9tR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IDhiOGE0MWY0YzhiZmUwODQ1OWFlYTJhY2VkNzAy
OGVhYmEwYTY1YmEuLmZmZTZiZmQzNTI3NjQyNjE2ZmQ5MWY3NjM3N2Q2ODZhMGIwNjQ4MzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVu
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0
dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0
ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21HZXR0ZXJGdW5jdGlvbikg
fTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbUdldHRlckZ1bmN0aW9u
Q2FsbCk7CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21HZXR0ZXJGdW5jdGlvbkNh
bGwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRl
ckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0
dGVyRnVuY3Rpb24uY3BwCmluZGV4IDM5ZTI3MDI5OTBhYTExNTU3MTliNjlkMWJhZmNkNzg0NjA0
MjdlN2UuLjg2MjgxODU3OGYwOTFlZDc0NzViMDgwMTFhYWY4ZTgwODM3MDI0YzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVuY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVu
Y3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3Vz
dG9tU2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5j
dGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21TZXR0ZXJGdW5jdGlvbikgfTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbVNldHRlckZ1bmN0aW9uQ2FsbCk7
CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21TZXR0ZXJGdW5jdGlvbkNhbGwsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwCmluZGV4IGFiYTY4OGRl
NDg3MWY4NGM2MjUxYjc4ZjBiODNjZDYyODY2NzFkMjMuLjlhNDM1Y2M5Y2IyZTFhYjMwMTk0MzVh
ZDZkZDAzMjhkMzRjZGFiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTRGF0YVZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
RGF0YVZpZXcuY3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmll
dyl9OworY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXc6OnNfaW5mbyA9IHsgIkRhdGFWaWV3Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RGF0YVZpZXcpIH07CiAKIEpTRGF0YVZpZXc6OkpTRGF0YVZpZXcoVk0mIHZtLCBDb25zdHJ1Y3Rp
b25Db250ZXh0JiBjb250ZXh0LCBBcnJheUJ1ZmZlciogYnVmZmVyKQogICAgIDogQmFzZSh2bSwg
Y29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRh
Vmlld1Byb3RvdHlwZS5jcHAKaW5kZXggZTk4Yzc4YWJhYmY5ODMxY2ZmMDY1YzFiZTkwMmJmYWM4
MGEwNmQyYS4uMzhjY2ZhZTYzNTAwYmQwM2JmNGQyZWZkYWRmZTFkNWI2NmE0Y2YzMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlw
ZS5jcHAKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIo
ZGF0YVZpZXdQcm90b0dldHRlckJ5dGVPZmZzZXQpOwogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0
IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7Ci0gICAgIkRhdGFWaWV3
IiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51bGxwdHIsCisgICAgIkRhdGFWaWV3
Il9zLCAmQmFzZTo6c19pbmZvLCAmZGF0YVZpZXdUYWJsZSwgbnVsbHB0ciwKICAgICBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRGF0YVZpZXdQcm90b3R5cGUpCiB9OwogCkBAIC0yMzAsNyArMjMwLDcg
QEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCdWZmZXIsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5
bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8dGhpc3wgdG8g
YmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8
dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUodmlldy0+cG9zc2libHlTaGFyZWRKU0J1ZmZlcihn
bG9iYWxPYmplY3QpKSk7CiB9CkBAIC0yNDIsNyArMjQyLDcgQEAgSlNDX0RFRklORV9DVVNUT01f
R0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE8KIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcq
Pih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghdmlldykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3
LnByb3RvdHlwZS5ieXRlTGVuZ3RoIGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2Jq
ZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZUxlbmd0aCBleHBlY3RzIHx0aGlzfCB0byBiZSBh
IERhdGFWaWV3IG9iamVjdCJfcyk7CiAgICAgaWYgKHZpZXctPmlzRGV0YWNoZWQoKSkKICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVuZGVybHlp
bmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNoZWQgZnJvbSB0aGUgdmlldyJfcyk7CiAKQEAg
LTI1Niw3ICsyNTYsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoZGF0YVZpZXdQcm90b0dl
dHRlckJ5dGVPZmZzZXQsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwogCiAgICAgSlNEYXRhVmll
dyogdmlldyA9IGpzRHluYW1pY0Nhc3Q8SlNEYXRhVmlldyo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKCF2aWV3KQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0YVZpZXcucHJvdG90eXBlLmJ5dGVPZmZzZXQg
ZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlw
ZS5ieXRlT2Zmc2V0IGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Il9zKTsK
ICAgICBpZiAodmlldy0+aXNEZXRhY2hlZCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiVW5kZXJseWluZyBBcnJheUJ1ZmZlciBoYXMgYmVl
biBkZXRhY2hlZCBmcm9tIHRoZSB2aWV3Il9zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAppbmRleCBkZjc4
ODkyYmExMjljZDViNWYwZWFkZWIyZmIxNWRjZTk1MTkwNGE2Li40YThjZDQ5Yjc2OGRhYjExNDJh
YzE3MGJjZjk5Nzk0NGZjZGY5MDhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcApAQCAtMzMsNyArMzMsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVn
aXN0cnk6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsaXphdGlvblJlZ2lz
dHJ5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnNfaW5mbyA9
IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxpemF0aW9uUmVnaXN0cnkpIH07CiAKIFN0
cnVjdHVyZSogSlNGaW5hbGl6YXRpb25SZWdpc3RyeTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CkBAIC0x
NjksNyArMTY5LDcgQEAgdm9pZCBKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5OjpydW5GaW5hbGl6YXRp
b25DbGVhbnVwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QKICAgICB3aGlsZSAoSlNWYWx1
ZSB2YWx1ZSA9IHRha2VEZWFkSG9sZGluZ3NWYWx1ZSgpKSB7CiAgICAgICAgIE1hcmtlZEFyZ3Vt
ZW50QnVmZmVyIGFyZ3M7CiAgICAgICAgIGFyZ3MuYXBwZW5kKHZhbHVlKTsKLSAgICAgICAgY2Fs
bChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUgdmlz
aWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciKTsKKyAgICAgICAg
Y2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUg
dmlzaWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciX3MpOwogICAg
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIH0KIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggZDkzN2IzNmIz
MDQ1NzQ0MGNlYThiZWE1MThkMTk4MTlhNjRhOWQ1Yy4uYTM3NmFmNWVlYTBkZTZiNTE3MGM0ZmI0
NDczNzMwZDI1ODMzMWM1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAKQEAgLTUzLDEwICs1MywxMCBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y2FsbEhvc3RGdW5jdGlvbkFzQ29uc3RydWN0b3IsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwog
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlTm90QUNv
bnN0cnVjdG9yRXJyb3IoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1bmN0
aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmljdEZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU2xvcHB5RnVuY3Rp
b246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nsb3BweUZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJ
bmZvIEpTQXJyb3dGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dGdW5jdGlvbikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1
bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTU3RyaWN0RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNTbG9wcHlG
dW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTbG9wcHlGdW5jdGlvbikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0Fycm93RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dG
dW5jdGlvbikgfTsKIAogYm9vbCBKU0Z1bmN0aW9uOjppc0hvc3RGdW5jdGlvbk5vbklubGluZSgp
IGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvci5j
cHAKaW5kZXggMTU2MmFjMjYyYmQ4MDExMDYxNGRlNDlkYjM5ZGU2YjgxOGRkOGZjYS4uMjRmYmRm
NjNhNjQzMzcwM2YwNWFlMWFkZGZjNDA0NGQwY2NkOTVlOSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2luZm8gPSB7ICJH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTR2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNHZW5lcmF0b3IpIH07CiAKIEpTR2VuZXJhdG9yKiBKU0dlbmVy
YXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCmlu
ZGV4IDA2YWUwNTE4YWIxOTBhNDNhMTM5NmU4MGM5M2RkMTZkMDBlYTI2YjguLmE2OTU0NjM2YWJl
NGExODU5ZGVmM2NjZmEyOTk3MTVhYTJkNjc5MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5j
dGlvbjo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yRnVuY3Rpb24pIH07
Citjb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5jdGlvbjo6c19pbmZvID0geyAiR2VuZXJh
dG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNHZW5lcmF0b3JGdW5jdGlvbikgfTsKIAogSlNHZW5lcmF0b3JGdW5jdGlv
bjo6SlNHZW5lcmF0b3JGdW5jdGlvbihWTSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0
YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2
bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVz
LmgKaW5kZXggZDMyYTJiMGMwYzAzYjNjMjliYjhlNWZlOTRjM2MwN2VmYmQ4YjU3MC4uMTRhNmNm
MzlhZGI1OTQyYWE5MDFmZDVjYWUwZjNjNWNjMjRiOWFlNCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVzLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJ
bmxpbmVzLmgKQEAgLTEwNiwxMSArMTA2LDExIEBAIEpTR2VuZXJpY1R5cGVkQXJyYXlWaWV3PEFk
YXB0b3I+KiBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKAogICAgIHNp
emVfdCBlbGVtZW50U2l6ZSA9IHNpemVvZih0eXBlbmFtZSBBZGFwdG9yOjpUeXBlKTsKICAgICBB
U1NFUlQoYnVmZmVyKTsKICAgICBpZiAoIUFycmF5QnVmZmVyVmlldzo6dmVyaWZ5U3ViUmFuZ2VM
ZW5ndGgoKmJ1ZmZlciwgYnl0ZU9mZnNldCwgbGVuZ3RoLCBlbGVtZW50U2l6ZSkpIHsKLSAgICAg
ICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihn
bG9iYWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciIpKTsKKyAgICAgICAg
dGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9i
YWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciJfcykpOwogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgICAgaWYgKCFBcnJheUJ1ZmZlclZpZXc6OnZlcmlmeUJ5
dGVPZmZzZXRBbGlnbm1lbnQoYnl0ZU9mZnNldCwgZWxlbWVudFNpemUpKSB7Ci0gICAgICAgIHRo
cm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFs
T2JqZWN0LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiKSk7CisgICAgICAgIHRocm93RXhj
ZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogICAgIENvbnN0cnVjdGlvbkNvbnRleHQgY29udGV4dCh2bSwgc3RydWN0dXJl
LCBXVEZNb3ZlKGJ1ZmZlciksIGJ5dGVPZmZzZXQsIGxlbmd0aCk7CkBAIC0xNTIsNyArMTUyLDcg
QEAgYm9vbCBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6dmFsaWRhdGVSYW5nZSgK
ICAgICBpZiAoY2FuQWNjZXNzUmFuZ2VRdWlja2x5KG9mZnNldCwgbGVuZ3RoKSkKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgCi0gICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJSYW5nZSBjb25zaXN0aW5nIG9mIG9m
ZnNldCBhbmQgbGVuZ3RoIGFyZSBvdXQgb2YgYm91bmRzIikpOworICAgIHRocm93RXhjZXB0aW9u
KGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmFu
Z2UgY29uc2lzdGluZyBvZiBvZmZzZXQgYW5kIGxlbmd0aCBhcmUgb3V0IG9mIGJvdW5kcyJfcykp
OwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG90eXBlRnVuY3Rpb25zLmgKaW5kZXggZGYwNDM1ZjZlMzc5ODA2MWQ5ZjZjY2M2ZDc1OWRmZTY2
YmQ2ZDlmYS4uYjk0ZWIzZmIyMjZjNTAwMDVjYzgxYjU5OWQ2NjU1ZmRmOGJkODlmMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCkBAIC02Niw3ICs2
Niw3IEBAIGlubGluZSBKU0FycmF5QnVmZmVyVmlldyogc3BlY2llc0NvbnN0cnVjdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjCiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgZGVmYXVsdENvbnN0cnVjdG9yKCkpOwogCiAKLSAgICBKU1ZhbHVlIHJlc3VsdCA9
IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBh
IGNvbnN0cnVjdG9yIik7CisgICAgSlNWYWx1ZSByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2Jq
ZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciJfcyk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICBpZiAoSlNBcnJh
eUJ1ZmZlclZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXJWaWV3Kj4odm0s
IHJlc3VsdCkpIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1Zh
bHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldChWTSYgdm0sIEpTR2xvYmFsTwog
ICAgICAgICBkb3VibGUgb2Zmc2V0TnVtYmVyID0gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVu
dCgxKS50b0ludGVnZXJPckluZmluaXR5KGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoVU5MSUtF
TFkob2Zmc2V0TnVtYmVyIDwgMCkpCi0gICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIl9zKTsKICAgICAgICAgaWYgKG9mZnNl
dE51bWJlciA8PSBtYXhTYWZlSW50ZWdlcigpICYmIG9mZnNldE51bWJlciA8PSBzdGF0aWNfY2Fz
dDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8c2l6ZV90Pjo6bWF4KCkpKQogICAgICAgICAg
ICAgb2Zmc2V0ID0gb2Zmc2V0TnVtYmVyOwogICAgICAgICBlbHNlCkBAIC02MjUsNyArNjI1LDcg
QEAgQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2
YXRlRnVuY1N1YmFycmF5Q3JlYXRlKFZNJgogICAgIGFyZ3MuYXBwZW5kKGpzTnVtYmVyKGxlbmd0
aCkpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwogCi0gICAgSlNPYmplY3Qq
IHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVz
IGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBhIGNvbnN0cnVj
dG9yIl9zKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNB
cnJheUJ1ZmZlclZpZXcqIHZhbGlkYXRlZCA9IHZhbGlkYXRlVHlwZWRBcnJheShnbG9iYWxPYmpl
Y3QsIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXggOWE4MWM5NjkzYTBmY2Q1
ZTMyODljOTFmMDYzNGJhMTc2YjNlNDVkOC4uNjVhMjlmOWRkY2JjZDU1YTQwMjdkZDQ1MmFmZTEz
NmQ2Y2U2ZDQ5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
bG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsTGV4aWNhbEVudmly
b25tZW50OjpzX2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxMZXhp
Y2FsRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9iYWxMZXhpY2FsRW52aXJv
bm1lbnQ6OnNfaW5mbyA9IHsgIkpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsTGV4
aWNhbEVudmlyb25tZW50KSB9OwogCiB2b2lkIEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Ojpk
ZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAppbmRleCBmYTYyM2UwOTA3NGMzOGZiZTMyMzQxNjdkY2Q1
OTIwMmY4ZjE1MWI2Li4wMTJmMTkxY2Q5YWFlZjcyODgzYjA1MmI1NGIwYjM0NzgzZThjOTdmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3Bw
CkBAIC01MTksNyArNTE5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGRpc2FibGVTdXBl
clNhbXBsZXIsIChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSopKQogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9i
YWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmds
b2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsT2Jq
ZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU0dsb2JhbE9iamVjdDo6
c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5m
bywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcAppbmRleCBkNTdjNmU3ODgwMWQ5N2U3OTRiYzgyYjgzN2VhNTYzYTA3M2Uz
YTU3Li41MWMxNzdkZjlmOThlZjJlMWRhN2Y5MDYzMDg2NWFhNjIwZDZkYmViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZseS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbW11dGFibGVCdXR0ZXJmbHku
Y3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNJbW11dGFibGVCdXR0ZXJmbHk6OnNfaW5mbyA9IHsgIkltbXV0YWJsZSBCdXR0ZXJmbHki
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRh
YmxlQnV0dGVyZmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW1tdXRhYmxlQnV0dGVyZmx5Ojpz
X2luZm8gPSB7ICJJbW11dGFibGUgQnV0dGVyZmx5Il9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRhYmxlQnV0dGVyZmx5KSB9OwogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0ltbXV0YWJsZUJ1dHRlcmZseTo6dmlzaXRD
aGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwCmluZGV4IGZm
MWQ4ZDBlOWRlYjBhZDFkNzZjODVjMzJkMTY5YTBkOTYwNmI5ZWIuLjRlMGUxYjNjNTYwNzEyYzA1
ZWMwNzg0MTc5NDY3MjUyYjFmOGFlNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZv
ID0geyAiSW50ZXJuYWxQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlzZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50ZXJu
YWxQcm9taXNlKSB9OwogCiBKU0ludGVybmFsUHJvbWlzZSogSlNJbnRlcm5hbFByb21pc2U6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVj
dG9yLmNwcAppbmRleCAzMjZmMGU3Y2E5OWI0NTIxNGY0YWM3MzJkMzg4MThkMzk0MWRhZDg3Li41
OWI1NTllOTg1MTE5ZWIzNTE3MTJjMDg1MjEzNWIwMTJhMjNkMmQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTSW50ZXJuYWxQcm9taXNlQ29uc3Ry
dWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJv
bWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTSW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBpbnRlcm5hbFByb21pc2VDb25zdHJ1
Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lu
dGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKaW5kZXggYTY5ZDI3MGQ0OGFjMDU0YmMw
Yzk0OGJmZjgxNjUyZTVjMDNkZjMyZi4uZTE3MWMzMmY0MTg3Nzk1ODA3MzkwNzZhZDVkZGZjYWM4
NmQyMjUwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpT
SW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQ
cm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50
ZXJuYWxQcm9taXNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUpIH07CiAKIEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKiBK
U0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXgg
YzE1MWY0ZDljYWJkOTU3MGQ4NjE0MjRkMDBkMjliYjIxNjVmYTE5My4uOTEyNTk4OWZmMzllOGUw
ZWYzODMxNThkNjI2YThhODE1OGNkMmZkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzQsNyArMzQsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTGV4aWNhbEVudmlyb25t
ZW50OjpzX2luZm8gPSB7ICJKU0xleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNMZXhpY2FsRW52aXJvbm1lbnQp
IH07Citjb25zdCBDbGFzc0luZm8gSlNMZXhpY2FsRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpT
TGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4aWNhbEVudmlyb25tZW50KSB9OwogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0xleGljYWxFbnZpcm9ubWVudDo6dmlzaXRDaGlsZHJl
bkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNNYXAuY3BwCmluZGV4IDE5ZGI1MTYxOWQwOTdlNTA3YmQ3OTZmYzEwNzcwN2Uy
MjAwYjcwMjMuLjY2NzAxNWQyYjE2MmRkODVjNmJhMTU1ZWY0OTYwYjRhN2FkZDE4YWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFwIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTWFwKSB9
OwogCiBKU01hcCogSlNNYXA6OmNsb25lKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCmluZGV4IDU1MWVjMzU2MmM0ZDQzYTM4NTk4OGQ4
M2U4ODY0YWFhOTQ2NDIyMTMuLjU3MzExM2I3ZDE5MDI4YmExODZkYzUxYmNhN2JmMWZmZmRlZGNk
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNNYXBJdGVyYXRvcjo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcEl0ZXJhdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1hcCBJdGVyYXRv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU01hcEl0ZXJhdG9yKSB9OwogCiBKU01hcEl0ZXJhdG9yKiBKU01hcEl0ZXJhdG9yOjpjcmVh
dGVXaXRoSW5pdGlhbFZhbHVlcyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVu
dC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50
LmNwcAppbmRleCA4NWQwYzJlMDMwYzBhOTQ3YzlhNzUzNDVlY2NkNzYzNDBjNjgyY2U0Li40YjRh
MjA2NzI2ODhlOTQ0YzkwOWZjNmQ4ZTUyYjI2ZTc5NGUxN2NmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcApAQCAtMzQs
NyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxl
RW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9kdWxlRW52aXJvbm1lbnQiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlRW52aXJv
bm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNNb2R1bGVFbnZpcm9ubWVudDo6c19pbmZvID0g
eyAiSlNNb2R1bGVFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUVudmlyb25tZW50KSB9OwogCiBKU01vZHVs
ZUVudmlyb25tZW50KiBKU01vZHVsZUVudmlyb25tZW50OjpjcmVhdGUoCiAgICAgVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTY29wZSogY3VycmVudFNjb3BlLCBTeW1ib2xUYWJsZSog
c3ltYm9sVGFibGUsIEpTVmFsdWUgaW5pdGlhbFZhbHVlLCBBYnN0cmFjdE1vZHVsZVJlY29yZCog
bW9kdWxlUmVjb3JkKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNb2R1bGVMb2FkZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwCmluZGV4IGI4YjkyMTI4ZDFkYmRhOWI2YTEwYjU3Y2QxOGU0MzcwNDk1OGUx
ODcuLmVlZDQ2MzUwMTMxNmUzYTNkNDA0ZjFkNjZkZDhmNTYxMWFhZjM1ZTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUxvYWRlci5jcHAKQEAgLTYyLDcg
KzYyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShKU01vZHVsZUxvYWRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZUxv
YWRlcjo6c19pbmZvID0geyAiTW9kdWxlTG9hZGVyIiwgJkJhc2U6OnNfaW5mbywgJm1vZHVsZUxv
YWRlclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlTG9hZGVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTG9hZGVyOjpzX2luZm8gPSB7ICJNb2R1bGVMb2Fk
ZXIiX3MsICZCYXNlOjpzX2luZm8sICZtb2R1bGVMb2FkZXJUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU01vZHVsZUxvYWRlcikgfTsKIAogLyogU291cmNlIGZvciBKU01vZHVs
ZUxvYWRlci5sdXQuaAogQGJlZ2luIG1vZHVsZUxvYWRlclRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAK
aW5kZXggOTZhMGY3ZGE0M2QzY2U4MzExZmVjOTZkOTYzODM5YWFjOTg2ZTkxNC4uMjE4MTA0ZjI5
MjljZDczZGZmYzljYTllYTlkMjVjNTkwMGFkNmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcApAQCAt
MzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTmFtZXNwYWNl
T2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVOYW1lc3Bh
Y2VPYmplY3QpIH07CiAKIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpKU01vZHVsZU5hbWVzcGFj
ZU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNv
cmQuY3BwCmluZGV4IGNiZTY5NTg1M2QyZjFlZmE2ODllMWZkN2I3YmM3Y2Y5YmM0YTZhYjUuLmFi
N2JlY2Q5YzY3YTA4YzJmZTI1OGY3ZGI5MTA1NGYyYmFkNzlkMTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29yZC5jcHAKQEAgLTM2LDcgKzM2LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZVJlY29yZDo6
c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZVJlY29yZCkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU01vZHVsZVJlY29yZDo6c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlUmVjb3Jk
KSB9OwogCiAKIFN0cnVjdHVyZSogSlNNb2R1bGVSZWNvcmQ6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9u
LmNwcAppbmRleCA4MDY0MzlmZGYyNTg3YjE2OGVhNjc0ODAzNzg1MDYyMzM0ZWIxOTk1Li4xMGNm
NmY5OTY0NWRjMzk3YTJiNmMzZWU4YWNlYjM5MjQ2OWE4MTFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcApAQCAtMzEs
NyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZl
U3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU05hdGl2ZVN0ZEZ1bmN0aW9uKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZlU3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmF0aXZlU3RkRnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKHJ1blN0ZEZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U09OT2JqZWN0LmNwcAppbmRleCA2YjdjNTg4MWFkOWJmZmRjYTVhMjQ5YTQzNzEwMjVhMmNmNDdm
ODBiLi5iZjkwNmEyN2Y4MzU5NzBjODU1OTkwZDA1MmIzZGUzYzY5OGFhYWQ0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNjI4LDcgKzYyOCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U09OT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTT05PYmplY3Q6OnNfaW5mbyA9IHsgIkpT
T04iX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZqc29uVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNPTk9iamVjdCkgfTsKIAogLyogU291cmNlIGZvciBKU09OT2Jq
ZWN0Lmx1dC5oCiBAYmVnaW4ganNvblRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU09iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5jcHAKaW5kZXggZDU0NGE0M2JhMTllYTMyN2ZiZDI4MTVhZGM3YWYzNDE2YzU2
MWE2Ni4uMDVhYmVlMjljYjk3NjBmZmU0MjY3MTAyZGI5MDU5OTAwMDUxNGM4YSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcApAQCAtNjUsOSArNjUsOSBAQCBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZUNvbmZpZ3VyYWJp
bGl0eUVycm9yIHsgIkF0dGVtcHRpbgogY29uc3QgQVNDSUlMaXRlcmFsIFVuY29uZmlndXJhYmxl
UHJvcGVydHlDaGFuZ2VFbnVtZXJhYmlsaXR5RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ug
ZW51bWVyYWJsZSBhdHRyaWJ1dGUgb2YgdW5jb25maWd1cmFibGUgcHJvcGVydHkuIl9zIH07CiBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZVdyaXRhYmlsaXR5
RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ugd3JpdGFibGUgYXR0cmlidXRlIG9mIHVuY29u
ZmlndXJhYmxlIHByb3BlcnR5LiJfcyB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNf
aW5mbyA9IHsgIk9iamVjdCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU09iamVjdCkgfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxPYmplY3Q6OnNfaW5m
byA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2Jq
ZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlzaXRvcj4KIEFMV0FZU19JTkxJTkUgdm9pZCBKU09iamVjdDo6bWFya0F1eGlsaWFy
eUFuZFZpc2l0T3V0T2ZMaW5lUHJvcGVydGllcyhWaXNpdG9yJiB2aXNpdG9yLCBCdXR0ZXJmbHkq
IGJ1dHRlcmZseSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0IG1heE9mZnNl
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmluZGV4IDFh
MWQ3YzNmM2M5YTNmNzdhMmI0YWFiYjU2ZTdkNDc1NmY0YWY1OTMuLjVhMmM1ZmRjNGQ2NzBiNWVj
YWI3ZTJjNDhhOTcwNzdlOTk2ZTY3NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNQcm9taXNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcAppbmRleCA4ZDNiOWI4NjYzYjcwYWE0YWRiZjhhNWUx
MDU4MjI4OWI0NWNmM2FmLi42MThiZGJmYTIzYjY5ODM4NTc4MTU5ZWY2ODc0YTY3ZTc2YjEyOGVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNl
Q29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklB
TExZX0RFU1RSVUNUSUJMRShKU1Byb21pc2VDb25zdHJ1Y3Rvcik7CiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJv
bWlzZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUu
Y3BwCmluZGV4IDkxNzJmZTU3MjQ5ODhjYjBhNzE5MTc1MDRlMWViZTk1MWRjNjBkZTcuLjY2NjZj
N2Q1MDE5ZjUxYWU4ZTA0OTRjN2VhY2JiOWU5ZDkxNzY0Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNQcm9taXNl
UHJvdG90eXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlByb21pc2UiLCAmQmFzZTo6c19pbmZvLCAmcHJvbWlz
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlByb21pc2UiX3MsICZCYXNlOjpzX2luZm8sICZwcm9taXNlUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByb21pc2VQcm90b3R5
cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9w
ZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAKaW5kZXggNmVlMzIwZjdlM2Q5MDliNmNkMGUzNzkz
NjFkYTBhYTBlODc1N2M0My4uNTI1MDliYjZlNDcyMTQzMGEyYWIxMGNkMzM4NmJlNDMxYWViNjM0
OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpzX2luZm8g
PSB7ICJKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3I6OnNfaW5mbyA9IHsgIkpTUHJvcGVy
dHlOYW1lRW51bWVyYXRvciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IpIH07CiAKIEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvciogSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgdWludDMyX3QgaW5kZXhlZExlbmd0aCwgdWludDMyX3QgbnVtYmVy
U3RydWN0dXJlUHJvcGVydGllcywgUHJvcGVydHlOYW1lQXJyYXkmJiBwcm9wZXJ0eU5hbWVzKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb3h5LmNwcAppbmRleCBmNDUzZmFi
OWM4ZGE3ZDJjZDQxNjNiNTUzMzA4NjU1OGU3ZmU2MmNhLi40ODFkODU3OTNlYzM5YjFiNDM1ZDlm
YmVlMmJiNmU5NDJhZGY0ZTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3h5LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTUHJveHkpOwogCi1jb25zdCBDbGFzc0luZm8g
SlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb3h5OjpzX2luZm8gPSB7ICJKU1Byb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTUHJveHk6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKaW5kZXggNTkzOWQ4ZjJkNTFmYTBiM2JmYjU2MjVmMmIx
ZWY1NDdiMjlkZTFmMC4uYWYwNzE4ZTlhYWNkYTc5NzJmZTc1MDQ4YjhmODBmNGQxN2Y2NWM1ZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1JlbW90ZUZ1bmN0aW9uKSB9OwogCiBKU1JlbW90ZUZ1bmN0aW9uOjpKU1JlbW90ZUZ1
bmN0aW9uKFZNJiB2bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTT2JqZWN0KiB0YXJnZXRG
dW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIGdsb2JhbE9iamVjdCwgc3RydWN0
dXJlKQpAQCAtNjYsNyArNjYsNyBAQCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcEFyZ3VtZW50
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZWN0KgogICAgIEpTVmFs
dWUgcmVzdWx0ID0gd3JhcFZhbHVlKGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2
YWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJl
c3VsdCkKLSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVl
IHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsK
KyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3Np
bmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsKIH0KIApAQCAtNzcsNyArNzcsNyBA
QCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcFJldHVyblZhbHVlKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZQogICAgIEpTVmFsdWUgcmVzdWx0ID0gd3JhcFZhbHVl
KGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2YWx1ZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgdGhyb3dU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFs
bXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVz
dCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihz
Y29wZSwgcmVzdWx0KTsKIH0KIApAQCAtMjI4LDcgKzIyOCw3IEBAIHZvaWQgSlNSZW1vdGVGdW5j
dGlvbjo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZt
KQogICAgIGF1dG8qIGV4Y2VwdGlvbiA9IHNjb3BlLmV4Y2VwdGlvbigpOwogICAgIGlmIChVTkxJ
S0VMWShleGNlcHRpb24gJiYgIXZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oZXhjZXB0aW9uKSkp
IHsKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24oKTsKLSAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIndyYXBwaW5nIHJldHVybmVkIGZ1bmN0aW9uIHRocm93
cyBhbiBlcnJvciIpOworICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAid3JhcHBpbmcgcmV0dXJuZWQgZnVuY3Rpb24gdGhyb3dzIGFuIGVycm9yIl9zKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY29wZS5jcHAKaW5kZXggNDk1
ZGM2M2M0ZmFiYWE0NTE1NmQ1MzNlYzU3YTU3MjQ0NTA4NjMwNC4uODM0Y2QzMzQwMTZhMjM3YTQ3
ZDYyNmQ5ZjExOTg3MjcxZTU1NDE5OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTY29wZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Njb3BlKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3BlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NvcGUpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTU2NvcGU6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcAppbmRleCA5ZjIxNTFmYjkzYTkz
NTlmNTVkYjY5YjE1NWUxOTVhMWY1NWNlMzU5Li5mZjA2YWZlOGIyYjBlNzBhYmVkNTk0MWMwYjE1
MWEyODBhNzlmZGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzIiwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoUGFyYW1ldGVycykgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoUGFyYW1ldGVyczo6c19pbmZvID0geyAiSlNT
Y3JpcHRGZXRjaFBhcmFtZXRlcnMiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaFBhcmFtZXRlcnM6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hlci5jcHAKaW5kZXggMjZjOWM3
NjZjZjAxNTFmNmIzYWU3MDNmODMyNzNkNzFmMzA0ZTNiNC4uZTQzNGFkZTg0OWMxNmRiNGVkMTRi
ZjljYTViNDI1NTJkMGUxZWEyMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1NjcmlwdEZldGNoZXIuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaGVyOjpzX2luZm8gPSB7ICJKU1Nj
cmlwdEZldGNoZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2NyaXB0RmV0Y2hlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoZXI6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hlciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoZXIpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaGVyOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
aW5kZXggZWJjYTIxZTg5OWVkOTdjOTcxNzllMGQyNDAyZGYzNzIxNTNhYjExNy4uYTc0ODM2NDU0
ZDc1ODM4NTZiZGI0MzRlMjU3ZDcyNjM2MzEzZjEyNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
QEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlZ21l
bnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0KSB9OwogCiBTY29wZU9mZnNldCBKU1NlZ21lbnRlZFZh
cmlhYmxlT2JqZWN0OjpmaW5kVmFyaWFibGVJbmRleCh2b2lkKiB2YXJpYWJsZUFkZHJlc3MpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOTQ0ZTBmYTA5ZWM0
YWNjMmU5MzY2NDY5MDVjYTE4MzkzOGMwZDUzZi4uOWFmM2Q5NDlmMTc2ODEzNDdmNDJiNmMwNTI1
ZTFlOTMyOTY1MmE2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApA
QCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
U2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2lu
Zm8gPSB7ICJTZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNTZXQpIH07CiAKIEpTU2V0KiBKU1NldDo6Y2xvbmUoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKaW5kZXggYmYx
NzlhZWJkZTFkMmUxODdlZjk0ZDJhNWY3OTI4OTAxMzIzMDhkYy4uMTI1ZWI5NjA2MzdlZjBkN2Vm
N2E5ZmQ5M2VlMzBiYzM4OGUxMDIyNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NldEl0ZXJhdG9yOjpzX2luZm8gPSB7ICJTZXQgSXRl
cmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2V0SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19p
bmZvID0geyAiU2V0IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0SXRlcmF0b3IpIH07CiAKIEpTU2V0SXRlcmF0b3Iq
IEpTU2V0SXRlcmF0b3I6OmNyZWF0ZVdpdGhJbml0aWFsVmFsdWVzKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1NvdXJjZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3Vy
Y2VDb2RlLmNwcAppbmRleCA5MTNjNTgxNmQ1NzhmZmYwZmJiOGMyN2E5MDQ4YWExM2VlMzg1MjY3
Li40ZTIwMGU1NmRjZmE0NzMwMzlkYzg5MDliNzg0YmI5ZTQwNjY4ZWExIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU291cmNlQ29kZS5jcHAKQEAgLTMwLDcgKzMwLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NvdXJjZUNvZGU6OnNf
aW5mbyA9IHsgIkpTU291cmNlQ29kZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTb3VyY2VDb2RlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU291cmNl
Q29kZTo6c19pbmZvID0geyAiSlNTb3VyY2VDb2RlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU291cmNlQ29kZSkgfTsKIAogdm9pZCBKU1NvdXJj
ZUNvZGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTdHJpbmcuY3BwCmluZGV4IDU4MjUyMDNiMzIwY2I3M2QzOTc1ZWNlYTZiZmY5NzNh
MTBkMGJiNDguLmI2NzNjZDgyMTAyMzBmODYyZmExN2M3MmNiMDQ2N2Y0ZWMyOTE1NWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNf
aW5mbyA9IHsgInN0cmluZyIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNTdHJpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNfaW5mbyA9
IHsgInN0cmluZyJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmluZykgfTsKIAogU3RydWN0dXJlKiBKU1N0cmluZzo6Y3JlYXRlU3RydWN0dXJl
KFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90bykKIHsK
QEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBKU1N0cmluZzo6ZHVtcFRvU3RyZWFtKGNvbnN0IEpTQ2Vs
bCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKICAgICBWTSYgdm0gPSBjZWxsLT52bSgpOwog
ICAgIGNvbnN0IEpTU3RyaW5nKiB0aGlzT2JqZWN0ID0ganNDYXN0PGNvbnN0IEpTU3RyaW5nKj4o
Y2VsbCk7Ci0gICAgb3V0LnByaW50ZigiPCVwLCAlcywgWyV1XSwgIiwgdGhpc09iamVjdCwgdGhp
c09iamVjdC0+Y2xhc3NOYW1lKHZtKSwgdGhpc09iamVjdC0+bGVuZ3RoKCkpOworICAgIG91dC5w
cmludGYoIjwlcCwgJXMsIFsldV0sICIsIHRoaXNPYmplY3QsIHRoaXNPYmplY3QtPmNsYXNzTmFt
ZSh2bSkuY2hhcmFjdGVycygpLCB0aGlzT2JqZWN0LT5sZW5ndGgoKSk7CiAgICAgdWludHB0cl90
IHBvaW50ZXIgPSB0aGlzT2JqZWN0LT5maWJlckNvbmN1cnJlbnRseSgpOwogICAgIGlmIChwb2lu
dGVyICYgaXNSb3BlSW5Qb2ludGVyKSB7CiAgICAgICAgIGlmIChwb2ludGVyICYgSlNSb3BlU3Ry
aW5nOjppc1N1YnN0cmluZ0luUG9pbnRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKaW5kZXggZDRjMTJlOWI4NGJmYTk4ZWNjYmM0
OTc3NzJhZTI1M2Y1N2ZjZjU1ZC4uMjk1NWI3Y2Y4YzAxZTQ0MTY5NDk3ZmE4NjhmMGE3YzhiMTYy
OTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1N0cmluZ0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3RyaW5nSXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmdJdGVyYXRvcjo6c19p
bmZvID0geyAiU3RyaW5nIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNT
dHJpbmdJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU1N0cmluZyogaXRlcmF0ZWRT
dHJpbmcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5
bWJvbFRhYmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3lt
Ym9sVGFibGVPYmplY3QuY3BwCmluZGV4IDhmMGE5Y2NlYTcxZTVhMTEwNjc0NGUxNjAxMmUwZDlj
YWM1OTI4OTcuLmZiNjBmY2UwMDg1ZTI4ZjBhOWI5ODdiZjUxZTczMGIyZDkzYWQ3NjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmpl
Y3QuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNTeW1ib2xUYWJsZU9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3ltYm9sVGFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNTeW1ib2xUYWJsZU9iamVj
dDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTeW1ib2xUYWJsZU9iamVjdCkgfTsK
IAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNTeW1ib2xUYWJsZU9iamVjdDo6
dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVjdERlc2Ny
aXB0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVj
dERlc2NyaXB0b3IuY3BwCmluZGV4IDQyODk5MGEzYWI0YTRhYmE1Mjg2ODk2OTc3OGUzMWMzMDA2
NTljOTguLjA4ODNlODhiNzAzY2ZhMTljYThiZTNhMjQ1NzE2YTA3ZjZlNWFiMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlw
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1RlbXBsYXRlT2Jq
ZWN0RGVzY3JpcHRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAi
VGVtcGxhdGVPYmplY3REZXNjcmlwdG9yIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAiVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yKSB9OwogCiAKIEpTVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yOjpKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcihWTSYgdm0sIFJlZjxU
ZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I+JiYgZGVzY3JpcHRvciwgaW50IGVuZE9mZnNldCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMuY3BwCmluZGV4IDk1YWJlYzU0MDlhMzFlYTc4MzEzZDNjNWYzOWFkYjQ1ODVi
OGZhZDQuLmJlOWEyNWFiYzNlOWFjODhiOGQ2NmI3YzM3OGQ5ZDRhZTRmMzQyZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Q29u
c3RydWN0b3JzLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogI3VuZGVm
IE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rp
b24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0KKyAgICB0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKSB9
CiAKIE1BS0VfU19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3Rv
dHlwZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJv
dG90eXBlcy5jcHAKaW5kZXggYmE4MThlYTMwODJmZjQwNGM5ZDRhN2YxNDE4MWVjOTc3YjgxOTMw
YS4uOGQxNzZmOTQ0Y2VkZDBiNmI1NTY2YWNkMTg2NDcxMTg3MjhhODM3NyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBlcy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBl
cy5jcHAKQEAgLTMxLDEyICszMSwxMSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OnNfaW5mbyA9IHsiUHJvdG90eXBlIiwg
JkpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKLSAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUpfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7ICJQ
cm90b3R5cGUiX3MsICZKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZSkgfTsKIAogI3VuZGVmIE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUp
IFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpz
X2luZm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1By
b3RvdHlwZSl9CisgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI1Byb3Rv
dHlwZTo6c19pbmZvID0geyAjdHlwZSAiUHJvdG90eXBlIl9zLCAmSlMjI3R5cGUjI1Byb3RvdHlw
ZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
IyN0eXBlIyNQcm90b3R5cGUpIH0KIAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19J
TkZPKEludDE2QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmEzMzM4MmVm
YzgzYzA1ZjE5NWQ1NGJlNmY0NTA4NDNjMTBhZjUyMS4uNDczOGYwZWVmNTc0ZjIyZGY4NDdhNmM0
M2FiODdhMDU3ODJhY2I0NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IuY3BwCkBAIC0zOSw3ICsz
OSw3IEBAIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6SlNUeXBlZEFycmF5Vmlld0NvbnN0
cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0
b3IpIH07CiAKIHZvaWQgSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVHlwZWRBcnJheVZpZXdQ
cm90b3R5cGUqIHByb3RvdHlwZSwgR2V0dGVyU2V0dGVyKiBzcGVjaWVzU3ltYm9sKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1By
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcAppbmRleCA4ODI3YjNkZTk4ZmUwNWZlNThiOTE3MDQyOWUzODY0OTk1
ZTE5ZjU4Li4zZjllYzg0MDBlOWVjZjllYWEwNTkzMjdkNTIwNjU4NzlkNjZhZTliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcApAQCAtMjYzLDcgKzI2Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTih0eXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFs
dWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUoKTsKICAgICBpZiAoIXRoaXNWYWx1
ZS5pc09iamVjdCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJSZWNlaXZlciBzaG91bGQgYmUg
YSB0eXBlZCBhcnJheSB2aWV3IGJ1dCB3YXMgbm90IGFuIG9iamVjdCIpKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiUmVjZWl2ZXIgc2hvdWxkIGJlIGEgdHlwZWQgYXJyYXkgdmlldyBidXQgd2Fz
IG5vdCBhbiBvYmplY3QiX3MpKTsKICAgICBzY29wZS5yZWxlYXNlKCk7CiAgICAgQ0FMTF9HRU5F
UklDX1RZUEVEQVJSQVlfUFJPVE9UWVBFX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0luY2x1ZGVzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5cy5jcHAKaW5kZXggOTBiMzA0NTY3MGFmMGFiZTJmNmQwMjdlZGU5ZDg4NWZm
ZjA0YWYzOS4uZDliMjI2Mjk0NDBjOGM3MGExZDZhM2YyOTE5ZTI3Y2QxNDhkNGQwYiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKQEAgLTQ2
LDcgKzQ2LDcgQEAgY29uc3QgQVNDSUlMaXRlcmFsIHR5cGVkQXJyYXlCdWZmZXJIYXNCZWVuRGV0
YWNoZWRFcnJvck1lc3NhZ2UgeyAiVW5kZXJseWluZyBBcnIKICN1bmRlZiBNQUtFX1NfSU5GTwog
I2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCiAgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlMjI3R5cGUjI0FycmF5OjpzX2luZm8gPSB7IFwKLSAgICAgICAgI3R5cGUgIkFycmF5Iiwg
JkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBcCisgICAg
ICAgICN0eXBlICJBcnJheSJfcywgJkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBcCiAgICAgICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0Fy
cmF5KSBcCiAgICAgfTsgXAogICAgIGNvbnN0IENsYXNzSW5mbyogZ2V0IyN0eXBlIyNBcnJheUNs
YXNzSW5mbygpIHsgcmV0dXJuICZKUyMjdHlwZSMjQXJyYXk6OnNfaW5mbzsgfSBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtNYXAuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNwcAppbmRleCA0MWViZDhmN2VmNTQ3
ZjQxMGYyNjMwYWVmZWM5YzlkZmVkNjE0NDE1Li5jMTIwODU1NGI5MWExZDdkMTM4NWRiODQwOTAy
ZDhkOTgyOGRlNDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01h
cC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha01hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrTWFwKSB9OwogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RS
ZWYuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNw
cAppbmRleCAxNTYxM2QzODkwYThkOTE3YWMyMDJkNjc2MjI3M2RlODY4NmVmYWU2Li4yODNkN2Vm
MjgzN2VlZTUwMDczYmZhYWM5MGY4ZGJiOGM0Njc1MzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHAKQEAgLTMwLDcgKzMwLDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtPYmplY3RSZWY6OnNf
aW5mbyA9IHsgIldlYWtSZWYiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2Vha09iamVjdFJlZikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dl
YWtPYmplY3RSZWY6OnNfaW5mbyA9IHsgIldlYWtSZWYiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrT2JqZWN0UmVmKSB9OwogCiB2
b2lkIEpTV2Vha09iamVjdFJlZjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU09iamVjdCogdmFs
dWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtT
ZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrU2V0LmNwcAppbmRl
eCBiZmRkOTRlZDA5ZGYzOGRhYThiMWY2MmQ4NTQzZWYxYmJiYmZhMmYxLi5hMDFiNzhhNzU0OTJl
OGU4MDc5MjU5MDY5MWZkOWI3MzE4ODcwOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTV2Vha1NldC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha1Nl
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWFrU2V0KSB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dpdGhT
Y29wZS5jcHAKaW5kZXggYWMxZmEyNWZiYjQ4NmIwNGYzZDJkYTQzNzIyYjY5YTU3MDc0NTYxZS4u
MTE5ZThhYzJkODQ2NTk0MmE4YzFkNjhmNGVhZmU3ZTdhM2I2ZDY5ZSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8g
PSB7ICJXaXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3Bl
OjpzX2luZm8gPSB7ICJXaXRoU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXaXRoU2NvcGUpIH07CiAKIEpTV2l0aFNjb3BlKiBK
U1dpdGhTY29wZTo6Y3JlYXRlKAogICAgIFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNTY29wZSogbmV4dCwgSlNPYmplY3QqIG9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAKaW5kZXggNDEyZTI1OGFiMDk1OWYx
OGIzMmRhOTkxZGIzZjk2MDRmMjk4YjdmNC4uYjM5NTFkZWVhN2VkY2EyYTk1MmJmODY5NGRkYjY2
NGVmODU4YmEwMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0
ZXJhbFBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJh
bFBhcnNlci5jcHAKQEAgLTExNjEsNyArMTE2MSw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBM
aXRlcmFsUGFyc2VyPENoYXJUeXBlPjo6cGFyc2VQcmltaXRpdmVWYWx1ZShWTSYgdm0pCiAgICAg
ICAgICAgICBpZiAodG9rZW4tPnN0cmluZ0xlbmd0aCA+IHNob3J0TGVuZ3RoKQogICAgICAgICAg
ICAgICAgIGVycm9yU3RyaW5nID0gdHJ5TWFrZUVycm9yU3RyaW5nKHNob3J0TGVuZ3RoKTsKICAg
ICAgICAgICAgIGlmICghZXJyb3JTdHJpbmcpCi0gICAgICAgICAgICAgICAgZXJyb3JTdHJpbmcg
PSAiVW5leHBlY3RlZCBpZGVudGlmaWVyIjsKKyAgICAgICAgICAgICAgICBlcnJvclN0cmluZyA9
ICJVbmV4cGVjdGVkIGlkZW50aWZpZXIiX3M7CiAgICAgICAgIH0KIAogICAgICAgICBtX3BhcnNl
RXJyb3JNZXNzYWdlID0gZXJyb3JTdHJpbmc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTVhMjg5ODY3NTg0ODI5ZmVhMjE0MWY5
Njg4MjQ5NTA2MDhjYjc4Yi4uMzU0MDEyZGJkNDhmNGM3ODI3YjZiOWQ2ZWE2OWQ5MDVjNDI0YTVj
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9y
LmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIE1hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIE1hcFByb3RvdHlwZSogbWFwUHJvdG90eXBlLCBHZXR0ZXJTZXR0ZXIqIHNwZWNpZXNT
eW1ib2wpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggNmFjNTg3YjVlODY5OTcxM2NjZGNiY2MzZjVhMjEx
MWVjZmJhOTIyNy4uZjczMWM1ZDM0NWUyYjQxZGE1OWM3MjAwNjcwMzIwYjQ3OGE1YjljZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJv
dG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwSXRlcmF0b3JQcm90b3R5cGUpIH07CiAK
IHZvaWQgTWFwSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBQcm90b3R5cGUuY3BwCmluZGV4IDkzZWJlMDAzYzQ3MmJjODk0M2E4NThkYTgzNTM0
ZjJiYjdhMTgwNmUuLmZmY2JkNzhmMTY0OWQ0YWJjYzcyNTY0NDcyMDQ0YjZmMDVlNTM0ODEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcApAQCAt
MzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgJm1hcFByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCJfcywgJkJhc2U6OnNfaW5m
bywgJm1hcFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFBy
b3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBNYXBQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBt
YXBQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTWF0aE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2Jq
ZWN0LmNwcAppbmRleCA1YjBjYTk3N2QwODUxYzRiYjY3YzllNDY0ZTVhMTAzYzIyYzE0YjM3Li5k
ZTY4YWE5NzQ0NmU3MDlhOGY0MTExMDBiY2QyZmIwYjRiYWVjMTk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcApAQCAtNjMsNyArNjMsNyBAQCBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jVGFuKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNUYW5oKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNJTXVsKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hdGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hdGhPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gTWF0aE9iamVjdDo6c19pbmZvID0geyAiTWF0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9OwogCiBNYXRo
T2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBK
U05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggMWQ1
M2JmNWQxMGE2ZjQ0OGQzOTMzY2YxNDFiNzA0OWRkMjYyY2M3NC4uMjQ3ZmFhNjVlYmNlNmVhMzk0
NzZjYzI2ZWY0ZDJlNTI2ZDU5ZTU2OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01vZHVsZVByb2dyYW1FeGVjdXRhYmxlLmNwcApAQCAtMzAsNyArMzAs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1vZHVsZVByb2dyYW1F
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTW9kdWxlUHJvZ3Jh
bUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGU6
OnNfaW5mbyA9IHsgIk1vZHVsZVByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1vZHVsZVByb2dyYW1FeGVjdXRh
YmxlKSB9OwogCiBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZTo6TW9kdWxlUHJvZ3JhbUV4ZWN1dGFi
bGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNl
KQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkubW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGVT
dHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZl
ZENvbnRleHRUeXBlOjpOb25lLCBmYWxzZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwg
Tm9JbnRyaW5zaWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
YXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDIxM2Q5ZmI3YTY4YWIyYWM4Zjk2ZDg2
NzBkOGFlMzQ2ZjEzOWUzZmMuLjcwMmUzNjkwMDYyZjVjYmRlNjZlYzc2ZjM3NDc0ZGNkODRhZDY5
NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2
ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JDb25z
dHJ1Y3RvckJhc2UpOwogCi1jb25zdCBDbGFzc0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJh
c2U6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZTo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFdmFsRXJyb3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0RXZhbEVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKaW5kZXggNjRmOWQxZmQ2Mzg4NjNjZmVm
NTEwZDg0MDFhZmM4OWM3ZDdiOWE2YS4uZTA5NjYzYjJkYTMzN2YyMzMzOGU3ZTliYzYwOTNlNWFk
YzJmMTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBOYXRpdmVFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRh
YmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOYXRpdmVF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRhYmxlIl9zLCAmRXhlY3V0YWJsZUJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OwogCiBOYXRpdmVFeGVjdXRhYmxlKiBOYXRpdmVFeGVjdXRhYmxlOjpjcmVh
dGUoVk0mIHZtLCBSZWY8SklUQ29kZT4mJiBjYWxsVGh1bmssIFRhZ2dlZE5hdGl2ZUZ1bmN0aW9u
IGZ1bmN0aW9uLCBSZWY8SklUQ29kZT4mJiBjb25zdHJ1Y3RUaHVuaywgVGFnZ2VkTmF0aXZlRnVu
Y3Rpb24gY29uc3RydWN0b3IsIGNvbnN0IFN0cmluZyYgbmFtZSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IGFh
ZTIwYTViYzc1OWIwNTJjZjE5Mzk3ODhiNmMwMGMyYWRiMjJjZmIuLjYyNzBkNTM0NzE3MmMyNDI5
Zjg3ZTAxODRhMjVkZjllZDM4MWUzN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE51bGxHZXR0ZXJGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBO
dWxsR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlv
bikgfTsKIAogbmFtZXNwYWNlIE51bGxHZXR0ZXJGdW5jdGlvbkludGVybmFsIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAK
aW5kZXggZjIxOWI5MzI2YmJkYWFlZGZlM2ZhMWM2Yjg2ZjFhYWMzYTUxOGJjMy4uMDk1YzYwNWIx
OTIwZjc1MTA1YWRjMWQ0NGY4ZDMzYjgwNzIyNzBiOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVsbFNldHRlckZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIE51bGxTZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRl
ckZ1bmN0aW9uKSB9OwogCiAKICNpZiBBU1NFUlRfRU5BQkxFRApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyM2ExNmI1
MjM1ZGY4MzlmYjllNWRlZWVmYjY1Mjg1YWNhNjI3ZDAuLmQyYTA1MDVmZDcyNDFmMTdlNjNjOTMw
YTBjYjA3ODY2MzdjMDBmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25z
dHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmbnVtYmVyQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZudW1iZXJDb25zdHJ1Y3RvclRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlckNvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIE51bWJlckNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gbnVtYmVyQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVj
dC5jcHAKaW5kZXggZWZlYmIyOWExM2I5NWQxNzg3NmUwZjFmMmRkYTU3NmE3ZDEwZjJiNy4uNTEy
ZGVmZTc2MTYwMzU1MTA5MTEyNGM0NDA0ZDNmMzI2ZjVhYzViNCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShOdW1iZXJPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyT2JqZWN0Ojpz
X2luZm8gPSB7ICJOdW1iZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyT2JqZWN0KSB9OwogCiBOdW1iZXJPYmplY3Q6Ok51bWJl
ck9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3Rv
dHlwZS5jcHAKaW5kZXggODg4NTkxZGRjMDZmZmFjYWQyZjBhMDk3M2JmMDI1NTRkNjUxODBiNi4u
NjliMzBmZjVlMWU3Yzc2YjBiMTc0NTE3N2NiYjhmZWEwNTYzZjBlYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwCkBAIC01MSw3ICs1
MSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG51bWJlclByb3RvRnVuY1Rv
UHJlY2lzaW9uKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIk51bWJlciIsICZOdW1iZXJPYmplY3Q6OnNfaW5mbywgJm51
bWJlclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsg
Ik51bWJlciJfcywgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRh
YmxlCkBAIC0zNzUsNyArMzc1LDcgQEAgU3RyaW5nIHRvU3RyaW5nV2l0aFJhZGl4KGRvdWJsZSBk
b3VibGVWYWx1ZSwgaW50MzJfdCByYWRpeCkKICAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVy
KGRvdWJsZVZhbHVlKTsKIAogICAgIFJhZGl4QnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gdG9T
dHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCk7CisgICAg
cmV0dXJuIFN0cmluZyB7IHRvU3RyaW5nV2l0aFJhZGl4SW50ZXJuYWwoYnVmZmVyLCBkb3VibGVW
YWx1ZSwgcmFkaXgpIH07CiB9CiAKIC8vIHRvRXhwb25lbnRpYWwgY29udmVydHMgYSBudW1iZXIg
dG8gYSBzdHJpbmcsIGFsd2F5cyBmb3JtYXR0aW5nIGFzIGFuIGV4cG9uZW50aWFsLgpAQCAtNDEy
LDcgKzQxMiw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihudW1iZXJQcm90b0Z1bmNUb0V4
cG9uZW50aWFsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAgICAgIGNvbnZlcnRlci5U
b0V4cG9uZW50aWFsKHgsIC0xLCAmYnVpbGRlcik7CiAgICAgZWxzZQogICAgICAgICBjb252ZXJ0
ZXIuVG9FeHBvbmVudGlhbCh4LCBkZWNpbWFsUGxhY2VzLCAmYnVpbGRlcik7Ci0gICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgYnVpbGRlci5GaW5hbGl6ZSgpKSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nIHsgYnVpbGRlci5GaW5h
bGl6ZSgpIH0pKTsKIH0KIAogLy8gdG9GaXhlZCBjb252ZXJ0cyBhIG51bWJlciB0byBhIHN0cmlu
ZywgYWx3YXlzIGZvcm1hdHRpbmcgYXMgYW4gYSBkZWNpbWFsIGZyYWN0aW9uLgpAQCAtNTEzLDcg
KzUxMyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTU3RyaW5nKiBudW1iZXJUb1N0cmluZ0lu
dGVybmFsKFZNJiB2bSwgZG91YmxlIGRvdWJsZVZhbHVlCiAgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sIFN0cmluZzo6bnVtYmVyKGRvdWJsZVZhbHVlKSk7CiAKICAgICBSYWRp
eEJ1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIGpzU3RyaW5nKHZtLCB0b1N0cmluZ1dpdGhSYWRp
eEludGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4KSk7CisgICAgcmV0dXJuIGpzU3Ry
aW5nKHZtLCBTdHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFsKGJ1ZmZlciwgZG91Ymxl
VmFsdWUsIHJhZGl4KSB9KTsKIH0KIAogSlNTdHJpbmcqIGludDMyVG9TdHJpbmcoVk0mIHZtLCBp
bnQzMl90IHZhbHVlLCBpbnQzMl90IHJhZGl4KQpAQCAtNTQxLDcgKzU0MSw3IEBAIEpTU3RyaW5n
KiBpbnQ1MlRvU3RyaW5nKFZNJiB2bSwgaW50NjRfdCB2YWx1ZSwgaW50MzJfdCByYWRpeCkKICAg
ICBjaGFyKiBzdGFydE9mUmVzdWx0U3RyaW5nID0gZGVjaW1hbFBvaW50OwogICAgICpkZWNpbWFs
UG9pbnQgPSAnXDAnOwogCi0gICAgcmV0dXJuIGpzTm9udHJpdmlhbFN0cmluZyh2bSwgaW50NTJU
b1N0cmluZ1dpdGhSYWRpeChzdGFydE9mUmVzdWx0U3RyaW5nLCB2YWx1ZSwgcmFkaXgpKTsKKyAg
ICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCBTdHJpbmcgeyBpbnQ1MlRvU3RyaW5nV2l0
aFJhZGl4KHN0YXJ0T2ZSZXN1bHRTdHJpbmcsIHZhbHVlLCByYWRpeCkgfSk7CiB9CiAKIEpTU3Ry
aW5nKiBudW1iZXJUb1N0cmluZyhWTSYgdm0sIGRvdWJsZSBkb3VibGVWYWx1ZSwgaW50MzJfdCBy
YWRpeCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0
cnVjdG9yLmNwcAppbmRleCA1ODQwNmVhNzMxYzk0YWViNzQ5MTE5MmViZTZkMTRjOTNhMjM4Yzc3
Li4yNmFmNjE5ZGNhM2QyNmQ4ZWRjNTdiOWM5NTI2YmFlMDVjOWVmMjZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01
Niw3ICs1Niw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxM
WV9ERVNUUlVDVElCTEUoT2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2Jq
ZWN0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm9iamVjdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoT2JqZWN0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZv
LCAmb2JqZWN0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShP
YmplY3RDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBPYmplY3RDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIG9iamVjdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3BwCmluZGV4IDk1YmJhM2NiMzIwZWE1
YzcwZjk4MDQzZmUwZDI2NzAxNzczYTBlMmMuLjU5NWNiNDJhOWM4NzM5YTMxYjIzMWU2MTVjZTEx
ZWY3NDAyZGUwNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09i
amVjdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2Jq
ZWN0UHJvdG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihvYmplY3RQcm90b0Z1bmNUb0xvY2FsZVN0cmluZyk7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShPYmplY3RQcm90b3R5cGUpOwogCi1jb25zdCBD
bGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSlNOb25GaW5h
bE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmplY3RQcm90b3R5cGU6OnNfaW5m
byA9IHsgIk9iamVjdCJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUpIH07CiAKIE9iamVjdFBy
b3RvdHlwZTo6T2JqZWN0UHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHVjdHVyZSkKICAg
ICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvT3BlcmF0aW9ucy5oCmluZGV4IDA5MTllNzIxODZkMzlkNmQ1NmVkZDcxOGE5Y2Zi
OGEzMDRmNTkxNzEuLjJlODE4YmZmYTc5YzRhZjZmMGQzYzEyNTI4ZmFhNTY1NThlYzVmM2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcGVyYXRpb25zLmgKQEAgLTU3Myw3ICs1
NzMsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUganNBZGQoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBE
b3VibGVPcGVyYXRpb24sIHR5cGVuYW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9i
YWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwpAQCAtNzgwLDcgKzc4MCw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBzaGlmdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyCiAgICAgfQogI2Vu
ZGlmCiAKLSAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVmdCA/ICJJbnZhbGlkIG1peCBvZiBC
aWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBvcGVyYXRpb24uIiA6ICJJbnZhbGlk
IG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gc2lnbmVkIHJpZ2h0IHNoaWZ0IG9wZXJh
dGlvbi4iOworICAgIGF1dG8gZXJyb3JNZXNzYWdlID0gaXNMZWZ0ID8gIkludmFsaWQgbWl4IG9m
IEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBsZWZ0IHNoaWZ0IG9wZXJhdGlvbi4iX3MgOiAiSW52
YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGluIHNpZ25lZCByaWdodCBzaGlmdCBv
cGVyYXRpb24uIl9zOwogICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCBlcnJvck1lc3NhZ2UpOwogfQogCkBAIC04MTUsNyArODE1LDcgQEAgQUxXQVlTX0lOTElO
RSBKU1ZhbHVlIGpzVVJTaGlmdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGxlZnQsIEpTVmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgSW50MzJPcGVyYXRpb24sIHR5cGVu
YW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVlIGJpdHdpc2VCaW5hcnlPcChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyLCBJbnQzMk9w
ZXJhdGlvbiYmIGludDMyT3AsIEJpZ0ludE9wJiYgYmlnSW50T3AsIGNvbnN0IGNoYXIqIGVycm9y
TWVzc2FnZSkKK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3aXNlQmluYXJ5T3AoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgSW50MzJPcGVyYXRp
b24mJiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNz
YWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggZWFiZmE4NWFjYTM3ZWYwYWE3
YzdkZjg5NWVhZTQxNzM5ZDE1NDkwZS4uNzMyOWZlMjcwMTg2ODRhYjA1YzZhNDc3NmZhZDI5NmU1
ODI4OWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvZ3Jh
bUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb2dy
YW1FeGVjdXRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhl
Y3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUHJvZ3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1
dGFibGU6OnNfaW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1FeGVjdXRhYmxlKSB9
OwogCiBQcm9ncmFtRXhlY3V0YWJsZTo6UHJvZ3JhbUV4ZWN1dGFibGUoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNlKQogICAgIDogQmFzZShnbG9i
YWxPYmplY3QtPnZtKCkucHJvZ3JhbUV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9i
amVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZlZENvbnRleHRUeXBlOjpOb25lLCBmYWxz
ZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCmluZGV4IGFiNDE2Njk5
ZTk2Mjc3YjJlY2ExMjE4ODkxNjgwMTkxZmIzMzI2ZmEuLjYyMzE0YzdiZTJiYTkzYTg3ZmRiNjVh
ZGRiMTk1ZjU1YzRjZmJjMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBE
RUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKFByb3BlcnR5VGFibGUpOwogCi1j
b25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVydHlUYWJsZSIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlU
YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9w
ZXJ0eVRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFByb3BlcnR5VGFibGUpIH07CiAKIFByb3BlcnR5VGFibGUqIFByb3BlcnR5VGFibGU6OmNy
ZWF0ZShWTSYgdm0sIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjcyZjhm
N2FlZTUzMDkwNzE4NjM5NmMyMzE0NWNiYWJkZmJiMWYzYy4uODhjMTc3NGY4MDgwOWMxNzg1OGI1
ZGMwYzRkMjU0ZjkwMzY2NjdmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eUNvbnN0
cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlByb3h5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShQcm94eUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlByb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5Q29uc3RydWN0b3IpIH07CiAKIFByb3h5Q29uc3Ry
dWN0b3IqIFByb3h5Q29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogewpAQCAtNzYsNyArNzYsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04obWFrZVJl
dm9jYWJsZVByb3h5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogCiB2b2lk
IFByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKIHsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5
IiwgUHJvcGVydHlBZGRpdGlvbk1vZGU6OldpdGhvdXRTdHJ1Y3R1cmVUcmFuc2l0aW9uKTsKKyAg
ICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5Il9zLCBQcm9wZXJ0eUFkZGl0aW9u
TW9kZTo6V2l0aG91dFN0cnVjdHVyZVRyYW5zaXRpb24pOwogICAgIEpTQ19OQVRJVkVfRlVOQ1RJ
T05fV0lUSE9VVF9UUkFOU0lUSU9OKCJyZXZvY2FibGUiLCBtYWtlUmV2b2NhYmxlUHJveHksIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCAyKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3QuY3BwCmluZGV4
IDQ1ZjU4ZDk5ZDM1ZDVhMTNkZGI5OWUwYTY0Y2Y5MWZiNjZkOTM4ZGYuLjFiOWNmNzA2ZGZkN2Zl
NjdjNDU5NGM3ZDdkM2RlMGM5ZTJiMWU2OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Qcm94eU9iamVjdC5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eU9iamVjdCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eU9iamVjdDo6c19pbmZvID0geyAiUHJveHlPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFBy
b3h5T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5T2JqZWN0OjpzX2luZm8gPSB7ICJQ
cm94eU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShQcm94eU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04ocGVyZm9ybVByb3h5Q2FsbCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihwZXJmb3JtUHJveHlDb25zdHJ1Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUHJveHlSZXZva2UuY3BwCmluZGV4IGY1MGNmZTY4MWFjYjk4NGRkODY4MGNmODA2NzlhYjI2
NTFlOTc3ZjAuLjNlNjIxYWI3MzQzMjk3MjkyMTA2NDdiZjhjMTMxNTY1ODQwYWQyNzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5UmV2b2tlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eVJldm9rZS5jcHAKQEAgLTMzLDcg
KzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShQcm94eVJldm9rZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJldm9rZTo6
c19pbmZvID0geyAiUHJveHlSZXZva2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5UmV2b2tlKSB9OworY29uc3QgQ2xhc3NJbmZvIFBy
b3h5UmV2b2tlOjpzX2luZm8gPSB7ICJQcm94eVJldm9rZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJldm9rZSkgfTsKIAogUHJv
eHlSZXZva2UqIFByb3h5UmV2b2tlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgUHJveHlPYmplY3QqIHByb3h5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWZsZWN0T2JqZWN0LmNwcAppbmRleCAwODczN2RhYTc1NjIzN2Y2Y2EyZTA5ZGM4YzFh
ZDc1ZDFkYjhjNTE2Li4yMjdlMDEyMGVlMTk1YzNkOGE3OGFjNGUxYmFiYTQ1MDc2NDY1ZjEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNwcApA
QCAtNTAsNyArNTAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKFJlZmxlY3RPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gUmVm
bGVjdE9iamVjdDo6c19pbmZvID0geyAiUmVmbGVjdCIsICZCYXNlOjpzX2luZm8sICZyZWZsZWN0
T2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVmbGVjdE9iamVjdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSZWZsZWN0T2JqZWN0OjpzX2luZm8gPSB7ICJSZWZsZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVmbGVjdE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFJlZmxlY3RPYmplY3QpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVmbGVjdE9iamVj
dC5sdXQuaAogQGJlZ2luIHJlZmxlY3RPYmplY3RUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cC5jcHAKaW5kZXggNDQ5MDlkMTY5NGJjNTVjNzViMjc3Y2M1MTYwMDAwMjg0
YjRhZDMyZi4uYzhlZjYzZjg5NDdhNzJhNDc3OGFlMzUzZjBiNTk1MjBjODc0NDEyMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHAuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gUmVnRXhwOjpzX2luZm8gPSB7ICJS
ZWdFeHAiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJl
Z0V4cCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCJfcywg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07
CiAKICNpZiBSRUdFWFBfRlVOQ19URVNUX0RBVEFfR0VOCiBjb25zdCBjaGFyKiBjb25zdCBSZWdF
eHBGdW5jdGlvbmFsVGVzdENvbGxlY3Rvcjo6c19maWxlTmFtZSA9ICIvdG1wL1JlZ0V4cFRlc3Rz
RGF0YSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
YWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5jcHAK
aW5kZXggMGY1ZDUwZmVjMGI3NDI0NDRiZDY2ODUxNWQ2YWJhMjM4MmJlNDc3Mi4uNzQ3NzAxZjhh
MGQ0YWJiMzA2NDllZDZmYTJmYTUxMTdlZjRjNmYzZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWdFeHBDYWNo
ZTo6UmVnRXhwQ2FjaGUoVk0qIHZtKQogCiBSZWdFeHAqIFJlZ0V4cENhY2hlOjplbnN1cmVFbXB0
eVJlZ0V4cFNsb3coVk0mIHZtKQogewotICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVh
dGUodm0sICIiLCB7IH0pOworICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVhdGUodm0s
IGVtcHR5U3RyaW5nKCksIHsgfSk7CiAgICAgbV9lbXB0eVJlZ0V4cC5zZXQodm0sIHJlZ0V4cCk7
CiAgICAgcmV0dXJuIHJlZ0V4cDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRleCBmZDRjOTJiMzQxMWM1OWRlYmFhNmZi
ODBiZjkwMmMxOTNmOGM4OGNhLi4xNWYyN2QwYTRiYTI3OWExMmY2YjkzYWVjZDI0MmQ0NGYyMzE2
OTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
U0VUVEVSKHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5lKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZyZWdFeHBDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFJlZ0V4cENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcmVnRXhwQ29uc3RydWN0b3JUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5k
ZXggM2YzNDI2Y2UxZWZkMjQwNmU2MzU5MGUzNTljODI2OTI5ZmRmMzcyZS4uNzhmNWM4YTg1NWNl
OTQ0YmNlMTllNzg5MmJlY2QwNGY3OTQ1NTg2OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBK
U0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUmVnRXhwT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVjdDo6c19pbmZvID0geyAiUmVnRXhw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShS
ZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7
ICJSZWdFeHAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NF
VFRFUihyZWdFeHBPYmplY3RTZXRMYXN0SW5kZXhTdHJpY3QpOwogc3RhdGljIEpTQ19ERUNMQVJF
X0NVU1RPTV9TRVRURVIocmVnRXhwT2JqZWN0U2V0TGFzdEluZGV4Tm9uU3RyaWN0KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4
IDU4MjRhNDJjM2I2YTE1NzNmMDAxNjU1YTY5MmQ2NzlmZGZhMDA5ZjQuLjk3NTcwMTJiNzNkOTU4
ODIyMTlkMDllMjdmMzk2NmM3MjIxNTAyZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihyZWdFeHBQcm90b0dldHRlclVuaWNvZGUpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UpOwog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncyk7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVn
RXhwUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cFByb3RvdHlwZTo6c19pbmZv
ID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFJlZ0V4cFByb3RvdHlwZSkgfTsKIAogUmVnRXhwUHJvdG90eXBlOjpSZWdF
eHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTTm9uRmlu
YWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKQEAgLTEwNSw3ICsxMDUsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9GdW5jRXhlYywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbAogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUo
KTsKICAgICBhdXRvKiByZWdleHAgPSBqc0R5bmFtaWNDYXN0PFJlZ0V4cE9iamVjdCo+KHZtLCB0
aGlzVmFsdWUpOwogICAgIGlmIChVTkxJS0VMWSghcmVnZXhwKSkKLSAgICAgICAgcmV0dXJuIHRo
cm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkJ1aWx0aW4gUmVnRXhwIGV4ZWMg
Y2FuIG9ubHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVjdCIpOworICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQnVpbHRpbiBSZWdFeHAgZXhl
YyBjYW4gb25seSBiZSBjYWxsZWQgb24gYSBSZWdFeHAgb2JqZWN0Il9zKTsKICAgICBKU1N0cmlu
Zyogc3RyaW5nID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b1N0cmluZ09yTnVsbChnbG9iYWxP
YmplY3QpOwogICAgIEVYQ0VQVElPTl9BU1NFUlQoISFzY29wZS5leGNlcHRpb24oKSA9PSAhc3Ry
aW5nKTsKICAgICBpZiAoIXN0cmluZykKQEAgLTM0Myw3ICszNDMsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncywgKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsCiAgICAgYXV0byBmbGFncyA9IGZsYWdzU3RyaW5nKGdsb2JhbE9iamVjdCwgYXNP
YmplY3QodGhpc1ZhbHVlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBm
bGFncy5kYXRhKCkpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBT
dHJpbmcgeyBmbGFncy5kYXRhKCkgfSkpOwogfQogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
cmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXgg
MzkwMjk5MGM3YWVkOTdlNWUwYWFkYWFiNWJhYzRkZTY5MGFlYjdmYS4uM2U2MmU0YzE1MWFkOTQw
NjAyMWQwN2I3NDU0ZWQyOTc2NGVhYTQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNw
cApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFJlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAgU3RyaW5n
IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiUmVnRXhwIFN0cmlu
ZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBSZWdF
eHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKaW5kZXggNjA5MTE4MTA0Mzg3MDUxZDZiNmM1Y2Jh
NTJiOGQ3YWE5ZWNhZTk0My4uZDMxMzFlNmI5M2YxN2M5ZmMwZWYyMThkZmFhMDE2MDA0Njk4Zjhh
NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVu
dHMuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2NvcGVkQXJndW1lbnRzKTsKIAotY29uc3QgQ2xh
c3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVu
dHMpIH07Citjb25zdCBDbGFzc0luZm8gU2NvcGVkQXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1
bWVudHMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU2NvcGVkQXJndW1lbnRzKSB9OwogCiBTY29wZWRBcmd1bWVudHM6OlNjb3BlZEFyZ3Vt
ZW50cyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBXcml0ZUJhcnJpZXI8VW5rbm93bj4q
IHN0b3JhZ2UsIHVuc2lnbmVkIHRvdGFsTGVuZ3RoKQogICAgIDogR2VuZXJpY0FyZ3VtZW50cyh2
bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCmluZGV4IDE0ZmMyZmI2MDRiMzRlZjg5MDUzMzlhNjUx
YzRmZTVlZjA1ZjEwZDkuLmFhMmRmNGNkMTgwYjNiMjVkY2IwN2M4Y2JkYzhmZjdkYmMyOTAwYTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50
c1RhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1
bWVudHNUYWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHNUYWJsZTo6c19pbmZvID0geyAiU2NvcGVkQXJn
dW1lbnRzVGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFNjb3BlZEFyZ3VtZW50c1RhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3Vt
ZW50c1RhYmxlOjpzX2luZm8gPSB7ICJTY29wZWRBcmd1bWVudHNUYWJsZSJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVudHNUYWJs
ZSkgfTsKIAogU2NvcGVkQXJndW1lbnRzVGFibGU6OlNjb3BlZEFyZ3VtZW50c1RhYmxlKFZNJiB2
bSkKICAgICA6IEJhc2Uodm0sIHZtLnNjb3BlZEFyZ3VtZW50c1RhYmxlU3RydWN0dXJlLmdldCgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0
YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxl
LmNwcAppbmRleCA0MjFkNzAwZTQ2YWZiODA4ZTdkNWE1NzBkY2FmNWY1YzdiYTliNDFmLi5jNmE5
ZWFiNjcxNGNlNDJjNDEwODdiZGIwOGZjOTIxNzRhYzhlY2JmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcApAQCAtNDQsNyArNDQs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFi
bGU6OnNfaW5mbyA9IHsgIlNjcmlwdEV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY3JpcHRFeGVjdXRhYmxl
KSB9OworY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlNjcmlw
dEV4ZWN1dGFibGUiX3MsICZFeGVjdXRhYmxlQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjcmlwdEV4ZWN1dGFibGUpIH07CiAKIFNjcmlwdEV4ZWN1
dGFibGU6OlNjcmlwdEV4ZWN1dGFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFZNJiB2bSwgY29u
c3QgU291cmNlQ29kZSYgc291cmNlLCBMZXhpY2FsU2NvcGVGZWF0dXJlcyBsZXhpY2FsU2NvcGVG
ZWF0dXJlcywgRGVyaXZlZENvbnRleHRUeXBlIGRlcml2ZWRDb250ZXh0VHlwZSwgYm9vbCBpc0lu
QXJyb3dGdW5jdGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFs
Q29udGV4dFR5cGUgZXZhbENvbnRleHRUeXBlLCBJbnRyaW5zaWMgaW50cmluc2ljKQogICAgIDog
RXhlY3V0YWJsZUJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAppbmRleCBkNTQ0MzNiZmVlNGZkZGRhNWY0NzA2
NzdhZjQ1N2Y5YmY0Zjc0ZTQ1Li4zMWYzMDdlNjkwNzEyMjBhNzYyYjU5YjIyN2JkYzQwZGViMDBi
MWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTZXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU2V0UHJvdG90eXBlKiBzZXRQcm90b3R5cGUsIEdldHRlclNldHRlciogc3BlY2ll
c1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzZmFiNmUzODY1NTNmMzFkZDk5ZDQ0ZDMzMWFl
ZTZhYzY5NmVjMjM0Li45MDYxNzFiY2ZmNjMwNmFhYTc1YTMwYzgxYjE0ODE1MTdhY2Q4MGQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JQ
cm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvclByb3RvdHlwZSkgfTsK
IAogdm9pZCBTZXRJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldFByb3RvdHlwZS5jcHAKaW5kZXggYTZlZmMyZmJiMzE0NDZlODJhNDYzNDIxMmYy
N2I2ZDBkNGQ1OTJjZS4uNTRjMjJkYzE3NjUyN2I0YmFkZmY1NDRkMGRkNjNiZTdmY2JjMjVmOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRQcm90b3R5cGUuY3BwCkBA
IC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2V0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAmc2V0UHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFNldFByb3RvdHlwZTo6c19pbmZvID0geyAiU2V0Il9zLCAmQmFzZTo6c19p
bmZvLCAmc2V0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFNldEl0ZXJhdG9yUHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gc2V0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYzg4NmJhYzA2
M2I0MmM2NzJmMmZlYzk1MTgxZjEwMTdiNjZhZjFhZi4uNDU2NDg0NDc0NzkxNGQ2MGY4YzNlNTU2
Nzc2Y2IzNjM2ZTZkOWJiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbUNvbnN0cnVjdG9yKSB9OwogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcik7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxt
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtT2Jq
ZWN0LmNwcAppbmRleCAzMzYxNDZjNTJlNGFiODNiYTExZmEyZmI3ODNlMDhjOGQ5MjRmNGE0Li5l
MGZkNGVmNmM5MzliNzJkM2ZmZjAwYjk1MGU4MTdlNTBlNWYyMTNmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1PYmplY3QuY3BwCkBAIC0zOSw3
ICszOSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShTaGFkb3dS
ZWFsbU9iamVjdCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93
UmVhbG1PYmplY3Q6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbU9iamVjdCkgfTsK
K2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbU9iamVjdDo6c19pbmZvID0geyAiU2hhZG93UmVh
bG0iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU2hhZG93UmVhbG1PYmplY3QpIH07CiAKIFNoYWRvd1JlYWxtT2JqZWN0OjpTaGFkb3dSZWFs
bU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwCmluZGV4IDhlODg2NjYzOTgzYWYzYTU3YzYzMTFlN2EwODhmYzY1
ZTdkYTNhNTIuLjc0Y2NhMDY1NzI0YmI0YTZhYjI5OWJhMTcxNTE5M2QwMTNlZDczMDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbVByb3Rv
dHlwZS5jcHAKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1j
b25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1Jl
YWxtIiwgJkJhc2U6OnNfaW5mbywgJnNoYWRvd1JlYWxtUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIl9zLCAm
QmFzZTo6c19pbmZvLCAmc2hhZG93UmVhbG1Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbVByb3RvdHlwZSkgfTsKIAogU2hhZG93UmVhbG1Qcm90
b3R5cGU6OlNoYWRvd1JlYWxtUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IDE2
MTU3Y2YwN2UwZWE2YWMwZjUwODlhNzM1YWFlMzNiZmI2ZDEwZTUuLjhkZDZiZDMzMmZiZDIzMGQ5
MGVhMDU0OTc0NzA3MDliY2ExODRkMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6
c19pbmZvID0geyAiU3BhcnNlQXJyYXlWYWx1ZU1hcCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJyYXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2luZm8gPSB7ICJTcGFyc2VBcnJheVZhbHVl
TWFwIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNw
YXJzZUFycmF5VmFsdWVNYXApIH07CiAKIFNwYXJzZUFycmF5VmFsdWVNYXA6OlNwYXJzZUFycmF5
VmFsdWVNYXAoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0uc3BhcnNlQXJyYXlWYWx1ZU1hcFN0
cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcAppbmRleCA0NGVkZDE1NmFmMDczYTIyMjVjY2U2NTBk
ZTU5ZmJmZjYxYjRjZTdkLi5lZWUzMzU3MDJiMjE1ZjFhMzZhZDQ4ZTEyOTk4MGRkNGZjYTMyYmQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RFdmFsQWN0
aXZhdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZh
bEFjdGl2YXRpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaWN0RXZhbEFjdGl2YXRpb24p
OwogCi1jb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFjdGl2YXRpb246OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RyaWN0RXZhbEFjdGl2YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFj
dGl2YXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RFdmFsQWN0aXZhdGlvbikgfTsKIAog
U3RyaWN0RXZhbEFjdGl2YXRpb246OlN0cmljdEV2YWxBY3RpdmF0aW9uKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29wZSkKICAgICA6IEJhc2Uodm0sIHN0
cnVjdHVyZSwgY3VycmVudFNjb3BlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IDkyZGM5NDY5ZDJhODRjNTQ5MjIwZTIx
ZjVmMTZmNzdhMDA1NWZkODUuLjkyZmUzOTJkNjhjNGYyYTI4MGNmNDkyYTJjYTZjODYyODZkOGVj
YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25z
dHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oc3RyaW5nRnJvbUNvZGVQb2ludCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVy
bmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
U3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAmc3RyaW5nQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTdHJpbmdDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTdHJpbmdD
b25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN0cmluZ0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90
eXBlLmNwcAppbmRleCA2MTQ0YjMxNGRlMGI0MjZhNWMzNmNiYjRlNTYzZDRkM2I4YTNhM2UxLi5h
NmY3MzFmZjZiMTE3MjMwMzVkZTc1NDRkZjQzZDNlOTQxOTMyYWM5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Ry
aW5nSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKaW5kZXggNjFiZTMxOTIxZDA4MjUz
OGVlNTk3N2ZiYzY5OTY1MGYxMDRmNjg0Yi4uNjA1Y2M0ODYyNWUwNDViNmJlYmRhYjc2ZGU2N2Ew
Njk3MDgyYzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3Ry
aW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdP
YmplY3QuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaW5nT2JqZWN0KTsKIAotY29uc3QgQ2xh
c3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAiU3RyaW5nIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2Jq
ZWN0KSB9OwogCiBTdHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKaW5kZXggZjNiMzgzZGNiYTQy
NTNhNGFjOTI1NTg0ZDE5YmM4MDc2Yjk0YTU0YS4uMjRmMWUxNjUzOTMyOGQ4ZjlhODkyYmRkNjA5
NTRmZjUxNDBmYWZjYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdQcm90b3R5cGUuY3BwCkBAIC04NSw3ICs4NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY0l0ZXJhdG9yKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyIs
ICZTdHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0cmluZ1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBT
dHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyJfcywgJlN0cmluZ09iamVjdDo6c19p
bmZvLCAmc3RyaW5nUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RyaW5nUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFN0cmluZ0NvbnN0cnVjdG9yLmx1
dC5oCiBAYmVnaW4gc3RyaW5nUHJvdG90eXBlVGFibGUKQEAgLTE2MjEsNyArMTYyMSw3IEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSB0b0xvY2FsZUNhc2UoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgQ2FsbEZyYW1lKiBjYWxsCiAgICAgYXV0byBjb252ZXJ0Q2FzZSA9IG1vZGUgPT0gQ2Fz
ZUNvbnZlcnNpb25Nb2RlOjpMb3dlciA/IHVfc3RyVG9Mb3dlciA6IHVfc3RyVG9VcHBlcjsKICAg
ICBhdXRvIHN0YXR1cyA9IGNhbGxCdWZmZXJQcm9kdWNpbmdGdW5jdGlvbihjb252ZXJ0Q2FzZSwg
YnVmZmVyLCBTdHJpbmdWaWV3IHsgcyB9LnVwY29udmVydGVkQ2hhcmFjdGVycygpLmdldCgpLCBz
Lmxlbmd0aCgpLCBsb2NhbGUudXRmOCgpLmRhdGEoKSk7CiAgICAgaWYgKFVfRkFJTFVSRShzdGF0
dXMpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCB1X2Vycm9yTmFtZShzdGF0dXMpKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgU3RyaW5nIHsgdV9lcnJvck5hbWUoc3RhdHVzKSB9KTsKIAog
ICAgIC8vIDE4LiBSZXR1cm4gTC4KICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFs
dWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nKGJ1ZmZlcikpKSk7CkBAIC0xNzE4LDcgKzE3
MTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jU3RhcnRzV2l0
aCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVz
c2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhwcmVz
c2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUgYSBS
ZWdFeHAiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUg
YSBSZWdFeHAiX3MpOwogCiAgICAgU3RyaW5nIHNlYXJjaFN0cmluZyA9IGEwLnRvV1RGU3RyaW5n
KGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CkBAIC0xNzUyLDcgKzE3NTIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
c3RyaW5nUHJvdG9GdW5jRW5kc1dpdGgsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAog
ICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3Qs
IGEwKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUu
ZW5kc1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBl
LmVuZHNXaXRoIGNhbm5vdCBiZSBhIFJlZ0V4cCJfcyk7CiAKICAgICBTdHJpbmcgc2VhcmNoU3Ry
aW5nID0gYTAudG9XVEZTdHJpbmcoZ2xvYmFsT2JqZWN0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKQEAgLTE4MDIsNyArMTgwMiw3IEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihzdHJpbmdQcm90b0Z1bmNJbmNsdWRlcywgKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgYm9vbCBpc1JlZ3VsYXJFeHByZXNzaW9uID0gaXNSZWdF
eHAodm0sIGdsb2JhbE9iamVjdCwgYTApOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIGlmIChpc1JlZ3VsYXJFeHByZXNzaW9uKQotICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQXJndW1lbnQg
dG8gU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlcyBjYW5ub3QgYmUgYSBSZWdFeHAiKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50
IHRvIFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90IGJlIGEgUmVnRXhwIl9zKTsKIAog
ICAgIFN0cmluZyBzZWFyY2hTdHJpbmcgPSBhMC50b1dURlN0cmluZyhnbG9iYWxPYmplY3QpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAKaW5kZXggYjYwZTNjYjBlM2Jm
NTYzODczMmY4NWMwZGNiMDdjMzk2ZDNmZDY4Yi4uNzI1ODk3Y2E0ODI4YTUwNDhiNzgwMDA1ZjEy
NmM0ZmM0YzU5NzIxZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1
cmUuY3BwCkBAIC0yMzQsNyArMjM0LDcgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSwgY28KICAgICB2
YWxpZGF0ZUZsYWdzKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZTo6c19pbmZvID0g
eyAiU3RydWN0dXJlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0cnVjdHVyZSkgfTsKIAogU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBDcmVh
dGluZ0Vhcmx5Q2VsbFRhZykKICAgICA6IEpTQ2VsbChDcmVhdGluZ0Vhcmx5Q2VsbCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAppbmRleCBj
YTYwYTJmYmY5YjBlYzJmNTZkNTI5YzZlMDBmMmZlMjM0YjMyZGNhLi5iYmIwYjMxYTA4OTM2NTUx
OGRmOGYwZjhiOThjMjExZjhmOTA0ZGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZUNoYWluOjpzX2luZm8gPSB7
ICJTdHJ1Y3R1cmVDaGFpbiIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RydWN0dXJlQ2hhaW4pIH07Citjb25zdCBDbGFzc0luZm8gU3RydWN0dXJlQ2hh
aW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVD
aGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgU3RydWN0
dXJlSUQqIHZlY3RvcikKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAppbmRleCBjMjJh
YWZiODYzYmVlN2MyNTEzZWEwZWY2ZDZjYTNkZDhmZDJjM2Y0Li43MzYzN2Q4NGNkY2Q2MjY4YTc4
ZGFjM2NmMzNjMDI0MjlhMTNlZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJlUmFyZURhdGE6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZVJhcmVEYXRhIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVSYXJlRGF0YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1
Y3R1cmVSYXJlRGF0YTo6c19pbmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiX3MsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlUmFyZURhdGEp
IH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5jcHAKaW5kZXggYzNkYjE5NmZiOTM0
NmUwNmUwYzVjMWYwZmU0OWI0MWJmMGEzZjdlYi4uMDc1ODk0MTVkOTExOGRiNjVmMjVmZGUwZjU3
MmVhYTEyODZiYzk1ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2wuY3Bw
CkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
U3ltYm9sOjpzX2luZm8gPSB7ICJzeW1ib2wiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2w6OnNf
aW5mbyA9IHsgInN5bWJvbCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTeW1ib2wpIH07CiAKIFN5bWJvbDo6U3ltYm9sKFZNJiB2bSkKICAgICA6IEJh
c2Uodm0sIHZtLnN5bWJvbFN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcAppbmRleCBjNWQwMWI0NDM1YmE3
ZTFiMTk1NDcwMjkwOTk0YmYzODYzOTRiOWM4Li4wNmJmOWQ0YTY1YjVlNTRhZTkzYTVhZGM2YWVl
YWFjMTJhMjFkZmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
eW1ib2xDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3ltYm9sQ29uc3RydWN0
b3IpOwogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnN5bWJvbENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmc3ltYm9sQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTeW1ib2xDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTeW1ib2xDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIHN5bWJvbENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwCmluZGV4IDc0NzY5OGRhMThjMTAwNzMy
NzJlM2EzZjM0N2NhODk0NmI2OWEyMDUuLmM4NTdiYzQxNjcxM2Q3ODE0NmI3OGViMTI5NmM4NGRl
ZjBjMmUyZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJv
bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sT2Jq
ZWN0LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN5bWJvbE9iamVjdCk7CiAKLWNvbnN0IENsYXNz
SW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sT2JqZWN0KSB9OworY29u
c3QgQ2xhc3NJbmZvIFN5bWJvbE9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbE9iamVj
dCkgfTsKIAogU3ltYm9sT2JqZWN0OjpTeW1ib2xPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCmluZGV4IGJjZjE2MzUxNjljMDI0
NzcyNGM3MTAzOTE1NTMxYzEyMGQ4OWMzODguLjM1Y2YwMjc0NzY3M2IxYjQwYTIwNmIwZjIzY2M3
YWVmZGRmYmU1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihzeW1ib2xQcm90b0Z1bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBTeW1ib2xQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZC
YXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJTeW1ib2wiX3MsICZCYXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgU3ltYm9sUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc3ltYm9sUHJv
dG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxl
LmNwcAppbmRleCAxYzI3YWQ0OTZjY2Q3Mzc2MTBmYWEwMmExOTAzMDViNmQ1MTRkZjA2Li5iOGJm
YzcyZjI3ODBiMDMwMjY0NDYzNGUyNTkyZDhhMjc0MjZiNDMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sVGFibGU6OnNfaW5mbyA9IHsg
IlN5bWJvbFRhYmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTeW1ib2xUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZv
ID0geyAiU3ltYm9sVGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIERFRklORV9BTExPQ0FUT1JfV0lUSF9IRUFQ
X0lERU5USUZJRVIoU3ltYm9sVGFibGVFbnRyeUZhdEVudHJ5KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAppbmRleCAwNmRmMjU1
Yjk5ODdiZWZiM2Y0MWU1OTExNTZhYTUyYTFmY2JiZGQyLi4zYTUwM2M4NWQ4NzQyMjkxZjQ3YmRk
ZGM5ZmQzYWZkMWM1YzBiZTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2FsZW5kYXI6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFy
OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKIAogbmFtZXNwYWNlIFRl
bXBvcmFsQ2FsZW5kYXJJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9
IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDk3OTkzMTU2NDZkODc0NzUw
Y2IwNGJmNWVmZDM1ODM3NzcxYWE3MS4uYmU1ZDJjOGY4NTk5ZmQ1OWViNDBkYjFlNTNkYWQzZDI0
YjVkODE2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rv
ckZ1bmNGcm9tKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVu
Y3Rpb246OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmdGVtcG9yYWxDYWxlbmRhckNv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxl
bmRhckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsQ2FsZW5kYXJDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCmluZGV4IDhmYjNhNTM0Y2RlNDhhMzM0M2Y4MTI5NzY0ZjUyZWJj
OGM3YWI5MzUuLjMzNzA0YjBjOWY5M2I3YzMzNTQwMGMyZDZkODM4Njc5MzkwZGEyYjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCkBAIC00Niw3ICs0Niw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9D
VVNUT01fR0VUVEVSKHRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVHZXR0ZXJJZCk7CiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxD
YWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRh
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiX3MsICZCYXNlOjpzX2lu
Zm8sICZ0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBU
ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxDYWxlbmRhclBy
b3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbER1cmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsRHVyYXRpb24uY3BwCmluZGV4IDc3ZDk5YWEzZDBjN2ZkODM5Mzk0MTY2MmQxMjVhMWJiN2Jk
MTlhMGMuLmQ3YmVhNDA2MGNjYzVlNzlkNjc1ODUzZjQwMTA5MWQ4MGMxNDllZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCkBA
IC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBzdGF0aWMgY29uc3RleHByIGRvdWJs
ZSBuYW5vc2Vjb25kc1BlckRheSA9IDI0LjAgKiA2MCAqIDYwICogMTAwMCAqIDEwMDAgKiAxMDAw
OwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbjo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbER1cmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb246OnNf
aW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uKSB9OwogCiBUZW1wb3JhbER1cmF0aW9u
KiBUZW1wb3JhbER1cmF0aW9uOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SVNPODYwMTo6RHVyYXRpb24mJiBkdXJhdGlvbikKIHsKQEAgLTUxNSw3ICs1MTUsNyBAQCBkb3Vi
bGUgVGVtcG9yYWxEdXJhdGlvbjo6dG90YWwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSBvcHRpb25zVmFsdQogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gaW50bEdldE9wdGlv
bnNPYmplY3QoZ2xvYmFsT2JqZWN0LCBvcHRpb25zVmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIDApOwogCi0gICAgU3RyaW5nIHVuaXRTdHJpbmcgPSBpbnRsU3RyaW5nT3B0
aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dW5pdCwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgdW5pdFN0cmluZyA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT51bml0LCB7IH0sIEFT
Q0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgMCk7CiAKICAgICBhdXRvIHVuaXRUeXBlID0gdGVtcG9yYWxVbml0
VHlwZSh1bml0U3RyaW5nKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkM2NlZjEw
NTY2M2I3MzgzZmM5MzhhOGQ0NjhiOTc5NmE1OGM2MGMuLjYxOWJmMjdiOGFkM2U0OWQ3YzVkNTE1
ZTAxMmQwZDliYzg1OTYxMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyAr
NDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbER1cmF0aW9u
Q29uc3RydWN0b3JGdW5jQ29tcGFyZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1
Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiB0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcAppbmRleCAwY2I0NDJlMjkwYmY4ZmExYTJkNmRlODhmOTYxOWQ3NmIyYmFmM2M0Li4y
ODJmODhhYWQxNTgyMDY2N2RjMjY0NzkzZWQ2NDhjODVmZTcwM2IxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcApAQCAtNjIsNyArNjIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRF
Uih0ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlR2V0dGVyQmxhbmspOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlbXBvcmFsLkR1cmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZW1wb3JhbC5EdXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlv
blByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gZHVyYXRpb25Qcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5jcHAKaW5kZXggNmY2OGNmMGZmM2Nk
MmM4NTcxMzc0YWJiM2UwMmM3MTNjMjA1ZmY1MC4uNWE4NTE5ZDNjYjdhMmE3MDg0NzNmNDc5ZTI3
ZDAwYzFlMzg1ZTM3YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxJbnN0YW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbEluc3RhbnQuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50OjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsSW5zdGFudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnQ6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnQpIH07CiAKIFN0cnVjdHVyZSogVGVtcG9yYWxJbnN0
YW50OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcAppbmRleCA4NjFk
ODBjMTg4N2UyNjUwZjBjZDc3MmE3Mzc1Zjk5Y2Q2NGFlNTNmLi4zZDJiMTBmOTY5YWJhNDRmNjRh
Y2MxYzRhZWRiMTQ1OGM1MjEyZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IuY3BwCkBAIC00OCw3
ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsSW5zdGFu
dENvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3Ip
IH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiB0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlLmNwcApp
bmRleCBhNDI2YmUwNmZmZDM5NDEwNjNjMWZmMmI1MTg3Yjk5YzYxNTY1YzMzLi43MzAxYmYzMTQ3
NTNkODEwOWMxYmI1YWVmYmI2ZWE2MDdkZWM3YmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHAKQEAg
LTU1LDcgKzU1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxJ
bnN0YW50UHJvdG90eXBlR2V0dGVyRXBvY2hOYW5vc2Vjb25kcykKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiLCAmQmFzZTo6c19pbmZvLCAmaW5zdGFudFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiX3MsICZCYXNlOjpzX2luZm8sICZpbnN0YW50UHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50UHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5sdXQuaAogQGJl
Z2luIGluc3RhbnRQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwCmluZGV4IDVkYWU5OGNjNjQwZmU5MmM2OGQyYzE1MDEwZjU3NGYy
Yjc2OTRjYjkuLjNlNWY1NGQ2OWRkMjA1MjY3ZDNkZGM5ZjkzMGVmOGU1YjM1ZDJhNWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5vdy5jcHAKQEAgLTQ4LDcg
KzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVt
cG9yYWxOb3c6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLk5vdyIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9
OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2luZm8gPSB7ICJUZW1wb3JhbC5Ob3ci
X3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9OwogCiBUZW1wb3JhbE5vdzo6VGVtcG9yYWxOb3coVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcAppbmRl
eCAzY2QyZmEzNzMzYmE3MDBmYjZhZTcyZGIwOTkyMDRlMTkzODdiYTIwLi42NmI4Yjk2NWM5ZWYy
OWNlMDU1ZmUzZjkxOTVmZTRjZDJhZDMwMjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCkBAIC0xMTYsNyArMTE2LDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNf
aW5mbyA9IHsgIlRlbXBvcmFsIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsT2JqZWN0VGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlbXBvcmFsIl9zLCAmQmFzZTo6
c19pbmZvLCAmdGVtcG9yYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbE9iamVjdCkgfTsKIAogVGVtcG9yYWxPYmplY3Q6OlRlbXBvcmFsT2JqZWN0KFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBA
IC0yMzAsNyArMjMwLDcgQEAgc3RkOjpvcHRpb25hbDxUZW1wb3JhbFVuaXQ+IHRlbXBvcmFsTGFy
Z2VzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RyaW5nIGxhcmdlc3RVbml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxhcmdlc3RVbml0LCB7IH0sIG51bGxw
dHIsIG51bGxwdHIpOworICAgIFN0cmluZyBsYXJnZXN0VW5pdCA9IGludGxTdHJpbmdPcHRpb24o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYXJnZXN0VW5pdCwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVsbG9wdCk7CiAKICAgICBpZiAoIWxhcmdlc3RV
bml0KQpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0ZDo6b3B0aW9uYWw8VGVtcG9yYWxVbml0PiB0ZW1w
b3JhbFNtYWxsZXN0VW5pdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKIAotICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3RyaW5nT3B0aW9u
KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxlc3RVbml0LCB7
IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3Ry
aW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxl
c3RVbml0LCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgc3RkOjpudWxsb3B0KTsKIAogICAgIGlm
ICghc21hbGxlc3RVbml0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpbkRhdGUuY3BwCmluZGV4IGRhMmJiNzQ4MDcwN2VhNDU4OTdkZmJkN2I3ZWEy
NjE4ODZjNzdmMGYuLmJhMmNkYjgyOGM0NGU4NTE1OTZhZTM0NDkzZjYzN2I4ZDMwZmZjMDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0
ZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRlbXBvcmFsUGxhaW5EYXRlSW50ZXJu
YWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxh
aW5EYXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7
ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGUpIH07CiAKIFRlbXBvcmFsUGxhaW5EYXRlKiBUZW1w
b3JhbFBsYWluRGF0ZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIElTTzg2
MDE6OlBsYWluRGF0ZSYmIHBsYWluRGF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzllNjBmMTU3MWNhMTk2YTlmNzA5ZmE3NmYwZmFlOTNiNGJmMGQzZS4uNTRjNWM5NmZh
NWI2OWIyYjgwOTdlZjFjMjkyYWI4MWRlMjk2NGJlMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
dGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRh
dGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcAppbmRleCBjZDg4MzBiYmEyOTRlZTcz
ZWQ4ODM0YjZlYjliODY0N2I2OTNhMDI4Li5iZmVhOTA3NDlmZmY4ZmFjN2MxZWU5MDM3NjZjMzgx
NzY0NzNmMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBl
R2V0dGVyRGF5KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuUGxhaW5EYXRlIiwgJkJh
c2U6OnNfaW5mbywgJnBsYWluRGF0ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5QbGFpbkRh
dGUiX3MsICZCYXNlOjpzX2luZm8sICZwbGFpbkRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBsYWlu
RGF0ZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKaW5kZXggZjMzZjZhZmZiOTA4MGY2MDA4OGRjMTA0YTk0
NTRmMjIzYmViOTZlNS4uYWE1YTU4YzA2NzZmNDAxNDEwMTZmNDJmNTQ5NDg4YzcyMzEzOTVmZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5U
aW1lLmNwcApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2UgVGVtcG9yYWxQbGFpblRpbWVJbnRl
cm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwogfQogCi1jb25z
dCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQ
bGFpblRpbWUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZSkgfTsKIAogVGVtcG9yYWxQbGFpblRpbWUqIFRl
bXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSVNP
ODYwMTo6UGxhaW5UaW1lJiYgcGxhaW5UaW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNw
cAppbmRleCBkNjdjZmM5YTUwYTZmYmZmOTgyZjI4MDY2Y2VhNzcyYTE4YzEzMWE4Li43ZjI4YTgx
MWY5MDI4NDkwNDdlYzk5M2MwNTI0OGZjZjU2NjAyYWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVj
dG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
Tih0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWlu
VGltZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwCmluZGV4IGU0OTY3ZDRmOTQ5NThk
M2NjM2EyYjc1N2M3MDNjMWI4NDg0ZGQ1NDguLmZjODhmNzI4NDFhNmVlOTk5MTQ4NjE0NWNlYzVk
YzI4NDUyODA5YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZS5jcHAKQEAgLTU5LDcgKzU5LDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxQbGFpblRpbWVQcm90b3R5
cGVHZXR0ZXJDYWxlbmRhcik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlBsYWluVGlt
ZSIsICZCYXNlOjpzX2luZm8sICZwbGFpblRpbWVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwu
UGxhaW5UaW1lIl9zLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5UaW1lUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUubHV0LmgKIEBiZWdp
biBwbGFpblRpbWVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcAppbmRleCAxMDFhZDc2ZTc2NjY0MDc2Njk1OTA2
NWFhNWM3NGRlNjk2YWM4MWU0Li4wYzY1YzM4YjE5NGVkNjhiODk1ZjBhNTFjNDczZmMxYTBmZjZi
M2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1l
Wm9uZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lOjpzX2luZm8gPSB7ICJP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVtcG9yYWxUaW1lWm9uZSkgfTsKIAogVGVtcG9yYWxUaW1lWm9uZSogVGVtcG9yYWxU
aW1lWm9uZTo6Y3JlYXRlRnJvbUlEKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFRpbWVa
b25lSUQgaWRlbnRpZmllcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkNzUz
YzAzMWUxY2RiN2RhMjAzMmNlODgwODBhMzM5ZWM0YjQwYWYuLjQzYzdhMDYzZGQyZTM5MTE4Zjg2
ZjI0YWVlYTk5MzEyMGRkZWUyZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbFRpbWVa
b25lQ29uc3RydWN0b3JGdW5jRnJvbSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRlbXBv
cmFsVGltZVpvbmVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3Jh
bFRpbWVab25lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcAppbmRleCA2ZjU3NTU3OWUzZWFmYjYxMzkz
ZjE1MWM2YmZiYjRhM2NhY2Y3YTgxLi5iM2I0MzkzN2NiZTdjNmQzYzU0OWE1YTYzMTk5MDllYjAw
MDhhMGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bFRpbWVab25lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFRpbWVab25lUHJvdG90eXBlR2V0dGVy
SWQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpv
bmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIiwgJkJhc2U6OnNfaW5m
bywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsVGltZVpvbmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIl9z
LCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZVRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUpIH07CiAKIC8q
IFNvdXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHRlbXBv
cmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1R5cGVQcm9maWxlci5jcHAKaW5kZXggN2UxYmNlMjliYWZlZmZiY2E2NGZjNTQ1ZWE0YWI4
OGM4ZWUxZmQ2Mi4uNWZhYjFiODMwNTNjMzgyZWJhMDgyYTk0YWQ4ZTYzZDY5ZjU3NDU5NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwCkBAIC01
Myw5ICs1Myw5IEBAIHZvaWQgVHlwZVByb2ZpbGVyOjpsb2dUeXBlc0ZvclR5cGVMb2NhdGlvbihU
eXBlTG9jYXRpb24qIGxvY2F0aW9uLCBWTSYgdm0pCiAKICAgICBkYXRhTG9nKCJcdFx0IiwgbG9j
YXRpb24tPm1fZ2xvYmFsVmFyaWFibGVJRCA9PSBUeXBlUHJvZmlsZXJSZXR1cm5TdGF0ZW1lbnQg
PyAiW1JldHVybiBTdGF0ZW1lbnRdIiA6ICJbTm9ybWFsIFN0YXRlbWVudF0iLCAiXG4iKTsKIAot
ICAgIGRhdGFMb2coIlx0XHQjTG9jYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1faW5zdHJ1Y3Rpb25U
eXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIsICJcblx0XHQiKSwgIlxuIik7CisgICAg
ZGF0YUxvZygiXHRcdCNMb2NhbCNcblx0XHQiLCBsb2NhdGlvbi0+bV9pbnN0cnVjdGlvblR5cGVT
ZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIl9zLCAiXG5cdFx0Il9zKSwgIlxuIik7CiAgICAg
aWYgKGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQpCi0gICAgICAgIGRhdGFMb2coIlx0XHQjR2xv
YmFsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQtPmR1bXBUeXBlcygpLnJlcGxh
Y2UoIlxuIiwgIlxuXHRcdCIpLCAiXG4iKTsKKyAgICAgICAgZGF0YUxvZygiXHRcdCNHbG9iYWwj
XG5cdFx0IiwgbG9jYXRpb24tPm1fZ2xvYmFsVHlwZVNldC0+ZHVtcFR5cGVzKCkucmVwbGFjZSgi
XG4iX3MsICJcblx0XHQiX3MpLCAiXG4iKTsKIH0KIAogdm9pZCBUeXBlUHJvZmlsZXI6Omluc2Vy
dE5ld0xvY2F0aW9uKFR5cGVMb2NhdGlvbiogbG9jYXRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1R5cGVTZXQuY3BwCmluZGV4IGQ4OGJhMjhjM2YzMDkyNzJlM2RhMmVjNDI2Yjkz
OWVkMWU5OTUxY2YuLjczM2Y5ODEyZjE4ZThmNjE4ZTRlYTkwN2Y5MWNiMjUzZjdjMDhlY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCkBAIC0zNDgsNyArMzQ4
LDcgQEAgU3RyaW5nIFN0cnVjdHVyZVNoYXBlOjpwcm9wZXJ0eUhhc2goKQogICAgIGJ1aWxkZXIu
YXBwZW5kKCc6Jyk7CiAgICAgZm9yIChhdXRvJiBrZXkgOiBtX2ZpZWxkcykgewogICAgICAgICBT
dHJpbmcgcHJvcGVydHkgPSBrZXkuZ2V0KCk7Ci0gICAgICAgIHByb3BlcnR5LnJlcGxhY2UoIjoi
LCAiXFw6Iik7IC8vIEVuc3VyZSB0aGF0IGhhc2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsi
Zm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdyZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3Ig
YW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFjdGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KKyAg
ICAgICAgcHJvcGVydHkucmVwbGFjZSgiOiJfcywgIlxcOiJfcyk7IC8vIEVuc3VyZSB0aGF0IGhh
c2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsiZm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdy
ZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3IgYW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFj
dGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KICAgICAgICAgYnVpbGRlci5hcHBlbmQocHJvcGVy
dHkpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ViMGZlNDU1NDE3OWE1MTRiMzMyOGYzZDJkNzYy
NDRkYmE0ZWU0Zi4uMTc3ZDFlODE3Mzc4YTFjMTgyNjI1YjkwYTljODA0NzM4ZDhmMzNmNyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gV2Vha01hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcENvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2Vha01hcENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIFdlYWtNYXBDb25zdHJ1
Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBXZWFrTWFwUHJvdG90eXBlKiBwcm90b3R5cGUp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5
cGUuY3BwCmluZGV4IGI4NTZkNzYxMzViZjYxYmZhM2QzODM0YjZjZTA1M2Q3YmM0ZjZmODMuLjE0
NDRjZjZjODI1NzgyNzg3ZDliMjBlZGNlZjM2NmI1NWFiNTgyODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBBU0NJSUxpdGVyYWwgV2Vha01hcE5vbk9i
amVjdEtleUVycm9yIHsgIkF0dGVtcHRlZCB0byBzZXQgYSBub24tb2JqZWN0IGtleSBpbiBhIFdl
YWtNYXAiX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYWtNYXBQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrTWFwRGVsZXRlKTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtNYXBHZXQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZD
b25zdHJ1Y3Rvci5jcHAKaW5kZXggZmJmYWYzNWM3OGJmNmU5Njg3MWNjMGQ3NDEwMWZjZmJiMDdk
ZTk4Ni4uZjU0ZGEyNTU5YzdkZWJhYjYzMGIwYmYwMmM5NDA2NzcyMjkzYTZhYiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29u
c3RydWN0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2Vha09iamVjdFJlZkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RS
ZWZDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZkNvbnN0cnVj
dG9yKSB9OwogCiB2b2lkIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBXZWFrT2JqZWN0UmVmUHJvdG90eXBlKiBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUu
Y3BwCmluZGV4IDgzYTIwNDYwOWQ5YWQ3YmFlOGFhODhiMTIyOGMxY2I3NjQ5ZWY4MDguLjgyOTRh
YTUyMWQyYWM2YThhMTRhYmI1NmU1NjI3NTgxNmM2MTYwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCkBA
IC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vh
a09iamVjdFJlZlByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1JlZiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZlByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrT2JqZWN0UmVmUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWFrUmVmIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtSZWZEZXJlZik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCmluZGV4
IGM4ZGFhYjQ2YjAzZGIwM2UwZTdhYWFmNzEwZjkxMzQ4NDE1ZjZhYjAuLjg3NGNhOTZiN2E5ZGQx
ZGU3ZjMzZjc1NDYwNDg1Y2VmNDQ1YzQwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtTZXRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWFrU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBXZWFrU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSwgV2Vha1NldFByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNwcAppbmRleCBjMTdmZmNmMDdiNjgx
ZWM4YWFkZmM4YTE5ZmYzNzUwMDAwOGNlMGQ3Li40MmEyMmFmODAyNjg1YjI1ZjY2YmE0MDk0OWQy
MTIzOGI1ZTE5YzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQVNDSUlMaXRlcmFsIFdlYWtTZXROb25PYmplY3RWYWx1ZUVycm9yIHsgIkF0dGVtcHRl
ZCB0byBhZGQgYSBub24tb2JqZWN0IHZhbHVlIHRvIGEgV2Vha1NldCJfcyB9OwogCi1jb25zdCBD
bGFzc0luZm8gV2Vha1NldFByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1NldCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha1NldFByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrU2V0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWFrU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYWtTZXRQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKHByb3RvRnVuY1dlYWtTZXREZWxldGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04ocHJvdG9GdW5jV2Vha1NldEhhcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4
cC5jcHAKaW5kZXggODRiYzdjZjJkYmE2ZTYxZjM0ZmFlNWM0ZWRlMzNjNzczNTA0YWQxMi4uN2Qy
NmIxNmJmOWYzZmNiZDMwYWVlZmQwNmNmZGQ5OTk4NWMwMTA1NSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0UmVnRXhwLmNwcApAQCAtMTIyLDcgKzEyMiw3IEBAIHByaXZhdGU6CiB9OwogU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoR2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamVj
dCk7CiAKLWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIs
ICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNf
aW5mbyA9IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogCiBHbG9iYWxPYmpl
Y3Q6Okdsb2JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgYXJndW1lbnRzKQogICAgIDogSlNHbG9iYWxPYmplY3Qodm0sIHN0cnVjdHVy
ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93
bGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3Qu
Y3BwCmluZGV4IGFhY2Q3NWRhODdhYjkzYzJkNDBiZjdiZWM1OTE2ZDdjNjcwNjk1NzkuLjI0MmYx
MDc3ODQ0ZDQ3NjFkNDA4ODhkZWFiNGJiMWRhNzgyMTE1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uQWxsb3dsaXN0LmNwcApAQCAtNDQsNyArNDQsNyBA
QCBGdW5jdGlvbkFsbG93bGlzdDo6RnVuY3Rpb25BbGxvd2xpc3QoY29uc3QgY2hhciogZmlsZW5h
bWUpCiAgICAgaWYgKCFmKSB7CiAgICAgICAgIGlmIChlcnJubyA9PSBFTk9FTlQpIHsKICAgICAg
ICAgICAgIG1faGFzQWN0aXZlQWxsb3dsaXN0ID0gdHJ1ZTsKLSAgICAgICAgICAgIG1fZW50cmll
cy5hZGQoZmlsZW5hbWUpOworICAgICAgICAgICAgbV9lbnRyaWVzLmFkZChTdHJpbmcgeyBmaWxl
bmFtZSB9KTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBkYXRhTG9nRigiRmFpbGVkIHRv
IG9wZW4gZmlsZSAlcy4gRGlkIHlvdSBhZGQgdGhlIGZpbGUtcmVhZC1kYXRhIGVudGl0bGVtZW50
IHRvIFdlYlByb2Nlc3Muc2I/IEVycm9yIGNvZGU6ICVzXG4iLCBmaWxlbmFtZSwgc2FmZVN0cmVy
cm9yKGVycm5vKS5kYXRhKCkpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlkZXMuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcAppbmRleCA3YTNiMzc5MjRiZTU2
MDU0N2ZjMmRmZmUzMzJkM2U2NmJmOGE5NWY2Li45NTY4NmJhMTkyMGJiMGViMTI3NDA0ZjEzOTFi
YjAyZjViYjE2MDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVu
Y3Rpb25PdmVycmlkZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5j
dGlvbk92ZXJyaWRlcy5jcHAKQEAgLTEzMCw4ICsxMzAsOCBAQCBzdGF0aWMgdm9pZCBpbml0aWFs
aXplT3ZlcnJpZGVJbmZvKGNvbnN0IFNvdXJjZUNvZGUmIG9yaWdDb2RlLCBjb25zdCBTdHJpbmcm
IG5ldwogICAgIEZ1bmN0aW9uT3ZlcnJpZGVzQXNzZXJ0U2NvcGUgYXNzZXJ0U2NvcGU7CiAgICAg
U3RyaW5nIG9yaWdQcm92aWRlclN0ciA9IG9yaWdDb2RlLnByb3ZpZGVyKCktPnNvdXJjZSgpLnRv
U3RyaW5nKCk7CiAgICAgdW5zaWduZWQgb3JpZ1N0YXJ0ID0gb3JpZ0NvZGUuc3RhcnRPZmZzZXQo
KTsKLSAgICB1bnNpZ25lZCBvcmlnRnVuY3Rpb25TdGFydCA9IG9yaWdQcm92aWRlclN0ci5yZXZl
cnNlRmluZCgiZnVuY3Rpb24iLCBvcmlnU3RhcnQpOwotICAgIHVuc2lnbmVkIG9yaWdCcmFjZVN0
YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLmZpbmQoInsiLCBvcmlnU3RhcnQpOworICAgIHVuc2lnbmVk
IG9yaWdGdW5jdGlvblN0YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLnJldmVyc2VGaW5kKCJmdW5jdGlv
biJfcywgb3JpZ1N0YXJ0KTsKKyAgICB1bnNpZ25lZCBvcmlnQnJhY2VTdGFydCA9IG9yaWdQcm92
aWRlclN0ci5maW5kKCd7Jywgb3JpZ1N0YXJ0KTsKICAgICB1bnNpZ25lZCBoZWFkZXJMZW5ndGgg
PSBvcmlnQnJhY2VTdGFydCAtIG9yaWdGdW5jdGlvblN0YXJ0OwogICAgIFN0cmluZyBvcmlnSGVh
ZGVyID0gb3JpZ1Byb3ZpZGVyU3RyLnN1YnN0cmluZyhvcmlnRnVuY3Rpb25TdGFydCwgaGVhZGVy
TGVuZ3RoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9s
bGFyVk0uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9sbGFyVk0uY3BwCmlu
ZGV4IDNmYzcxMTg2YmUyM2M0Nzg2MTlmMzc4NTA2ZGU0MTJiYmQ1N2FjNjYuLmQxOWIwMTc3OWU4
MGMwYjhlMjlhMTQzNTEyZjJhYTc0NjY5ZGZlOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAKQEAgLTIwMyw3ICsyMDMsNyBAQCBwcml2YXRlOgogICAgIH0K
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNQ2FsbEZyYW1lOjpzX2luZm8gPSB7ICJD
YWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEb2xsYXJW
TUNhbGxGcmFtZTo6c19pbmZvID0geyAiQ2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07
CiAKIGNsYXNzIEVsZW1lbnRIYW5kbGVPd25lcjsKIGNsYXNzIFJvb3Q7CkBAIC0xNzgwLDMyICsx
NzgwLDMyIEBAIHZvaWQgSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1l
bnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEVsZW1lbnQpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkg
fTsKLWNvbnN0IENsYXNzSW5mbyBTaW1wbGVPYmplY3Q6OnNfaW5mbyA9IHsgIlNpbXBsZU9iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2ltcGxlT2JqZWN0KSB9OwotY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0g
eyAiSW1wdXJlR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbXB1cmVHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0
dGVyOjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1c3RvbUdldHRlcikgfTsKLWNvbnN0IENsYXNz
SW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJheSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OworY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1lbnQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSb290OjpzX2luZm8gPSB7ICJSb290Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3QpIH07Citjb25z
dCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8gPSB7ICJTaW1wbGVPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2ltcGxl
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0geyAiSW1w
dXJlR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEltcHVyZUdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXI6
OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0ZXIpIH07Citjb25zdCBDbGFzc0lu
Zm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklUTm9kZTo6c19pbmZvID0g
eyAiRE9NSklUTm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVj
a1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29u
c3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVja1N1YkNsYXNzU25pcHBldCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OwogI2Vsc2UKLWNvbnN0IENsYXNzSW5mbyBE
T01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29uc3QgQ2xh
c3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsK
ICNlbmRpZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlcjo6c19pbmZvID0geyAiRE9NSklU
R2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyTm9FZmZl
Y3RzOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJOb0VmZmVjdHMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0
cykgfTsKLWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJE
T01KSVRHZXR0ZXJDb21wbGV4IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJDb21wbGV4KSB9OwotY29uc3QgQ2xhc3NJbmZv
IERPTUpJVEdldHRlckJhc2VKU09iamVjdDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklU
R2V0dGVyOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIERPTUpJVEdldHRlck5vRWZmZWN0czo6c19pbmZvID0geyAiRE9NSklUR2V0dGVy
Tm9FZmZlY3RzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0cykgfTsKK2NvbnN0IENsYXNzSW5mbyBET01K
SVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJDb21wbGV4Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdl
dHRlckNvbXBsZXgpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0
OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0KSB9OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklURnVuY3Rp
b25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9uT2JqZWN0IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgJkRPTUpJVEZ1bmN0aW9uT2JqZWN0OjpjaGVja1N1YkNsYXNzU25pcHBldCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRGdW5jdGlvbk9iamVjdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBET01KSVRGdW5jdGlvbk9iamVjdDo6c19pbmZvID0geyAiRE9NSklURnVuY3Rpb25PYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVRGdW5jdGlvbk9iamVjdDo6Y2hl
Y2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmpl
Y3QpIH07CiAjZWxzZQotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2lu
Zm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmplY3QpIH07Citjb25z
dCBDbGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0
aW9uT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9OwogI2VuZGlmCi1jb25zdCBDbGFzc0lu
Zm8gRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVENoZWNrSlNDYXN0
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRDaGVja0pTQ2FzdE9iamVjdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
dXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q3VzdG9tR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVENoZWNrSlND
YXN0T2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRDaGVja0pTQ2FzdE9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRDaGVj
a0pTQ2FzdE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDdXN0b21HZXR0
ZXJTZXR0ZXIpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21BY2Nlc3Nvcjo6c19p
bmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3Vz
dG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0
b21BY2Nlc3NvcikgfTsKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21WYWx1ZTo6c19pbmZv
ID0geyAiU3RhdGljQ3VzdG9tVmFsdWUiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tVmFs
dWVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0b21WYWx1ZSkg
fTsKLWNvbnN0IENsYXNzSW5mbyBPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVj
dFNsb3RTdGF0dXM6OnNfaW5mbyA9IHsgIk9iamVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRD
b3JyZWN0U2xvdFN0YXR1cyIsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdERvaW5nU2lkZUVmZmVjdFB1
dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKK2NvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0
b21BY2Nlc3Nvcjo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiX3MsICZCYXNlOjpz
X2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0YXRpY0N1c3RvbUFjY2Vzc29yKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0YXRpY0N1
c3RvbVZhbHVlOjpzX2luZm8gPSB7ICJTdGF0aWNDdXN0b21WYWx1ZSJfcywgJkJhc2U6OnNfaW5m
bywgJnN0YXRpY0N1c3RvbVZhbHVlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RhdGljQ3VzdG9tVmFsdWUpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0RG9pbmdTaWRlRWZm
ZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzOjpzX2luZm8gPSB7ICJPYmplY3REb2luZ1Np
ZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMiX3MsICZCYXNlOjpzX2luZm8sICZz
dGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKIAogRWxl
bWVudEhhbmRsZU93bmVyKiBFbGVtZW50OjpoYW5kbGVPd25lcigpCiB7CkBAIC0xODk1LDcgKzE4
OTUsNyBAQCBwdWJsaWM6CiAgICAgV2FzbTo6U3RyZWFtaW5nUGFyc2VyIG1fc3RyZWFtaW5nUGFy
c2VyOwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdQYXJzZXI6OnNfaW5mbyA9
IHsgIldhc21TdHJlYW1pbmdQYXJzZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdhc21TdHJlYW1pbmdQYXJzZXIpIH07Citjb25zdCBDbGFz
c0luZm8gV2FzbVN0cmVhbWluZ1BhcnNlcjo6c19pbmZvID0geyAiV2FzbVN0cmVhbWluZ1BhcnNl
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXYXNtU3RyZWFtaW5nUGFyc2VyKSB9OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25XYXNtU3RyZWFtaW5nUGFyc2VyQWRkQnl0ZXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCiB7CkBAIC0xOTk2LDcgKzE5OTYsNyBAQCB2
b2lkIFdhc21TdHJlYW1pbmdDb21waWxlcjo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxs
LCBWaXNpdG9yJiB2aXNpdG9yKQogCiBERUZJTkVfVklTSVRfQ0hJTERSRU4oV2FzbVN0cmVhbWlu
Z0NvbXBpbGVyKTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdDb21waWxlcjo6c19p
bmZvID0geyAiV2FzbVN0cmVhbWluZ0NvbXBpbGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nQ29tcGlsZXIpIH07Citj
b25zdCBDbGFzc0luZm8gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpzX2luZm8gPSB7ICJXYXNtU3Ry
ZWFtaW5nQ29tcGlsZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ0NvbXBpbGVyKSB9OwogCiBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25XYXNtU3RyZWFtaW5nQ29tcGlsZXJBZGRCeXRlcywgKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKIHsKQEAgLTIx
NDMsNyArMjE0Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9u
UmVzZXRKSVRTaXplU3RhdGlzdGljcyk7CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uRW5zdXJlQXJyYXlTdG9yYWdlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRG9s
bGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTRG9sbGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk0pIH07CiAKIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBkb1ByaW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbEZyYW1lLCBib29sIGFkZExpbmVGZWVkKQogewpAQCAtMjczMCw3ICsyNzMw
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSGF2ZUFCYWRUaW1lLCAoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2EKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1l
bnQoMCkuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU09iamVjdCogb2JqID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgwKS5nZXRPYmplY3QoKTsKICAgICAgICAgaWYgKCFvYmopCi0gICAgICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiaGF2ZUFCYWRU
aW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiaGF2ZUFCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlm
IHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFyZ2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAg
ICB9CiAKQEAgLTI3NDksNyArMjc0OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5j
dGlvbklzSGF2aW5nQUJhZFRpbWUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAg
aWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNP
YmplY3QqIG9iaiA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkuZ2V0T2JqZWN0KCk7CiAgICAgICAg
IGlmICghb2JqKQotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgImlzSGF2aW5nQUJhZFRpbWUgZXhwZWN0cyBmaXJzdCBhcmd1bWVudCB0byBi
ZSBhbiBvYmplY3QgaWYgcHJvdmlkZWQiKTsKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJpc0hhdmluZ0FCYWRUaW1lIGV4cGVjdHMgZmly
c3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFy
Z2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAgICB9CiAKQEAgLTI3OTgsMjAgKzI3OTgsMjAg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxX
aXRoU3RhY2tTaXplLCBTVVBQUkVTU19BU0EKICNlbmRpZgogCiAgICAgaWYgKCFpc1N1cHBvcnRl
ZEJ5UGxhdGZvcm0pCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCAiTm90IHN1cHBvcnRlZCBmb3IgdGhpcyBwbGF0Zm9ybSIpOworICAgICAgICBy
ZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIk5vdCBzdXBwb3J0
ZWQgZm9yIHRoaXMgcGxhdGZvcm0iX3MpOwogCiAjaWYgRU5BQkxFKEFTU0VNQkxFUikKICAgICBp
ZiAoZ19qc2NDb25maWcuaXNQZXJtYW5lbnRseUZyb3plbigpIHx8ICFnX2pzY0NvbmZpZy5kaXNh
YmxlZEZyZWV6aW5nRm9yVGVzdGluZykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9i
YWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBmcm96ZW4iKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBm
cm96ZW4iX3MpOwogCiAgICAgaWYgKGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpIDwgMikKLSAg
ICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZh
bGlkIG51bWJlciBvZiBhcmd1bWVudHMiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMiX3Mp
OwogICAgIEpTVmFsdWUgYXJnMCA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1
ZSBhcmcxID0gY2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKICAgICBpZiAoIWFyZzAuaXNDYWxsYWJs
ZSh2bSkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Nj
b3BlLCAiYXJnMCBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOworICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzAgc2hvdWxkIGJlIGEgZnVuY3Rp
b24iX3MpOwogICAgIGlmICghYXJnMS5pc051bWJlcigpKQotICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzEgc2hvdWxkIGJlIGEgbnVtYmVy
Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3Bl
LCAiYXJnMSBzaG91bGQgYmUgYSBudW1iZXIiX3MpOwogCiAgICAgSlNGdW5jdGlvbiogZnVuY3Rp
b24gPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KGFyZzApOwogICAgIHNpemVfdCBkZXNpcmVkU3RhY2tT
aXplID0gYXJnMS5hc051bWJlcigpOwpAQCAtMjgyMSw3ICsyODIxLDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxXaXRoU3RhY2tTaXplLCBT
VVBQUkVTU19BU0EKICAgICB1aW50OF90KiBlbmQgPSBiaXR3aXNlX2Nhc3Q8dWludDhfdCo+KGJv
dW5kcy5lbmQoKSk7CiAgICAgdWludDhfdCogZGVzaXJlZFN0YXJ0ID0gZW5kICsgZGVzaXJlZFN0
YWNrU2l6ZTsKICAgICBpZiAoZGVzaXJlZFN0YXJ0ID49IGN1cnJlbnRTdGFja1Bvc2l0aW9uKQot
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIlVu
YWJsZSB0byBzZXR1cCBkZXNpcmVkIHN0YWNrIHNpemUiKTsKKyAgICAgICAgcmV0dXJuIHRocm93
Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJVbmFibGUgdG8gc2V0dXAgZGVzaXJl
ZCBzdGFjayBzaXplIl9zKTsKIAogICAgIEpTRG9sbGFyVk1IZWxwZXIgaGVscGVyKHZtKTsKIApA
QCAtMzAzNSw3ICszMDM1LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uQ3Jl
YXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9yQ29tcGlsZSwgKEpTR2xvYmEKICAgICBhdXRvIGNv
bXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwg
V2FzbTo6Q29tcGlsZXJNb2RlOjpWYWxpZGF0aW9uLCBudWxscHRyKTsKICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsKLSAgICBjYWxsKGds
b2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZb3Ugc2hvdWxkbid0
IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVm
aW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgaWYgKFVO
TElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24o
KTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6ZShnbG9iYWxPYmpl
Y3QpOwpAQCAtMzA2Miw3ICszMDYyLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0
aW9uQ3JlYXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9ySW5zdGFudGlhdGUsIChKU0cKICAgICBh
dXRvIGNvbXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgV2FzbTo6Q29tcGlsZXJNb2RlOjpGdWxsQ29tcGlsZSwgaW1wb3J0T2JqZWN0KTsKICAg
ICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsK
LSAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZ
b3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxi
YWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7
CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xl
YXJFeGNlcHRpb24oKTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6
ZShnbG9iYWxPYmplY3QpOwpAQCAtMzE3MCw3ICszMTcwLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKGZ1bmN0aW9uR2V0UHJpdmF0ZVByb3BlcnR5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamUKIAogICAgIFN5bWJvbEltcGwqIHN5bWJvbCA9IHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0
aW5OYW1lcygpLmxvb2tVcFByaXZhdGVOYW1lKHN0cik7CiAgICAgaWYgKCFzeW1ib2wpCi0gICAg
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVua25vd24gcHJp
dmF0ZSBuYW1lLiIpOworICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJVbmtub3duIHByaXZhdGUgbmFtZS4iX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5nZXQoZ2xv
YmFsT2JqZWN0LCBzeW1ib2wpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAKaW5kZXggZjZhNTliMGI3YWMyMjQxNGZjNjc2
NjRkMTdmZTY3NjAzNmIxNjliYy4uNmQ2OWE0ZGYyZTIzNzEzMDA0ZTUzMDcwMDVjZmQ4MjBlMGQy
MTIyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1NpZ2lsbENyYXNo
QW5hbHl6ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9TaWdpbGxDcmFz
aEFuYWx5emVyLmNwcApAQCAtMjc3LDcgKzI3Nyw3IEBAIGF1dG8gU2lnaWxsQ3Jhc2hBbmFseXpl
cjo6YW5hbHl6ZShTaWduYWxDb250ZXh0JiBjb250ZXh0KSAtPiBDcmFzaFNvdXJjZQogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAotICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkpOworICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkuY2hhcmFjdGVycygpKTsKIAogICAgICAgICBkdW1wQ29k
ZUJsb2NrKGNvZGVCbG9jaywgcGMpOwogICAgIH0gd2hpbGUgKGZhbHNlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwCmluZGV4IDdlM2FlN2Q4OTU4MmYyMWVl
MmQ2NzA0Y2ViN2IwZTRkZmFmZmFiYzMuLmI1NmQ3ZjRhMjEzMzQ5NjRlMmRkY2U3Nzk4ZGU0NWE1
OTM5ZDI4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3Bl
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNw
cApAQCAtNDExLDcgKzQxMSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBSZWdpc3RlcnMoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpCiAgICAgICAgICAgICBKU1ZhbHVlIHYgPSBpdC0+anNWYWx1ZSgp
OwogICAgICAgICAgICAgaW50IHJlZ2lzdGVyTnVtYmVyID0gaXQgLSBjYWxsRnJhbWUtPnJlZ2lz
dGVycygpOwogICAgICAgICAgICAgU3RyaW5nIG5hbWUgPSAoaXQgPiBlbmRPZkNhbGxlZVNhdmVz
KQotICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWciCisgICAgICAgICAgICAgICAgPyAi
Q2FsbGVlU2F2ZVJlZyJfcwogICAgICAgICAgICAgICAgIDogY29kZUJsb2NrLT5uYW1lRm9yUmVn
aXN0ZXIoVmlydHVhbFJlZ2lzdGVyKHJlZ2lzdGVyTnVtYmVyKSk7CiAgICAgICAgICAgICBkYXRh
TG9nRigiW3IlIDNkICUxNHNdICAgICAgfCAlMTBwIHwgMHglLTE2bGx4ICVzXG4iLCByZWdpc3Rl
ck51bWJlciwgbmFtZS5hc2NpaSgpLmRhdGEoKSwgaXQsIChsb25nIGxvbmcpSlNWYWx1ZTo6ZW5j
b2RlKHYpLCB2YWx1ZUFzU3RyaW5nKHYpLmRhdGEoKSk7CiAgICAgICAgICAgICAtLWl0OwpAQCAt
NTE5LDcgKzUxOSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0o
SlNDZWxsKiBjZWxsLCBQcmludFN0cmVhbSYgb3V0KQogICAgICAgICBvdXQucHJpbnQoIlxuIik7
CiAgICAgfTsKIAotICAgIG91dC5wcmludGYoIjwlcCwgJXM+XG4iLCBjZWxsLCBjZWxsLT5jbGFz
c05hbWUodm0pKTsKKyAgICBvdXQucHJpbnRmKCI8JXAsICVzPlxuIiwgY2VsbCwgY2VsbC0+Y2xh
c3NOYW1lKHZtKS5jaGFyYWN0ZXJzKCkpOwogICAgIEluZGVudGF0aW9uU2NvcGUgc2NvcGUoaW5k
ZW50YXRpb24pOwogCiAgICAgSU5ERU5UIGR1bXBTbG90KHNsb3RzLCAwLCAiaGVhZGVyIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4Y2VwdGlvblR5cGUuaAppbmRleCAy
ODVkMzUyNGJlZTJiNWQxOWYxMmI1NTM0ZWJlMzY3NTg1YjRkZTc0Li4zYWYwOGE2MWU0YTI3ODhm
YjdiODc0ZDEwMDFjYTQ5YzMxMWIzNGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21FeGNlcHRpb25UeXBlLmgKQEAgLTMyLDE4ICszMiwxOCBAQCBuYW1lc3BhY2UgSlND
IHsKIG5hbWVzcGFjZSBXYXNtIHsKIAogI2RlZmluZSBGT1JfRUFDSF9FWENFUFRJT04obWFjcm8p
IFwKLSAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFjY2VzcywgICJPdXQgb2YgYm91bmRzIG1l
bW9yeSBhY2Nlc3MiKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUYWJsZUFjY2VzcywgIk91dCBv
ZiBib3VuZHMgdGFibGUgYWNjZXNzIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzQ2FsbEluZGly
ZWN0LCAiT3V0IG9mIGJvdW5kcyBjYWxsX2luZGlyZWN0IikgXAotICAgIG1hY3JvKE51bGxUYWJs
ZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8gYSBudWxsIHRhYmxlIGVudHJ5IikgXAotICAgIG1h
Y3JvKE51bGxSZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8gYSBudWxsIHJlZmVyZW5jZSIpIFwKLSAg
ICBtYWNybyhCYWRTaWduYXR1cmUsICJjYWxsX2luZGlyZWN0IHRvIGEgc2lnbmF0dXJlIHRoYXQg
ZG9lcyBub3QgbWF0Y2giKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBi
b3VuZHMgVHJ1bmMgb3BlcmF0aW9uIikgXAotICAgIG1hY3JvKFVucmVhY2hhYmxlLCAiVW5yZWFj
aGFibGUgY29kZSBzaG91bGQgbm90IGJlIGV4ZWN1dGVkIikgXAotICAgIG1hY3JvKERpdmlzaW9u
QnlaZXJvLCAiRGl2aXNpb24gYnkgemVybyIpIFwKLSAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3cs
ICJJbnRlZ2VyIG92ZXJmbG93IikgXAotICAgIG1hY3JvKFN0YWNrT3ZlcmZsb3csICJTdGFjayBv
dmVyZmxvdyIpIFwKLSAgICBtYWNybyhGdW5jcmVmTm90V2FzbSwgIkZ1bmNyZWYgbXVzdCBiZSBh
biBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikKKyAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFj
Y2VzcywgICJPdXQgb2YgYm91bmRzIG1lbW9yeSBhY2Nlc3MiX3MpIFwKKyAgICBtYWNybyhPdXRP
ZkJvdW5kc1RhYmxlQWNjZXNzLCAiT3V0IG9mIGJvdW5kcyB0YWJsZSBhY2Nlc3MiX3MpIFwKKyAg
ICBtYWNybyhPdXRPZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91dCBvZiBib3VuZHMgY2FsbF9pbmRp
cmVjdCJfcykgXAorICAgIG1hY3JvKE51bGxUYWJsZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8g
YSBudWxsIHRhYmxlIGVudHJ5Il9zKSBcCisgICAgbWFjcm8oTnVsbFJlZmVyZW5jZSwgICJjYWxs
X3JlZiB0byBhIG51bGwgcmVmZXJlbmNlIl9zKSBcCisgICAgbWFjcm8oQmFkU2lnbmF0dXJlLCAi
Y2FsbF9pbmRpcmVjdCB0byBhIHNpZ25hdHVyZSB0aGF0IGRvZXMgbm90IG1hdGNoIl9zKSBcCisg
ICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBib3VuZHMgVHJ1bmMgb3BlcmF0aW9u
Il9zKSBcCisgICAgbWFjcm8oVW5yZWFjaGFibGUsICJVbnJlYWNoYWJsZSBjb2RlIHNob3VsZCBu
b3QgYmUgZXhlY3V0ZWQiX3MpIFwKKyAgICBtYWNybyhEaXZpc2lvbkJ5WmVybywgIkRpdmlzaW9u
IGJ5IHplcm8iX3MpIFwKKyAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3csICJJbnRlZ2VyIG92ZXJm
bG93Il9zKSBcCisgICAgbWFjcm8oU3RhY2tPdmVyZmxvdywgIlN0YWNrIG92ZXJmbG93Il9zKSBc
CisgICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQg
d2FzbSBmdW5jdGlvbiJfcykKIAogZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3Qg
ewogI2RlZmluZSBNQUtFX0VOVU0oZW51bU5hbWUsIGVycm9yKSBlbnVtTmFtZSwKQEAgLTUxLDcg
KzUxLDcgQEAgZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3QgewogI3VuZGVmIE1B
S0VfRU5VTQogfTsKIAotQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2VGb3JF
eGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKK0FMV0FZU19JTkxJTkUgQVNDSUlMaXRl
cmFsIGVycm9yTWVzc2FnZUZvckV4Y2VwdGlvblR5cGUoRXhjZXB0aW9uVHlwZSB0eXBlKQogewog
ICAgIHN3aXRjaCAodHlwZSkgewogI2RlZmluZSBTV0lUQ0hfQ0FTRShlbnVtTmFtZSwgZXJyb3Ip
IFwKQEAgLTYxLDcgKzYxLDcgQEAgQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3Nh
Z2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKICN1bmRlZiBTV0lUQ0hfQ0FT
RQogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gIiI7CisgICAg
cmV0dXJuICIiX3M7CiB9CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpXYXNtCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKaW5kZXggYzc5ZTMzN2M3YTdhY2QxMjgyMGMyZTY5
NDAzNDRmZjRiZGQxMGE5ZS4uOTcwNjNhYWI5ZTZiN2Y1NjBmZTI4ZDU0MjA2MGM1MmI4ODQ2ZTVk
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApAQCAtODQsNyArODQs
NyBAQCBpbmxpbmUgSlNTdHJpbmcqIHR5cGVUb1N0cmluZyhWTSYgdm0sIFR5cGVLaW5kIHR5cGUp
CiB7CiAjZGVmaW5lIFRZUEVfQ0FTRShtYWNyb05hbWUsIHZhbHVlLCBiMywgaW5jLCB3YXNtTmFt
ZSkgXAogICAgIGNhc2UgVHlwZUtpbmQ6Om1hY3JvTmFtZTogXAotICAgICAgICByZXR1cm4ganNO
b250cml2aWFsU3RyaW5nKHZtLCAjd2FzbU5hbWUpOyBcCisgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sICN3YXNtTmFtZSIiX3MpOyBcCiAKICAgICBzd2l0Y2ggKHR5cGUpIHsK
ICAgICAgICAgRk9SX0VBQ0hfV0FTTV9UWVBFKFRZUEVfQ0FTRSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKaW5kZXggY2IzZDE2M2JiZTA4YjZhNTc1OGNkOWRjMjhk
ZTA2OGExZGU1NmYxNy4uZWQxYjBmN2QxNjkyMmU2MmE2ZTc3NmYxOGVhMGE5NWI0M2UzYTQzZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKQEAgLTkwLDcgKzkw
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICBpZiAoaXNFeHRlcm5yZWYobV90eXBlKSkgewogICAgICAg
ICAgICAgUkVMRUFTRV9BU1NFUlQobV9vd25lcik7CiAgICAgICAgICAgICBpZiAoIW1fdHlwZS5p
c051bGxhYmxlKCkgJiYgYXJndW1lbnQuaXNOdWxsKCkpIHsKLSAgICAgICAgICAgICAgICB0aHJv
d0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3Qg
YmUgbnVsbCIpKTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3Qs
IHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0
LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIG1fdmFsdWUubV9leHRl
cm5yZWYuc2V0KG1fb3duZXItPnZtKCksIG1fb3duZXIsIGFyZ3VtZW50KTsKQEAgLTk5LDcgKzk5
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogd2FzbUZ1bmN0
aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKiB3
YXNtV3JhcHBlckZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3Nl
bWJseUhvc3RGdW5jdGlvbih2bSwgYXJndW1lbnQsIHdhc21GdW5jdGlvbiwgd2FzbVdyYXBwZXJG
dW5jdGlvbikgJiYgKCFtX3R5cGUuaXNOdWxsYWJsZSgpIHx8ICFhcmd1bWVudC5pc051bGwoKSkp
IHsKLSAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikpOworICAgICAgICAgICAg
ICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJB
c3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFu
IGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgICAgICB9CiAKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIEdsb2JhbDo6c2V0KEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYXJndW1lbnQpCiAgICAgICAgICAgICAg
ICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggcGFyYW1JbmRleCA9IG1fdHlwZS5pbmRleDsKICAgICAg
ICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBhcmdJbmRleCA9IHdhc21GdW5jdGlvbiA/
IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNp
Z25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAgaWYgKHBhcmFtSW5kZXggIT0gYXJnSW5k
ZXgpIHsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwg
dm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSIp
KTsKKyAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0s
ICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykp
OwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50
UGxhbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApp
bmRleCBhZTE1ZjhkZWRmYmUwMTk5MDE3OWNlZDNjMWQyZjA3NDBkYmM4ZDY2Li5jMjQ5ZjkyY2Yw
NWJiMGM4YzM0NGVhNWFiNzFiMzk2ZjFhZGI5NGMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgTExJbnRQ
bGFuOjpkaWRDb21wbGV0ZUNvbXBpbGF0aW9uKCkKIAogICAgICAgICBMaW5rQnVmZmVyIGxpbmtC
dWZmZXIoaml0LCBHTE9CQUxfVEhVTktfSUQsIExpbmtCdWZmZXI6OlByb2ZpbGU6Oldhc20sIEpJ
VENvbXBpbGF0aW9uQ2FuRmFpbCk7CiAgICAgICAgIGlmIChVTkxJS0VMWShsaW5rQnVmZmVyLmRp
ZEZhaWxUb0FsbG9jYXRlKCkpKSB7Ci0gICAgICAgICAgICBCYXNlOjpmYWlsKCJPdXQgb2YgZXhl
Y3V0YWJsZSBtZW1vcnkgaW4gV2FzbSBMTEludCBlbnRyeSB0aHVua3MiKTsKKyAgICAgICAgICAg
IEJhc2U6OmZhaWwoIk91dCBvZiBleGVjdXRhYmxlIG1lbW9yeSBpbiBXYXNtIExMSW50IGVudHJ5
IHRodW5rcyJfcyk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwCmluZGV4IDEwODA0NDlkYTYz
OGY2NzZlMDdlY2EwZjU4MmUzYjlmYzdiNWU2OTEuLmJiNDZmOGE4MTMyZDFlZDU1ZTFjMzRhZjZh
MDBmMGQyNDlmZjBmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtT3Bl
cmF0aW9ucy5jcHAKQEAgLTUzNywxMiArNTM3LDEyIEBAIEpTQ19ERUZJTkVfSklUX09QRVJBVElP
TihvcGVyYXRpb25JdGVyYXRlUmVzdWx0cywgdm9pZCwgKENhbGxGcmFtZSogY2FsbEZyYW1lLCBJ
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIGlmIChidWZm
ZXIuaGFzT3ZlcmZsb3dlZCgpKSB7Ci0gICAgICAgIHRocm93T3V0T2ZNZW1vcnlFcnJvcihnbG9i
YWxPYmplY3QsIHNjb3BlLCAiSlMgcmVzdWx0cyB0byBXYXNtIGFyZSB0b28gbGFyZ2UiKTsKKyAg
ICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJKUyByZXN1
bHRzIHRvIFdhc20gYXJlIHRvbyBsYXJnZSJfcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
ICAgICBpZiAoaXRlcmF0aW9uQ291bnQgIT0gc2lnbmF0dXJlLT5yZXR1cm5Db3VudCgpKSB7Ci0g
ICAgICAgIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkluY29ycmVjdCBu
dW1iZXIgb2YgdmFsdWVzIHJldHVybmVkIHRvIFdhc20gZnJvbSBKUyIpOworICAgICAgICB0aHJv
d1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbmNvcnJlY3QgbnVtYmVyIG9mIHZh
bHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMiX3MpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlD
Q2FsbGVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxs
ZWUuY3BwCmluZGV4IGI1MDVkZjA1YmM2NmRkZDhiM2RmYWY3ZjFlNzZjN2RlNzQ3ZmUzYjMuLmM5
ODNlYjY0OTdiYjUwZTk4MDBiOTU0NGE3NjUwOWU4NGNhNTYzZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNUb1dhc21JQ0Nh
bGxlZTo6c19pbmZvID0geyAiSlNUb1dhc21JQ0NhbGxlZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUb1dhc21JQ0NhbGxlZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1RvV2FzbUlDQ2FsbGVlOjpzX2luZm8gPSB7ICJKU1RvV2FzbUlDQ2Fs
bGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVG9XYXNtSUNDYWxsZWUpIH07CiAKIEpTVG9XYXNtSUNDYWxsZWUqIEpTVG9XYXNtSUND
YWxsZWU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFdlYkFz
c2VtYmx5RnVuY3Rpb24qIGZ1bmN0aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNwcAppbmRleCA4MmQ2MzE5YzYxNjM1YjU3ZjY0NDgzODk0
OTI2MDQ3Y2IzODMzZmM4Li5jNTQxYjU5NDY2NjhlZGQwOGFhYjhkMzVmYzM4ODViNDVmYzVmZjY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNw
cApAQCAtNzMsNyArNzMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJB
c3NlbWJseVZhbGlkYXRlRnVuYyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkiLCAmQmFzZTo6c19pbmZv
LCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHk6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5Il9zLCAmQmFzZTo6c19pbmZvLCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpT
V2ViQXNzZW1ibHkubHV0LmgKIEBiZWdpbiB3ZWJBc3NlbWJseVRhYmxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3Bw
CmluZGV4IGRlNDE0MTkwNzM5ZDBjODI4ZmUwYjY3N2IxOTc1MWM2ZDg3NmYzMjEuLjAyZjhiYjBk
OGNjNWQ4NDZhYWFlMGQxOTFiM2EzNTAxNDI4NWNlYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCkBAIC0z
Nyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJB
c3NlbWJseUV4Y2VwdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5RXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlFeGNlcHRp
b246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5RXhjZXB0
aW9uKSB9OwogCiBKU1dlYkFzc2VtYmx5RXhjZXB0aW9uOjpKU1dlYkFzc2VtYmx5RXhjZXB0aW9u
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnLCBGaXhl
ZFZlY3Rvcjx1aW50NjRfdD4mJiBwYXlsb2FkKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUds
b2JhbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xv
YmFsLmNwcAppbmRleCA5NzkwODkxMzM4YjQ0OTBjMmE0MDQxN2U2YzFmOWI1ZGY5Nzc5M2NlLi5i
MzNkODg1MTFlM2IxYjA4ZTIyODMxYTRmMDAyMmI3YTE1M2JlMjk1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcApAQCAt
MzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2Vi
QXNzZW1ibHlHbG9iYWw6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJs
eUdsb2JhbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5R2xvYmFsOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUdsb2JhbCkgfTsKIAogSlNXZWJB
c3NlbWJseUdsb2JhbCogSlNXZWJBc3NlbWJseUdsb2JhbDo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNt
OjpHbG9iYWw+JiYgZ2xvYmFsKQogewpAQCAtOTQsMjIgKzk0LDIyIEBAIEpTT2JqZWN0KiBKU1dl
YkFzc2VtYmx5R2xvYmFsOjp0eXBlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAg
SlNTdHJpbmcqIHZhbHVlU3RyaW5nID0gbnVsbHB0cjsKICAgICBzd2l0Y2ggKHZhbHVlVHlwZS5r
aW5kKSB7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6STMyOgotICAgICAgICB2YWx1ZVN0cmlu
ZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiIpOworICAgICAgICB2YWx1ZVN0cmluZyA9
IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgV2FzbTo6VHlwZUtpbmQ6Okk2NDoKLSAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZp
YWxTdHJpbmcodm0sICJpNjQiKTsKKyAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxT
dHJpbmcodm0sICJpNjQiX3MpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFdhc206OlR5cGVL
aW5kOjpGMzI6Ci0gICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAi
ZjMyIik7CisgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZjMy
Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6RjY0OgotICAg
ICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCIpOworICAgICAg
ICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCJfcyk7CiAgICAgICAg
IGJyZWFrOwogICAgIGRlZmF1bHQ6IHsKICAgICAgICAgaWYgKFdhc206OmlzRnVuY3JlZih2YWx1
ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0s
ICJhbnlmdW5jIik7CisgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmlu
Zyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBlbHNlIGlmIChXYXNtOjppc0V4dGVybnJlZih2
YWx1ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmco
dm0sICJleHRlcm5yZWYiKTsKKyAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFs
U3RyaW5nKHZtLCAiZXh0ZXJucmVmIl9zKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVscGVycy5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMuaAppbmRleCA3YzU0ZDM0MGUz
NjdkNzQ2ZTAyMTgyMWVlMGJlMTEyMGIyNmMyYTE0Li44N2U1MGI0NTM1ZmU0NTEzYzgyZGJhZDdm
MTMzZjIwZmRlODAwMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9KU1dlYkFzc2VtYmx5SGVscGVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgKQEAgLTE5MSwxNyArMTkxLDE3IEBAIEFMV0FZU19J
TkxJTkUgdWludDY0X3QgZnJvbUpTVmFsdWUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgV2FzbTo6VHlwCiAgICAgZGVmYXVsdDogewogICAgICAgICBpZiAoV2FzbTo6aXNFeHRl
cm5yZWYodHlwZSkpIHsKICAgICAgICAgICAgIGlmICghdHlwZS5pc051bGxhYmxlKCkgJiYgdmFs
dWUuaXNOdWxsKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xv
YmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxP
YmplY3QsIHZtLCAiTm9uLW51bGwgRXh0ZXJucmVmIGNhbm5vdCBiZSBudWxsIikpOworICAgICAg
ICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNy
ZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxs
IEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICB9IGVsc2UgaWYgKFdhc206
OmlzRnVuY3JlZih0eXBlKSB8fCBpc1JlZldpdGhUeXBlSW5kZXgodHlwZSkpIHsKICAgICAgICAg
ICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAg
ICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2FzbVdyYXBwZXJGdW5jdGlvbiA9IG51
bGxwdHI7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVuY3Rpb24odm0sIHZh
bHVlLCB3YXNtRnVuY3Rpb24sIHdhc21XcmFwcGVyRnVuY3Rpb24pICYmICghdHlwZS5pc051bGxh
YmxlKCkgfHwgIXZhbHVlLmlzTnVsbCgpKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dW
TUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2Fz
bSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJf
cykpOwogICAgICAgICAgICAgaWYgKGlzUmVmV2l0aFR5cGVJbmRleCh0eXBlKSAmJiAhdmFsdWUu
aXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBwYXJhbUlu
ZGV4ID0gdHlwZS5pbmRleDsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBh
cmdJbmRleCA9IHdhc21GdW5jdGlvbiA/IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6
IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAg
aWYgKHBhcmFtSW5kZXggIT0gYXJnSW5kZXgpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0
aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkFyZ3VtZW50IGZ1bmN0aW9uIGRpZCBub3Qg
bWF0Y2ggdGhlIHJlZmVyZW5jZSB0eXBlIikpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5
UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90
IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykpOwogICAgICAgICAgICAgfQogICAgICAgICB9
IGVsc2UKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2Uu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNl
LmNwcAppbmRleCA0OWNkMDA3ZmI3N2RjNzcyMzRlYTRjOTUzZTVlYzczOGMwNzM5MTk2Li45YTVj
MDgzNTMzNzQ5ZjVkODVhMjg0NzVhNmFlZDZkNjYwZDFjODU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKQEAg
LTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dl
YkFzc2VtYmx5SW5zdGFuY2U6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5SW5zdGFuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUluc3RhbmNl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5SW5zdGFuY2Up
IH07CiAKIFN0cnVjdHVyZSogSlNXZWJBc3NlbWJseUluc3RhbmNlOjpjcmVhdGVTdHJ1Y3R1cmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkK
IHsKQEAgLTE1NSw3ICsxNTUsNyBAQCB2b2lkIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxp
emVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogCiBJZGVudGlm
aWVyIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlUHJpdmF0ZU1vZHVsZUtleSgpCiB7Ci0g
ICAgcmV0dXJuIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRl
c2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0YW5jZSIpKTsKKyAgICByZXR1cm4gSWRlbnRpZmll
cjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJXZWJBc3Nl
bWJseUluc3RhbmNlIl9zKSk7CiB9CiAKIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogSlNXZWJBc3Nl
bWJseUluc3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBjb25zdCBJZGVudGlmaWVyJiBtb2R1bGVLZXksIEpTV2ViQXNzZW1ibHlNb2R1bGUqIGpz
TW9kdWxlLCBKU09iamVjdCogaW1wb3J0T2JqZWN0LCBTdHJ1Y3R1cmUqIGluc3RhbmNlU3RydWN0
dXJlLCBSZWY8V2FzbTo6TW9kdWxlPiYmIG1vZHVsZSwgV2FzbTo6Q3JlYXRpb25Nb2RlIGNyZWF0
aW9uTW9kZSkKQEAgLTIwMSw3ICsyMDEsNyBAQCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIEpTV2Vi
QXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqCiAgICAg
ICAgICAgICBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6SW1wb3J0RW50cnlUeXBlOjpTaW5nbGUs
CiAgICAgICAgICAgICBtb2R1bGVOYW1lLAogICAgICAgICAgICAgZmllbGROYW1lLAotICAgICAg
ICAgICAgSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3Jp
cHRpb24sICJXZWJBc3NlbWJseUltcG9ydE5hbWUiKSksCisgICAgICAgICAgICBJZGVudGlmaWVy
Ojpmcm9tVWlkKFByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIldlYkFzc2Vt
Ymx5SW1wb3J0TmFtZSJfcykpLAogICAgICAgICB9KTsKICAgICB9CiAgICAgQVNTRVJUKG1vZHVs
ZVJlY29yZC0+aW1wb3J0RW50cmllcygpLnNpemUoKSA9PSBtb2R1bGVJbmZvcm1hdGlvbi5pbXBv
cnRzLnNpemUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5TWVtb3J5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pT
V2ViQXNzZW1ibHlNZW1vcnkuY3BwCmluZGV4IDM1ZWRlNDE0OTI2ZDYxOTg1OWQyZTg1OGI5Yzhh
NGYyOTkxYWY2MjkuLmY0YTQwMjM2ODY3N2MwNzI5OGQyN2U5NTg3NDgwNTU1OGE0ZjAzYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNZW1v
cnkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlN
ZW1vcnkuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNXZWJBc3NlbWJseU1lbW9yeTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTWVt
b3J5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dlYkFzc2VtYmx5TWVtb3J5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlN
ZW1vcnk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TWVtb3J5
KSB9OwogCiBKU1dlYkFzc2VtYmx5TWVtb3J5KiBKU1dlYkFzc2VtYmx5TWVtb3J5Ojp0cnlDcmVh
dGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlNb2R1bGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseU1vZHVsZS5jcHAKaW5kZXggMGYwYjljYzVhNTJmMGVjNDhjNmY3Y2YzNTFhNzU2N2Y2
YTFjNDIyZi4uYmM0NGExMmE2ZTAwMzczMzYyODcwYzMzNzg4MWQzYTlmMmUxMGI5OCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVs
ZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYkFzc2VtYmx5TW9kdWxlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2ViQXNzZW1ibHlNb2R1bGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseU1vZHVs
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlNb2R1bGUpIH07
CiAKIEpTV2ViQXNzZW1ibHlNb2R1bGUqIEpTV2ViQXNzZW1ibHlNb2R1bGU6OmNyZWF0ZVN0dWIo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgV2FzbTo6TW9kdWxlOjpWYWxpZGF0aW9uUmVzdWx0JiYgcmVzdWx0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAKaW5k
ZXggYzAyMDZlNGQ1Y2Q5N2ExZDIxYThhMmZjZmQxZmY1NzRhZGIxYzMwMC4uMjJkNTIwZGEyMDUz
ODdmN2RkNDVhMDM0ZWNiNzI1MDMzYmY3ZTFmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFibGUuY3BwCkBAIC0zNCw3ICszNCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseVRhYmxl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlUYWJsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHku
VGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OwogCiBKU1dlYkFzc2VtYmx5VGFibGUqIEpTV2Vi
QXNzZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNtOjpUYWJsZT4mJiB0YWJsZSkKIHsK
QEAgLTEyNywxMCArMTI3LDEwIEBAIEpTT2JqZWN0KiBKU1dlYkFzc2VtYmx5VGFibGU6OnR5cGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBKU1N0cmluZyogZWxlbWVudFN0cmlu
ZyA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChlbGVtZW50KSB7CiAgICAgY2FzZSBXYXNtOjpUYWJs
ZUVsZW1lbnRUeXBlOjpGdW5jcmVmOgotICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250cml2
aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyIpOworICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250
cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
V2FzbTo6VGFibGVFbGVtZW50VHlwZTo6RXh0ZXJucmVmOgotICAgICAgICBlbGVtZW50U3RyaW5n
ID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIik7CisgICAgICAgIGVsZW1lbnRT
dHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJleHRlcm5yZWYiX3MpOwogICAgICAgICBi
cmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJs
eVRhZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFn
LmNwcAppbmRleCA2OTQxZmM0Y2I1M2IyMzU1Y2FjNzA1Y2RjNWQxZGZiNmJmMjdiNGE1Li5iZGRj
MTQ5Y2YwYmY0MTVlMTk0YWQ2OTI0ZDU0YzM4N2QzOTU1ZWY1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcApAQCAtMzUsNyArMzUs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlU
YWc6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhZykgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFnOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWci
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNXZWJBc3NlbWJseVRhZykgfTsKIAogSlNXZWJBc3NlbWJseVRhZyogSlNXZWJBc3NlbWJseVRh
Zzo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA4YmI2ZTU0YzJiNWEwMjJjZmI4MjRmNjZhY2U1ODBh
MmQyMTI4ZWJkLi45MDZkYjdkNjM4YmE5YmYzYzM2MTlhNWRkZTA0OTk0MWQ1MDRlOGZjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVy
cm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5
Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29t
cGlsZUVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJy
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IGE1YmUwMTcyYmFlM2IwYmM5ZmExNGM2
YzcxZWI0YmZlZTMzNjZmNWIuLjkyMGI5MmI0MzJhZWIyNmQ2OWFmMjcwNTQzYzdmNTFiOWY2NmE1
ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUNvbXBp
bGVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yIiwg
JkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkNvbXBpbGVFcnJvciJfcywgJkJhc2U6OnNfaW5mbywg
JnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUubHV0LmgKICBAYmVnaW4g
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvcgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNv
bnN0cnVjdG9yLmNwcAppbmRleCAzN2E2ZmEwYmQ2ZmE0NTg3NTI0OGM4MzUwMDcxYTZlNjQyZmYz
MjM5Li5mNGIxZTIzZjljYjk4YjI1MDgxYTY1MDBlMTAzMjQzMTMyOWU0YjdkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVX
ZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
RXhjZXB0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlFeGNl
cHRpb24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1i
bHlFeGNlcHRpb24pOwpAQCAtNTgsNyArNTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y29uc3RydWN0SlNXZWJBc3NlbWJseUV4Y2VwdGlvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQog
CiAgICAgYXV0byB0YWcgPSBqc0R5bmFtaWNDYXN0PEpTV2ViQXNzZW1ibHlUYWcqPih2bSwgdGFn
VmFsdWUpOwogICAgIGlmICghdGFnKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNvbnN0cnVjdG9yIGV4
cGVjdHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgV2ViQXNzZW1ibHkuVGFnIik7CisgICAg
ICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3Nl
bWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0cyB0aGUgZmlyc3QgYXJndW1lbnQgdG8g
YmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgdmFs
dWVzOwogICAgIGZvckVhY2hJbkl0ZXJhYmxlKGdsb2JhbE9iamVjdCwgdGFnUGFyYW1ldGVycywg
WyZdIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBuZXh0VmFsdWUpIHsKQEAgLTY3LDcg
KzY3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlF
eGNlcHRpb24sIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCB7IH0pOwogCiAgICAgaWYgKHZhbHVlcy5zaXplKCkgIT0gdGFnLT5zaWduYXR1cmUo
KS5hcmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0
cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2ViQXNzZW1ibHkuVGFnIHRvIG1hdGNoIHRo
ZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiBjb25zdHJ1Y3Rv
ciBleHBlY3RzIHRoZSBudW1iZXIgb2YgcGFyZW1ldGVycyBpbiBXZWJBc3NlbWJseS5UYWcgdG8g
bWF0Y2ggdGhlIHRhZ3MgcGFyYW1ldGVyIGNvdW50LiJfcyk7CiAKICAgICAvLyBBbnkgR0MnZCB2
YWx1ZXMgaW4gaGVyZSB3aWxsIGJlIG1hcmtlZCBieSB0aGUgTWFya2VkQXJ1Z2VtZW50QnVmZmVy
IHVudGlsIHN0b3JlZCBpbiB0aGUgRXhjZXB0aW9uLgogICAgIEZpeGVkVmVjdG9yPHVpbnQ2NF90
PiBwYXlsb2FkKHZhbHVlcy5zaXplKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwCmlu
ZGV4IDczMTExNTY3MDVjZjJhZmIwMmI4ODUwZGVkMTQxN2MwZWQwYjA5OGIuLjdlMWVmZDY3ZGRh
ODAwYjY3N2FmZTY2ZDYzY2E0ZjU0YTM2MWZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlw
ZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
d2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJcyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhj
ZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlKSB9Owog
CiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmx1dC5oCiAgQGJl
Z2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlFeGNlcHRpb24KQEAgLTE0Myw3ICsxNDMsNyBA
QCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJ
cywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgSlNXZWJBc3NlbWJseVRhZyogdGFnID0g
Z2V0VGFnKHZtLCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKTsKICAgICBpZiAoIXRhZykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBXZWJBc3Nl
bWJseS5UYWciKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50
IG11c3QgYmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJO
KHRocm93U2NvcGUsIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xlYW4oanNFeGNlcHRpb24tPnRhZygp
ID09IHRhZy0+dGFnKCkpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCmluZGV4IGM3ODczNzNmN2M5MmRhYmY0ZDQx
MDNjYWI3ZGNlODNmOGEzMDJkODMuLjg4OTEyMDdkYzEyMDNiNTE5MTM2NDE1ZmQ0MDM4YzVmNzNi
OTBjOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5RnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwCkBAIC01NCw3ICs1NCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxX
ZWJBc3NlbWJseUZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwCmluZGV4IGI1MzA2YjFmYzM4
YmZhMjczMWU5MjJiOTM3Zjc1OGQyOTAxMDYyMWYuLmE5NGJjNDMzYTM3ZTQzYTY3OWQ1OGU1MDZk
NWI5ZWY1NTJhYWQzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0aW9uQmFz
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RnVuY3Rpb25C
YXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RnVuY3Rpb25CYXNlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSkgfTsK
IAogV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2U6OldlYkFzc2VtYmx5RnVuY3Rpb25CYXNlKFZNJiB2
bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb24g
aW1wb3J0YWJsZUZ1bmN0aW9uKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCmluZGV4IDBiOTYzMWVh
NTQ2NTQ1Zjc2YTMyZTg3MmQzOTc4ZTBmNThjODA4ZWMuLjQ5ZWU4YjQ2MTA3MDczYjhhYzNlZDhl
NjBjYWM1MmY2YWExZWUzZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCkBAIC0zOSw3
ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFdlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2Vt
Ymx5R2xvYmFsKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFz
c2VtYmx5R2xvYmFsKTsKQEAgLTE0Miw3ICsxNDIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oY29uc3RydWN0SlNXZWJBc3NlbWJseUdsb2JhbCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YgogICAgICAgICAgICAgaWYgKGFyZ3VtZW50LmlzVW5kZWZpbmVkKCkpCiAgICAgICAgICAgICAg
ICAgYXJndW1lbnQgPSBkZWZhdWx0VmFsdWVGb3JSZWZlcmVuY2VUeXBlKHR5cGUpOwogICAgICAg
ICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9zdEZ1bmN0aW9uKHZtLCBhcmd1bWVudCkgJiYgIWFy
Z3VtZW50LmlzTnVsbCgpKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFs
T2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIp
KTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIl9zKSk7CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIHsgfTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGluaXRpYWxWYWx1
ZSA9IEpTVmFsdWU6OmVuY29kZShhcmd1bWVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAKaW5k
ZXggMThhNGQxZjkxZGZmZTRkNDg1YmM2N2M5OTExYmI4MDRkMjM5Y2RhMS4uYTViZGY5YjYzNjAw
NThlMjE0NWZjMGEyOTdlNjFiODJlZmRjYjk3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlLmNwcApA
QCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3Nl
bWJseUdsb2JhbFByb3RvRnVuY1R5cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eS5HbG9iYWwiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlR2xvYmFsV2ViQXNzZW1ibHlHbG9i
YWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGU6OnNfaW5m
byA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZUds
b2JhbFdlYkFzc2VtYmx5R2xvYmFsLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5R2xvYmFsUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5R2xv
YmFsUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZUdsb2JhbFdlYkFzc2VtYmx5R2xv
YmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUluc3RhbmNlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAppbmRleCA3NTIzMzMzMzJmZmY2Njg3
MGNkYTk1OTNlYWVjNzE0OTExMzVlZDRlLi5lMDBjNTg3YzEwM2IzM2E4NzhjNzNhMDZjNGQ0Y2Y2
OTU2MTI2MjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUlu
c3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
JmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2Us
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dl
YkFzc2VtYmx5SW5zdGFuY2UpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlJbnN0YW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCmluZGV4
IDY5Mzg4OTE1YTdmMDY0ZDRlMmIyNDEwOWQwOTQ4OGZlYzJlOTljNjkuLmFlNGI5MzFlNmNjNmE4
MjM2ZjczNDZiY2FlOWMyMzRlZDA3MTc0NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHdlYkFz
c2VtYmx5SW5zdGFuY2VQcm90b0dldHRlckV4cG9ydHMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2Vi
QXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eUluc3RhbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFu
Y2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIl9zLCAmQmFzZTo6
c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggODMwMzgxNDcxYmZhZGRjOGIzMzRiYmYxNmE1NWE1MGM3NzY3ZmFkYi4uNjQx
ZmE2MGMyM2FjY2EyODA5NzYxYzI3NGUyYjE4M2JlMTI1NGM3YyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJy
b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1i
bHlMaW5rRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlMaW5r
RXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TGlua0Vycm9yKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TGlua0Vy
cm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCAzOGQ4YWNhZjFlYmNhOGQz
MGVjZjgwOGQwODg3YjJmYjYyM2U2ZTJiLi40N2RlN2M1OTBhYjBiNDNiNmEzNjNkNWVhZDgzNjdh
ZDRkNTMzYTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5cGUuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlMaW5r
RXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkxpbmtFcnJvciIsICZCYXNl
OjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWJBc3NlbWJseS5MaW5rRXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TGlu
a0Vycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlM
aW5rRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzI4MjhhYzY3OWFjOWEw
M2I2OTkwMDdhZTIyMTUwZjY1MmRlMGZlMi4uNmU5NDdiNjRhNDEzNmQzNmE0ZDE1MzkxZmQyODE4
NDAzNjhiZjRmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1lbW9y
eUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25z
dHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1vcnksIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5
KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TWVt
b3J5KTsKQEAgLTc5LDcgKzc5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVj
dEpTV2ViQXNzZW1ibHlNZW1vcnksIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2IKICAgICAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAg
ICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1Vu
ZGVmaW5lZCgpKSB7CiAgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVk
LgotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlv
bnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3NlbWJseS5N
ZW1vcnkgJ2luaXRpYWwnIGFuZCAnbWluaW11bScgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGF0IHRo
ZSBzYW1lIHRpbWUiX3MpOwogICAgICAgICB9CiAgICAgICAgIGlmICghaW5pdFNpemVWYWx1ZS5p
c1VuZGVmaW5lZCgpKQogICAgICAgICAgICAgbWluU2l6ZVZhbHVlID0gaW5pdFNpemVWYWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVt
b3J5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlLmNwcAppbmRleCA3ZWNjYzNlMDhmY2Y5NDRkYTcwNWEzYTQzOWZh
ZDM1OGQzZjhiMzlhLi5hNzI2ZWVmMDIyYWI3NmE0OGZiYmE3MzBlNDk3YTY0MjQwMDc4ZWVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9y
eVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5TWVtb3J5UHJvdG9GdW5jVHlwZSk7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSIsICZCYXNlOjpzX2luZm8sICZwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcHJvdG90
eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAppbmRl
eCBkMzE3NTY1MGYzZDMzYjQxMThkMzRkNzg0NDhmYjE0MjZiN2I1ZTY5Li4xMWFjMTZhNzE5MDRj
NzUzZDkyNDhjYWRhOWI4M2RjYzUwZGEzNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNw
cApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RKU1dlYkFzc2VtYmx5TW9kdWxlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3Nl
bWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TW9kdWxlQ29uc3Ry
dWN0b3IubHV0LmgKICBAYmVnaW4gY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TW9kdWxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZS5jcHAKaW5kZXggYjA4OWU2NmJkZWM4ZTg4NmIyZWE2MjMxZjJmOTU0
NjMyZmU3NjMwMS4uOTZjZWI1ZjNmN2U3MTgxYTA1MmQyNmE3MzNlMDBiOTM1ZTJkY2EyMiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TW9kdWxlUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVX
ZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZv
LCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBX
ZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TW9kdWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAKaW5kZXggN2ZhODFlNzk3MzJiMjI1NTYz
MmE3NDhmNjkyZWJhYWI5ODNkNWY3Yi4uMjVlMDg5ZmEyMDcxYjNmNDdmNDU5ZWM2MzY4MThlYmRi
MTEzYTk5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNb2R1bGVSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcApAQCAtNDQsNyArNDQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQpIH07
Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5TW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkKSB9OwogCiBTdHJ1
Y3R1cmUqIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKQEAgLTQ2
Nyw3ICs0NjcsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXplRXhw
b3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgICAgICAgICAgLy8gV2UgY3Jl
YXRlIGEgVGFibGUgd2hlbiBpdCdzIGEgVGFibGUgZGVmaW5pdGlvbi4KICAgICAgICAgICAgIFJl
ZlB0cjxXYXNtOjpUYWJsZT4gd2FzbVRhYmxlID0gV2FzbTo6VGFibGU6OnRyeUNyZWF0ZShtb2R1
bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0uaW5pdGlhbCgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJs
ZXNbaV0ubWF4aW11bSgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0udHlwZSgpKTsKICAg
ICAgICAgICAgIGlmICghd2FzbVRhYmxlKQotICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRp
b24oY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRu
J3QgY3JlYXRlIFRhYmxlIikpOworICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRpb24oY3Jl
YXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRuJ3QgY3Jl
YXRlIFRhYmxlIl9zKSk7CiAgICAgICAgICAgICBKU1dlYkFzc2VtYmx5VGFibGUqIHRhYmxlID0g
SlNXZWJBc3NlbWJseVRhYmxlOjp0cnlDcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgZ2xvYmFsT2Jq
ZWN0LT53ZWJBc3NlbWJseVRhYmxlU3RydWN0dXJlKCksIHdhc21UYWJsZS5yZWxlYXNlTm9uTnVs
bCgpKTsKICAgICAgICAgICAgIC8vIFdlIHNob3VsZCBhbHdheXMgYmUgYWJsZSB0byBhbGxvY2F0
ZSBhIEpTV2ViQXNzZW1ibHlUYWJsZSB3ZSd2ZSBkZWZpbmVkLgogICAgICAgICAgICAgLy8gSWYg
aXQncyBkZWZpbmVkIHRvIGJlIHRvbyBsYXJnZSwgd2Ugc2hvdWxkIGhhdmUgdGhyb3duIGEgdmFs
aWRhdGlvbiBlcnJvci4KQEAgLTY2MSw3ICs2NjEsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxl
UmVjb3JkOjppbml0aWFsaXplRXhwb3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgV2FzbTo6Q2FsbGVlJiBlbWJlZGRlckVudHJ5
cG9pbnRDYWxsZWUgPSBjYWxsZWVHcm91cC0+ZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7CiAgICAgICAgICAgICBX
YXNtOjpXYXNtVG9XYXNtSW1wb3J0YWJsZUZ1bmN0aW9uOjpMb2FkTG9jYXRpb24gZW50cnlwb2lu
dExvYWRMb2NhdGlvbiA9IGNhbGxlZUdyb3VwLT5lbnRyeXBvaW50TG9hZExvY2F0aW9uRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7Ci0gICAgICAgICAgICBX
ZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1
Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291bnQoKSwgInN0YXJ0IiwgbV9pbnN0YW5jZS5n
ZXQoKSwgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBlbnRyeXBvaW50TG9hZExvY2F0aW9uLCBz
aWduYXR1cmVJbmRleCk7CisgICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlv
biA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50
Q291bnQoKSwgInN0YXJ0Il9zLCBtX2luc3RhbmNlLmdldCgpLCBlbWJlZGRlckVudHJ5cG9pbnRD
YWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9jYXRpb24sIHNpZ25hdHVyZUluZGV4KTsKICAgICAgICAg
ICAgIG1fc3RhcnRGdW5jdGlvbi5zZXQodm0sIHRoaXMsIGZ1bmN0aW9uKTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDRmYTVl
MzhkMWIxYjI5YmYwY2ZlOGJmNzgyNWE3NmQ4NjZkNGQzNy4uYWE3ZDhkYTUwZDRhOGRlYmFmZmNj
NjQyMjBiZmU3MDdkNWUxYTA0ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlSdW50aW1lRXJy
b3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcAppbmRl
eCAyMGMzNTk5N2Y2YjFlODk1MjkzNTU4MWI3MjE3YWRhMWMxZTZhOTRlLi5lYjc2MTNhZmI3OGQw
ZTc5ZmViYzYxMDFlZjNlMWQ1NWE4MmE3MGNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90
b3R5cGUuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5LlJ1bnRpbWVFcnJvciIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5UnVudGltZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5SdW50aW1l
RXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5UnVudGlt
ZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5UnVudGltZUVy
cm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5UnVudGltZUVycm9y
UHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCmluZGV4IDU5ZDliNzNhMDM2YjZlZWMyMzk4
NjMzZmE1NDhjZjQ1OTZkYTVkOTUuLmRhYWYwZmYwMTY4ZjEzNjM4ZTA4ZTIyZTdkZmM1NjYxZjRj
YmQ0NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcApAQCAtNDAsNyArNDAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFibGVDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JU
YWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFi
bGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZj
b25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5VGFibGUpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseVRhYmxlKTsKQEAgLTg5LDcg
Kzg5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlU
YWJsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAgICBKU1ZhbHVlIG1pblNpemVWYWx1
ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIG1pbmltdW1JZGVudCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICBpZiAoIWluaXRpYWxTaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhbWluU2l6ZVZhbHVlLmlz
VW5kZWZpbmVkKCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0n
IG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5
LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0
aGUgc2FtZSB0aW1lIl9zKTsKIAogICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkp
CiAgICAgICAgIGluaXRpYWxTaXplVmFsdWUgPSBtaW5TaXplVmFsdWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCmluZGV4IDRjYzUzYjdhYWMzM2Y2NWE2OGJkZmUzZDFhNGIzZGRmZGI5MGYwZDguLjNm
OWQwYWIwMjE4MTI2N2FhZGNhYzI5MzdiNDM0YzhjZjc1MmY2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHdlYkFzc2VtYmx5VGFibGVQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJB
c3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZVByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRh
YmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5VGFibGVQ
cm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0Nv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCmluZGV4IDc0ZGEwNWYyNzE3NWRlMjg5MGM1OWNmYmEwNTg2YmE5
ZTVhOTAwMzguLmQ2NzFlMGM0MjNjM2NhNjUwZDBlYWRhMmI3ZDU4ZmU1NDFkN2QzNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlU
YWdDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlUYWcpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c3RydWN0SlNXZWJBc3NlbWJseVRhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAKaW5kZXggZTRhNDYwN2Ew
MDVlMDg5OWMzNzVlN2YwZGViMzNhY2EzZTVlYTFhYy4uMjliNWYyZGRiZDMzNDRkZWY2ZGY5N2Qw
YTQwOTRiNzBjZDYwZjQyZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseVRhZ1Byb3RvRnVuY1R5
cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFn
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWciLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJs
eVRhZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIl9zLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJB
c3NlbWJseVRhZ1Byb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2Vt
Ymx5VGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVdyYXBwZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKaW5kZXggMmZiNmE0ZWM3YmI2MjdhOGNiODdl
ZDhkZjRiZTQ1OTU3ZDFmYzliZi4uYjVkNzhjZTQ4ZGE3MGQyNjljM2U1OTlkYTdmMzlkY2Y5MDA2
ZmI5ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlXcmFwcGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9u
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlXcmFwcGVy
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb246
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5V3JhcHBl
ckZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsV2Vi
QXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24pOwogCkBAIC00NSw3ICs0NSw3IEBAIFdlYkFzc2VtYmx5
V3JhcHBlckZ1bmN0aW9uOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbihWTSYgdm0sIE5hdGl2
ZUV4ZWN1dGFibGUqCiBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb246OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCogZnVuY3Rpb24sIHVuc2lnbmVkIGltcG9y
dEluZGV4LCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3RhbmNlLCBXYXNtOjpTaWduYXR1cmVJ
bmRleCBzaWduYXR1cmVJbmRleCkKIHsKICAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKCFmdW5jdGlv
bi0+aW5oZXJpdHM8V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24+KHZtKSwgIldlIHNob3VsZCBu
ZXZlciBkb3VibGUgd3JhcCBhIHdyYXBwZXIgZnVuY3Rpb24uIik7Ci0gICAgU3RyaW5nIG5hbWUg
PSAiIjsKKyAgICBTdHJpbmcgbmFtZSA9IGVtcHR5U3RyaW5nKCk7CiAgICAgTmF0aXZlRXhlY3V0
YWJsZSogZXhlY3V0YWJsZSA9IHZtLmdldEhvc3RGdW5jdGlvbihjYWxsV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24sIE5vSW50cmluc2ljLCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3Rvciwg
bnVsbHB0ciwgbmFtZSk7CiAgICAgV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHJlc3VsdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uPih2
bSkpIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmpl
Y3QsIHN0cnVjdHVyZSwgV2FzbTo6V2FzbVRvV2FzbUltcG9ydGFibGVGdW5jdGlvbiB7IHNpZ25h
dHVyZUluZGV4LCAmaW5zdGFuY2UtPmluc3RhbmNlKCkuaW1wb3J0RnVuY3Rpb25JbmZvKGltcG9y
dEluZGV4KS0+d2FzbVRvRW1iZWRkZXJTdHViIH0gKTsKICAgICBjb25zdCBXYXNtOjpTaWduYXR1
cmUmIHNpZ25hdHVyZSA9IFdhc206OlNpZ25hdHVyZUluZm9ybWF0aW9uOjpnZXQoc2lnbmF0dXJl
SW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4
cHJlc3Npb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Np
b24uY3BwCmluZGV4IGVlNGY1OGJkNDIwZDM5YTE0YWQ4MWVmY2FlN2QzNzhkN2YzOGNkZDcuLjM3
OTAzNmViMzZiODZiOGI3Yjc4NjIwMmUyNmJiOGYxNjc5NDMzMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKQEAgLTY0LDcgKzY0LDcg
QEAgcHJpdmF0ZToKIAogICAgICAgICBKU0M6OllhcnI6OllhcnJQYXR0ZXJuIHBhdHRlcm4ocGF0
dGVyblN0cmluZywgZmxhZ3MsIG1fY29uc3RydWN0aW9uRXJyb3JDb2RlKTsKICAgICAgICAgaWYg
KEpTQzo6WWFycjo6aGFzRXJyb3IobV9jb25zdHJ1Y3Rpb25FcnJvckNvZGUpKSB7Ci0gICAgICAg
ICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBpbGUgZmFpbGVkIHdp
dGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0aW9uRXJyb3JDb2Rl
KSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBp
bGUgZmFpbGVkIHdpdGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0
aW9uRXJyb3JDb2RlKS5jaGFyYWN0ZXJzKCkpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckVycm9yQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2Rl
LmNwcAppbmRleCA0ZjAzZTA3NDYyNDAwYjVjMTZlNGNmOWE2OGEzMjM4OTg0MWQxMTQ5Li41OTU3
OTQ0YmU3Y2E1MGVmMGYyYWJhZWY2NzNkOWNiZDMyZmMzZWUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcApAQCAtMzAsMzggKzMwLDM4IEBACiAKIG5h
bWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgWWFyciB7CiAKLWNvbnN0IGNoYXIqIGVycm9yTWVzc2Fn
ZShFcnJvckNvZGUgZXJyb3IpCitBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKEVycm9yQ29kZSBl
cnJvcikKIHsKICNkZWZpbmUgUkVHRVhQX0VSUk9SX1BSRUZJWCAiSW52YWxpZCByZWd1bGFyIGV4
cHJlc3Npb246ICIKICAgICAvLyBUaGUgb3JkZXIgb2YgdGhpcyBhcnJheSBtdXN0IG1hdGNoIHRo
ZSBFcnJvckNvZGUgZW51bS4KLSAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZXJyb3JNZXNz
YWdlc1tdID0gewotICAgICAgICBudWxscHRyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm9FcnJvcgotICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJyZWd1bGFyIGV4cHJlc3Npb24gdG9vIGxhcmdlIiwgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiLCAgICAg
ICAgICAgICAgICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJub3RoaW5nIHRvIHJlcGVhdCIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gUXVhbnRpZmllcldpdGhvdXRBdG9tCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggIm51bWJlciB0b28gbGFyZ2UgaW4ge30gcXVhbnRpZmllciIsICAgICAgICAgICAgICAgICAg
ICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW5j
b21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIFF1
YW50aWZpZXJJbmNvbXBsZXRlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm1pc3Npbmcg
KSIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNaXNzaW5n
UGFyZW50aGVzZXMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIF0gb3Ig
fSBicmFja2V0IGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIEJyYWNrZXRVbm1hdGNo
ZWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVudGhlc2VzIiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhcmVudGhlc2VzVW5tYXRjaGVkCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIg
KD8iLCAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRoZXNlc1R5cGVJbnZhbGlkCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZ3JvdXAgc3BlY2lmaWVyIG5hbWUiLCAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1lCi0gICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIgbmFtZSIsICAgICAgICAg
ICAgICAgICAgICAgICAvLyBEdXBsaWNhdGVHcm91cE5hbWUKLSAgICAgICAgUkVHRVhQX0VSUk9S
X1BSRUZJWCAibWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBjaGFyYWN0ZXIgY2xhc3MiLCAgICAg
ICAgICAgIC8vIENoYXJhY3RlckNsYXNzVW5tYXRjaGVkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggInJhbmdlIG91dCBvZiBvcmRlciBpbiBjaGFyYWN0ZXIgY2xhc3MiLCAgICAgICAgICAg
ICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJS
T1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3RlciBjbGFzcyBmb3IgVW5pY29kZSBw
YXR0ZXJuIiwgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZUludmFsaWQKLSAgICAgICAgUkVHRVhQX0VS
Uk9SX1BSRUZJWCAiXFwgYXQgZW5kIG9mIHBhdHRlcm4iLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIEVzY2FwZVVudGVybWluYXRlZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJpbnZhbGlkIFVuaWNvZGUgXFx1IGVzY2FwZSIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1e30gZXNjYXBlIiwgICAgICAgICAgICAgIC8v
IEludmFsaWRVbmljb2RlQ29kZVBvaW50RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggImludmFsaWQgYmFja3JlZmVyZW5jZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAg
ICAvLyBJbnZhbGlkQmFja3JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIFxcazw+IG5hbWVkIGJhY2tyZWZlcmVuY2UiLCAgICAgICAgICAgICAgICAgICAgLy8g
SW52YWxpZE5hbWVkQmFja1JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgLy8g
SW52YWxpZElkZW50aXR5RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFs
aWQgb2N0YWwgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAvLyBJbnZh
bGlkT2N0YWxFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGMg
ZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250
cm9sTGV0dGVyRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJv
cGVydHkgZXhwcmVzc2lvbiIsICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5p
Y29kZVByb3BlcnR5RXhwcmVzc2lvbgotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ0b28g
bWFueSBuZXN0ZWQgZGlzanVuY3Rpb25zIiwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVG9v
TWFueURpc2p1bmN0aW9ucwotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJwYXR0ZXJuIGV4
Y2VlZHMgc3RyaW5nIGxlbmd0aCBsaW1pdHMiLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9v
TGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRSZWd1bGFyRXhwcmVz
c2lvbkZsYWdzCisgICAgc3RhdGljIGNvbnN0IEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2VzW10g
PSB7CisgICAgICAgIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vRXJyb3IKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9uIHRvbyBsYXJnZSJfcywgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCisgICAgICAgIFJFR0VYUF9FUlJP
Ul9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAg
ICAgICAgICAgIC8vIFF1YW50aWZpZXJPdXRPZk9yZGVyCisgICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggIm5vdGhpbmcgdG8gcmVwZWF0Il9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vIFF1YW50aWZpZXJXaXRob3V0QXRvbQorICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAgICAgICAgICAg
ICAgICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW5jb21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iX3MgICAgICAgICAg
Ly8gUXVhbnRpZmllckluY29tcGxldGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibWlz
c2luZyApIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g
TWlzc2luZ1BhcmVudGhlc2VzCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hl
ZCBdIG9yIH0gYnJhY2tldCBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgIC8vIEJyYWNr
ZXRVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVu
dGhlc2VzIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNV
bm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5yZWNvZ25pemVkIGNoYXJh
Y3RlciBhZnRlciAoPyJfcywgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNUeXBl
SW52YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGdyb3VwIHNwZWNp
ZmllciBuYW1lIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1l
CisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIg
bmFtZSJfcywgICAgICAgICAgICAgICAgICAgICAgIC8vIER1cGxpY2F0ZUdyb3VwTmFtZQorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJtaXNzaW5nIHRlcm1pbmF0aW5nIF0gZm9yIGNoYXJh
Y3RlciBjbGFzcyJfcywgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1VubWF0Y2hlZAorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJyYW5nZSBvdXQgb2Ygb3JkZXIgaW4gY2hhcmFjdGVy
IGNsYXNzIl9zLCAgICAgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRl
cgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3Rl
ciBjbGFzcyBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlSW52
YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJcXCBhdCBlbmQgb2YgcGF0dGVybiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFc2NhcGVVbnRlcm1pbmF0ZWQK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIFxcdSBlc2NhcGUi
X3MsICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKKyAg
ICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1
e30gZXNjYXBlIl9zLCAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVDb2RlUG9pbnRFc2Nh
cGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBiYWNrcmVmZXJlbmNlIGZv
ciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAgICAgLy8gSW52YWxpZEJhY2tyZWZlcmVuY2UK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGs8PiBuYW1lZCBiYWNrcmVm
ZXJlbmNlIl9zLCAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZE5hbWVkQmFja1JlZmVyZW5j
ZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVy
IGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAvLyBJbnZhbGlkSWRlbnRpdHlFc2NhcGUK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBvY3RhbCBlc2NhcGUgZm9yIFVu
aWNvZGUgcGF0dGVybiJfcywgICAgICAgICAgICAgLy8gSW52YWxpZE9jdGFsRXNjYXBlCisgICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxjIGVzY2FwZSBmb3IgVW5pY29kZSBw
YXR0ZXJuIl9zLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250cm9sTGV0dGVyRXNjYXBlCisg
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJvcGVydHkgZXhwcmVzc2lvbiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlUHJvcGVydHlFeHBy
ZXNzaW9uCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInRvbyBtYW55IG5lc3RlZCBkaXNq
dW5jdGlvbnMiX3MsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvb01hbnlEaXNqdW5jdGlv
bnMKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicGF0dGVybiBleGNlZWRzIHN0cmluZyBs
ZW5ndGggbGltaXRzIl9zLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9vTGFyZ2UKKyAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyJfcyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MK
ICAgICB9OwogCiAgICAgcmV0dXJuIGVycm9yTWVzc2FnZXNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGVycm9yKV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJy
b3JDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmgKaW5k
ZXggZDI3N2ZjYmM0ZGNhODNiZDg4MzA5N2M3YzAwM2FkMzY3OWJiNTVmOS4uZWJmZjU5NmU1ZTQx
ZjViOWE0MjJjZjcyNGZkMWRjNzRiNTAyMTIzNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95
YXJyL1lhcnJFcnJvckNvZGUuaApAQCAtMjUsNiArMjUsOCBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKIG5hbWVzcGFjZSBKU0MgewogCiBjbGFzcyBDYWxs
RnJhbWU7CkBAIC02Myw3ICs2NSw3IEBAIGVudW0gY2xhc3MgRXJyb3JDb2RlIDogdWludDhfdCB7
CiAgICAgSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MsCiB9OwogCi1KU19FWFBPUlRfUFJJ
VkFURSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKK0pTX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKIGlubGluZSBib29sIGhh
c0Vycm9yKEVycm9yQ29kZSBlcnJvckNvZGUpCiB7CiAgICAgcmV0dXJuIGVycm9yQ29kZSAhPSBF
cnJvckNvZGU6Ok5vRXJyb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVz
YWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmgKaW5kZXggODNkMmE2ZGI5ODUw
NTk4MDhlNTg5ZjE4NmZkZWIwOTgyZGY1MTU4Ni4uZWU1MWZiYjhkZGUwZDYyNzRiZmQ2YmJjYWMx
YjhiMjhmMTYwMTlhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1Jlc291cmNlVXNhZ2UuaApAQCAtMjYsNiArMjYsNyBAQAog
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzksNyArNDAsNyBAQCBzdHJ1Y3QgVGFnSW5mbyB7
CiAgICAgc2l6ZV90IHJlc2VydmVkIHsgMCB9OwogfTsKIAotV1RGX0VYUE9SVF9QUklWQVRFIGNv
bnN0IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQpOworV1RGX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkKTsKIFdURl9FWFBP
UlRfUFJJVkFURSBzaXplX3Qgdm1QYWdlU2l6ZSgpOwogV1RGX0VYUE9SVF9QUklWQVRFIHN0ZDo6
YXJyYXk8VGFnSW5mbywgMjU2PiBwYWdlc1BlclZNVGFnKCk7CiBXVEZfRVhQT1JUX1BSSVZBVEUg
dm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2
PiYsIGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2Nv
Y29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAKaW5kZXggMzE0MDdiYWFkNTQwNzQ2Yjg1OTc2ZGQ4
OTNhYzQ4OTk0YmIxNzcwMy4uNDhjZmI2NDdjNTY5MzhlNjY0NGZkMTIwYzE0NjU3YzI4OGYxMTM5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNw
cAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwCkBAIC02
OSwzNiArNjksMzYgQEAgdm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJy
YXk8VGFnSW5mbywgMjU2PiYgYmVmb3JlLCBjb25zdCBzdGQ6OmEKICAgICB9CiB9CiAKLWNvbnN0
IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQorQVNDSUlMaXRlcmFsIGRp
c3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQogewogICAgIHN3aXRjaCAodGFnKSB7Ci0g
ICAgY2FzZSBWTV9NRU1PUllfQ0dJTUFHRTogcmV0dXJuICJDRyBpbWFnZSI7Ci0gICAgY2FzZSBW
TV9NRU1PUllfQ09SRUdSQVBISUNTX0RBVEE6IHJldHVybiAiQ0cgcmFzdGVyIGRhdGEiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJWSUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0RZTElCOiByZXR1cm4gImR5bGliIjsKLSAgICBjYXNlIFZNX01FTU9S
WV9GT1VOREFUSU9OOiByZXR1cm4gIkZvdW5kYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0lN
QUdFSU86IHJldHVybiAiSW1hZ2VJTyI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSU9BQ0NFTEVSQVRP
UjogcmV0dXJuICJJT0FjY2VsZXJhdG9yIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT1NVUkZBQ0U6
IHJldHVybiAiSU9TdXJmYWNlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJ
T0tpdCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9DT1JFOiByZXR1cm4gIkdpZ2Fj
YWdlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9FWEVDVVRBQkxFX0FMTE9D
QVRPUjogcmV0dXJuICJKU0MgSklUIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJ
VF9SRUdJU1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiOwotICAgIGNhc2UgVk1fTUVNT1JZX0xB
WUVSS0lUOiByZXR1cm4gIkNvcmVBbmltYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0xJQkRJ
U1BBVENIOiByZXR1cm4gImxpYmRpc3BhdGNoIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfSFVHRTogcmV0dXJu
ICJtYWxsb2MgKGh1Z2UpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTEFSR0U6IHJldHVy
biAibWFsbG9jIChsYXJnZSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJVU06IHJl
dHVybiAibWFsbG9jIChtZWRpdW0pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTkFOTzog
cmV0dXJuICJtYWxsb2MgKG5hbm8pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfU01BTEw6
IHJldHVybiAibWFsbG9jIChzbWFsbCkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19USU5Z
OiByZXR1cm4gIm1hbGxvYyAodGlueSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX09TX0FMTE9DX09O
Q0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1FMSVRFOiBy
ZXR1cm4gIlNRTGl0ZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1RBQ0s6IHJldHVybiAiU3RhY2si
OwotICAgIGNhc2UgVk1fTUVNT1JZX1RDTUFMTE9DOiByZXR1cm4gImJtYWxsb2MiOwotICAgIGNh
c2UgVk1fTUVNT1JZX1VOU0hBUkVEX1BNQVA6IHJldHVybiAicG1hcCAodW5zaGFyZWQpIjsKLSAg
ICBkZWZhdWx0OiByZXR1cm4gbnVsbHB0cjsKKyAgICBjYXNlIFZNX01FTU9SWV9DR0lNQUdFOiBy
ZXR1cm4gIkNHIGltYWdlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVHUkFQSElDU19EQVRB
OiByZXR1cm4gIkNHIHJhc3RlciBkYXRhIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJW
SUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRFlMSUI6
IHJldHVybiAiZHlsaWIiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRk9VTkRBVElPTjogcmV0dXJu
ICJGb3VuZGF0aW9uIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0lNQUdFSU86IHJldHVybiAiSW1h
Z2VJTyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0FDQ0VMRVJBVE9SOiByZXR1cm4gIklPQWNj
ZWxlcmF0b3IiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9TVVJGQUNFOiByZXR1cm4gIklPU3Vy
ZmFjZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJT0tpdCJfczsKKyAg
ICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0NPUkU6IHJldHVybiAiR2lnYWNhZ2UiX3M7Cisg
ICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfRVhFQ1VUQUJMRV9BTExPQ0FUT1I6IHJl
dHVybiAiSlNDIEpJVCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9SRUdJ
U1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTEFZRVJL
SVQ6IHJldHVybiAiQ29yZUFuaW1hdGlvbiJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9MSUJESVNQ
QVRDSDogcmV0dXJuICJsaWJkaXNwYXRjaCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19IVUdFOiByZXR1
cm4gIm1hbGxvYyAoaHVnZSkiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX0xBUkdFOiBy
ZXR1cm4gIm1hbGxvYyAobGFyZ2UpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJ
VU06IHJldHVybiAibWFsbG9jIChtZWRpdW0pIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExP
Q19OQU5POiByZXR1cm4gIm1hbGxvYyAobmFubykiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFM
TE9DX1NNQUxMOiByZXR1cm4gIm1hbGxvYyAoc21hbGwpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X01BTExPQ19USU5ZOiByZXR1cm4gIm1hbGxvYyAodGlueSkiX3M7CisgICAgY2FzZSBWTV9NRU1P
UllfT1NfQUxMT0NfT05DRTogcmV0dXJuICJvc19hbGxvY19vbmNlIl9zOworICAgIGNhc2UgVk1f
TUVNT1JZX1NRTElURTogcmV0dXJuICJTUUxpdGUiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfU1RB
Q0s6IHJldHVybiAiU3RhY2siX3M7CisgICAgY2FzZSBWTV9NRU1PUllfVENNQUxMT0M6IHJldHVy
biAiYm1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9VTlNIQVJFRF9QTUFQOiByZXR1cm4g
InBtYXAgKHVuc2hhcmVkKSJfczsKKyAgICBkZWZhdWx0OiByZXR1cm4gQVNDSUlMaXRlcmFsOjpu
dWxsKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmlu
Z0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmluZGV4IGM3NmNkNTIz
Njc2MTFjOTQyZDM0MmJmMDkxYjE2MmEwYTY3NzQ0ZTAuLjhkODBmNzg3NzgzZDQzYzU2MmY4ZTBj
ZDNlMzY3NWI5NzZiYTgyNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC00MzEsNyAr
NDMxLDcgQEAgcHVibGljOgogICAgIHNpemVfdCBmaW5kKGNoYXIgY2hhcmFjdGVyLCB1bnNpZ25l
ZCBzdGFydCA9IDApOwogICAgIHNpemVfdCBmaW5kKFVDaGFyIGNoYXJhY3RlciwgdW5zaWduZWQg
c3RhcnQgPSAwKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZpbmQoQ29kZVVuaXRN
YXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBpbmRleCA9IDApOwotICAgIHNpemVfdCBmaW5kKGNvbnN0
IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAwKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6
ZV90IGZpbmQoY29uc3QgTENoYXIqLCB1bnNpZ25lZCBpbmRleCA9IDApOwogICAgIEFMV0FZU19J
TkxJTkUgc2l6ZV90IGZpbmQoY29uc3QgY2hhciogc3RyaW5nLCB1bnNpZ25lZCBpbmRleCA9IDAp
IHsgcmV0dXJuIGZpbmQocmVpbnRlcnByZXRfY2FzdDxjb25zdCBMQ2hhcio+KHN0cmluZyksIGlu
ZGV4KTsgfQogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzaXplX3QgZmluZChTdHJpbmdJbXBsKik7
CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5kKFN0cmluZ0ltcGwqLCB1bnNpZ25l
ZCBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKaW5kZXggM2E5MWE2NzdkNWMwMzhl
MDNiN2M1ZWIzMmYzNzMzYmVmYzA4Y2E1NS4uMzVlYjQ3MzgwZjVkOGQyMzJhOTk5MDUwZTc2MDMx
MmViMzVhZGI3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcApAQCAtNDY1LDMxICs0NjUs
MzEgQEAgU3RyaW5nIFN0cmluZzo6bnVtYmVyKHVuc2lnbmVkIGxvbmcgbG9uZyBudW1iZXIpCiBT
dHJpbmcgU3RyaW5nOjpudW1iZXJUb1N0cmluZ0ZpeGVkUHJlY2lzaW9uKGZsb2F0IG51bWJlciwg
dW5zaWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGlu
Z1plcm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZm
ZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVj
aXNpb24sIGJ1ZmZlciwgdHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVU
cmFpbGluZ1plcm9zKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lv
blN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGlu
Z1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6
Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24oZG91YmxlIG51bWJlciwgdW5zaWduZWQgcHJl
Y2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGluZ1plcm9zVHJ1bmNh
dGluZ1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0
dXJuIG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZl
ciwgdHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFpbGluZ1plcm9z
KTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1i
ZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBU
cnVuY2F0ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlcihmbG9h
dCBudW1iZXIpCiB7CiAgICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwotICAgIHJldHVy
biBudW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1ZmZlcik7CisgICAgcmV0dXJuIFN0cmluZyB7IG51
bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVyKSB9OwogfQogCiBTdHJpbmcgU3RyaW5nOjpudW1i
ZXIoZG91YmxlIG51bWJlcikKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0g
ICAgcmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVyKTsKKyAgICByZXR1cm4gU3Ry
aW5nIHsgbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpIH07CiB9CiAKIFN0cmluZyBTdHJp
bmc6Om51bWJlclRvU3RyaW5nRml4ZWRXaWR0aChkb3VibGUgbnVtYmVyLCB1bnNpZ25lZCBkZWNp
bWFsUGxhY2VzKQogewogICAgIE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1
cm4gbnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwgZGVjaW1hbFBsYWNlcywgYnVmZmVy
KTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwg
ZGVjaW1hbFBsYWNlcywgYnVmZmVyKSB9OwogfQogCiBkb3VibGUgU3RyaW5nOjp0b0RvdWJsZShi
b29sKiBvaykgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5n
LmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCmluZGV4IDUxMWI5YzE2NGExYTU4
YzExZDRjZmQ1MzIxZTMyZjUyN2I0YzllZDYuLjQxZWQzNWNjYTZlOWY3MWYyNmVkZGJkMzVhNzhh
ZTZhZTY0NzgwODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgK
KysrIGIvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaApAQCAtMTcxLDYgKzE3MSw3IEBA
IHB1YmxpYzoKIAogICAgIHNpemVfdCBmaW5kKENvZGVVbml0TWF0Y2hGdW5jdGlvbiBtYXRjaEZ1
bmN0aW9uLCB1bnNpZ25lZCBzdGFydCA9IDApIGNvbnN0IHsgcmV0dXJuIG1faW1wbCA/IG1faW1w
bC0+ZmluZChtYXRjaEZ1bmN0aW9uLCBzdGFydCkgOiBub3RGb3VuZDsgfQogICAgIHNpemVfdCBm
aW5kKGNvbnN0IExDaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1
cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91bmQ7IH0KKyAg
ICBzaXplX3QgZmluZChjb25zdCBjaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29u
c3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91
bmQ7IH0KIAogICAgIC8vIEZpbmQgdGhlIGxhc3QgaW5zdGFuY2Ugb2YgYSBzaW5nbGUgY2hhcmFj
dGVyIG9yIHN0cmluZy4KICAgICBzaXplX3QgcmV2ZXJzZUZpbmQoVUNoYXIgY2hhcmFjdGVyLCB1
bnNpZ25lZCBzdGFydCA9IE1heExlbmd0aCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBs
LT5yZXZlcnNlRmluZChjaGFyYWN0ZXIsIHN0YXJ0KSA6IG5vdEZvdW5kOyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvV29ya2xldEdsb2JhbFNjb3Bl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFs
U2NvcGUuY3BwCmluZGV4IGFjMDUwNWQ1NDk2NDIzZmM1ZmRlZTY2MzBlYjdmOTUzODAyMTMzNTgu
LmZmOTM3MTBmMjA5NzQ2YmFhZWY5YTY2YzU3Y2QwMjRjMDk1M2NiMDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFs
U2NvcGUuY3BwCkBAIC0xNDYsNyArMTQ2LDcgQEAgUmVmUHRyPEF1ZGlvV29ya2xldFByb2Nlc3Nv
cj4gQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGU6OmNyZWF0ZVByb2Nlc3Nvcihjb25zdCBTdHIKICAg
ICBhcmdzLmFwcGVuZChhcmcpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwog
Ci0gICAgYXV0byogb2JqZWN0ID0gSlNDOjpjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBqc0NvbnN0
cnVjdG9yLCBhcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBBdWRpb1dvcmtsZXRQcm9jZXNzb3Ii
KTsKKyAgICBhdXRvKiBvYmplY3QgPSBKU0M6OmNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGpzQ29u
c3RydWN0b3IsIGFyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0IEF1ZGlvV29ya2xldFByb2Nlc3Nv
ciJfcyk7CiAgICAgQVNTRVJUKCEhc2NvcGUuZXhjZXB0aW9uKCkgPT0gIW9iamVjdCk7CiAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCmluZGV4IGY1NTNj
MjVkZTc5ZjczMWMwNzlmNWFlMGZlMWUxOGEwYzcwYzVkNjUuLjI0YTQxYWI4N2ZmNTkxOTFiOGVh
YmU4ZmNlMThlZTY0YmIyOTBmZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaApAQCAtOTgsNyArOTgsNyBAQCB0ZW1wbGF0
ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMX0FUVFJJQlVURVMgSgogICAgICAgICByZXR1cm4geyB9OwogCiAgICAgYXV0byoganNPYmpl
Y3QgPSBKU0NsYXNzOjpjcmVhdGUoc3RydWN0dXJlLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3Qo
KSk7Ci0gICAgSlNDOjpjYWxsKGxleGljYWxHbG9iYWxPYmplY3QsIGNhc3RlZFRoaXMtPmluaXRp
YWxpemVGdW5jdGlvbigpLCBqc09iamVjdCwgSlNDOjpBcmdMaXN0KGNhbGxGcmFtZSksICJUaGlz
IGVycm9yIHNob3VsZCBuZXZlciBvY2N1cjogaW5pdGlhbGl6ZSBmdW5jdGlvbiBpcyBndWFyYW50
ZWVkIHRvIGJlIGNhbGxhYmxlLiIpOworICAgIEpTQzo6Y2FsbChsZXhpY2FsR2xvYmFsT2JqZWN0
LCBjYXN0ZWRUaGlzLT5pbml0aWFsaXplRnVuY3Rpb24oKSwganNPYmplY3QsIEpTQzo6QXJnTGlz
dChjYWxsRnJhbWUpLCAiVGhpcyBlcnJvciBzaG91bGQgbmV2ZXIgb2NjdXI6IGluaXRpYWxpemUg
ZnVuY3Rpb24gaXMgZ3VhcmFudGVlZCB0byBiZSBjYWxsYWJsZS4iX3MpOwogICAgIHJldHVybiBK
U0M6OkpTVmFsdWU6OmVuY29kZShqc09iamVjdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAppbmRleCBiMjYyNmZlYjRhMDUzNzM4
ZWE3ZGVkMTgyNzc4NjVjNGY4MTM0YjU4Li43MWFiMTJiMTUwZjBlNzJmZGE5NTdjOTk0MWEwNDA3
YmI0YjRlY2JkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUds
b2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9i
YWxPYmplY3QuY3BwCkBAIC04Miw3ICs4Miw3IEBAIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Z2V0SW50ZXJuYWxXcml0YWJsZVN0cmVhbSk7CiBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdo
ZW5TaWduYWxBYm9ydGVkKTsKIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaXNBYm9ydFNpZ25h
bCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9N
R2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUdsb2JhbE9iamVjdCJfcywgJkpT
R2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNET01HbG9iYWxPYmplY3QpIH07CiAKIEpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUdsb2Jh
bE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV3JhcHBlcldvcmxk
PiYmIHdvcmxkLCBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSogZ2xvYmFsT2JqZWN0TWV0
aG9kVGFibGUpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRv
d0Jhc2UuY3BwCmluZGV4IGVkMGUyNzRhNzg0NTY4MGE4OTUzOTBkNjBkMTJjYWIyNjQ3YWY1ZGUu
LjU3ZDBiNjQ5OTg1ZmUwNmMyNzQ4NWJhN2JmNmJmNzgxZjI0Mjg3ODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtNjgsNyArNjgsNyBA
QAogbmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFs
T2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNE
T01XaW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZv
ID0geyAiV2luZG93Il9zLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRvd0Jhc2UpIH07CiAKIGNvbnN0IEds
b2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTRE9NV2luZG93QmFzZTo6c19nbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwCmluZGV4IDUx
MjVhYzhjOTBkYWQzMjNkMDY2MDJlYTEwZDdlZjBkM2Q1Zjc5ZDguLjI4N2JmYjA2NTBlZDUwMjBj
YzYzYmY4ZDJlNjc4OWE3ZGVhMjY0OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5m
byBKU0RPTVdpbmRvd1Byb3BlcnRpZXM6OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93UHJvcGVydGllcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3BlcnRp
ZXM6OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm9wZXJ0aWVzKSB9
OwogCiAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93aW5kb3ctb2Jq
ZWN0Lmh0bWwjZG9tLXdpbmRvdy1uYW1lZGl0ZW0KIHN0YXRpYyBib29sIGpzRE9NV2luZG93UHJv
cGVydGllc0dldE93blByb3BlcnR5U2xvdE5hbWVkSXRlbUdldHRlcihKU0RPTVdpbmRvd1Byb3Bl
cnRpZXMqIHRoaXNPYmplY3QsIERPTVdpbmRvdyYgd2luZG93LCBKU0dsb2JhbE9iamVjdCogbGV4
aWNhbEdsb2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90
JiBzbG90KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwCmluZGV4IGI1MDE5MDU5
YzEzNWVlNzZhYmVhMzNhOTUzZjI1MDMzYTE1N2VkODguLjZlYmFkYjUxOGNkZDJhOWYyZjRkY2Zi
NWE3YjIwYTE0NjAyMmMyNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAK
QEAgLTQzLDExICs0MywxMSBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcl9vblByb21pc2VSZQogSlNDX0FOTk9UQVRF
X0hPU1RfRlVOQ1RJT04oSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5
cGVOZXh0LCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6bmV4
dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVy
YXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlND
OjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3I6OnNfaW5mbyA9
IHsgIkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0
ZXJhdG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xh
c3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJE
aXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJh
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhh
bmRsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5cGUp
IH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVy
YXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogR0NDbGllbnQ6
Oklzb1N1YnNwYWNlKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjo6c3Vic3Bh
Y2VGb3JJbXBsKFZNJiB2bSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCmluZGV4IDQxNGY2
ZDNkNTM0NmQ2YzI4NGVlMmM4YTc4NTQ0YzYxYzgwYTM5NzAuLmEwN2E3NTRiODE2YmM5Mzk5Yjli
NDZmZWU0YjQzMGY1Mzc3ZmQ0MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcApAQCAtMzIs
NyArMzIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJREJTZXJpYWxpemF0aW9uR2xvYmFs
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVj
dDo6c19pbmZvID0geyAiSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSURCU2VyaWFs
aXphdGlvbkdsb2JhbE9iamVjdCkgfTsKIAogaW5saW5lIEpTSURCU2VyaWFsaXphdGlvbkdsb2Jh
bE9iamVjdDo6SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIFJlZjxET01XcmFwcGVyV29ybGQ+JiYgaW1wbCkKICAgICA6IEJhc2Uodm0s
IHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwCmluZGV4IGE0ZDcxNWY3MDhjNjBjMDI4
NjU3OWNmMTU5MDM1NzcwMGI3ZDU0YWQuLjNlMTEwNDBkOWUxYWVmYzJiMzVmNWU1ZGQ5NzcxYzgx
ZDhhMjA0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3Rl
RE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZW1v
dGVET01XaW5kb3dCYXNlLmNwcApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgSlND
OwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURPTVdp
bmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUmVtb3RlRE9NV2luZG93
QmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9
IHsgIldpbmRvdyJfcywgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVET01XaW5kb3dCYXNlKSB9OwogCiBjb25z
dCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfZ2xvYmFs
T2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgbnVsbHB0ciwgLy8gc2hlbGxTdXBwb3J0c1JpY2hT
b3VyY2VJbmZvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1NoYWRv
d1JlYWxtR2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
U2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCmluZGV4IDgzZjk0ZTMxMDhmOGU0NThkNmQy
NDdhMzlmMDJiOTU1YTNhNjFhMTEuLjMzMDRiN2I4ODhlOWNhM2I1ZTRmZTNlMzdmODNhYTllY2Iy
YjQ0N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVh
bG1HbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
U2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
U2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFs
U2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVCYXNlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRv
d1JlYWxtR2xvYmFsU2NvcGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJh
c2UpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTU2hhZG93UmVhbG1HbG9i
YWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRz
UmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1dpbmRvd1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJv
eHkuY3BwCmluZGV4IDQ2OTlkOGVkYjUxZjIzZDE4OTM3ZGI4N2JmYTZiODhmYWIxNDgwYTYuLjI3
MjFiNzc2YWU2N2FiNjZmZDM1YmVjYzQxZjE3YzE0N2YyYTM1ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCkBAIC01MCw3ICs1MCw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTV2luZG93UHJveHk6OnNfaW5mbyA9IHsgIkpTV2luZG93UHJveHkiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2luZG93UHJveHkpIH07
Citjb25zdCBDbGFzc0luZm8gSlNXaW5kb3dQcm94eTo6c19pbmZvID0geyAiSlNXaW5kb3dQcm94
eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dpbmRvd1Byb3h5KSB9OwogCiBpbmxpbmUgSlNXaW5kb3dQcm94eTo6SlNXaW5kb3dQcm94
eShWTSYgdm0sIFN0cnVjdHVyZSYgc3RydWN0dXJlLCBET01XcmFwcGVyV29ybGQmIHdvcmxkKQog
ICAgIDogQmFzZSh2bSwgJnN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCA5NmNkZjZlMDA3YjQy
MDYxNWY0YTUzNjRhN2I5YThjZGZjNjIzMDQwLi5iNDFlZDNlODQyNDAzY2Y1YTJkNTE2ZjYzMDFh
MDEwZjc2M2Y1ZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dv
cmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00Myw3ICs0Myw3IEBACiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXb3Jr
ZXJHbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkpTRE9N
R2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJH
bG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9zLCAmSlNET01H
bG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9k
VGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUg
PSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCAwOThi
ZjYzYjYwY2QzYzY2ZDg2NjQ1ZDVmNTU4MmIwNjM1ODZmYTEwLi5iNjRjMmFhZWFkYTgxNDE3Mjli
NjkzYWYxMWE1NDFjNzc3ZjM0NTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFz
c0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFs
U2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFz
c0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFs
U2NvcGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3Qg
R2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2dsb2Jh
bE9iamVjdE1ldGhvZFRhYmxlID0gewogICAgICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMu
cG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpp
bmRleCA0NmEwYTVhZDFlMTVhYTZiM2QwMTY1MGFiZWY1ZDAxMTNhZjRkMWRhLi4wNzNlMTU4ZTMx
YTUzMmMyYjMzODU3ODdhOTc5MmM0MzIzMDY0YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtNDU1NCw3ICs0NTU0LDcg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgJG9iamVjdC0+R2VuZXJhdGVI
YXNoVGFibGUoJGNsYXNzTmFtZSwgJGhhc2hOYW1lLCAkaGFzaFNpemUsIFxAaGFzaEtleXMsIFxA
aGFzaFNwZWNpYWxzLCBcQGhhc2hWYWx1ZTEsIFxAaGFzaFZhbHVlMiwgXCVjb25kaXRpb25hbHMs
IFwlcmVhZFdyaXRlQ29uZGl0aW9uYWxzLCAkanVzdEdlbmVyYXRlVmFsdWVBcnJheSk7CiAKICAg
ICAgICAgbXkgJHByb3RvdHlwZUhhc2hUYWJsZSA9ICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5ID8g
Im51bGxwdHIiIDogIiYke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSI7Ci0gICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19p
bmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sICR7cHJv
dG90eXBlSGFzaFRhYmxlfSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFt
ZX1Qcm90b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNvbnN0
IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJ
bnRlcmZhY2VOYW1lfVwiX3MsICZCYXNlOjpzX2luZm8sICR7cHJvdG90eXBlSGFzaFRhYmxlfSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5c
biIpOwogCiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAidm9pZCAke2NsYXNzTmFtZX1Qcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSlcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIntcbiIpOwpAQCAtNDY0OCw3ICs0NjQ4LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50
YXRpb24KICAgICB9CiAKICAgICAjIC0gSW5pdGlhbGl6ZSBzdGF0aWMgQ2xhc3NJbmZvIG9iamVj
dAotICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUiIC4g
Ijo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8s
ICIpOworICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUi
IC4gIjo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNf
aW5mbywgIik7CiAKICAgICBpZiAoJG51bUluc3RhbmNlUHJvcGVydGllcyA+IDApIHsKICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnQsICImJHtjbGFzc05hbWV9VGFibGUiKTsKQEAgLTY4MzAsMTEg
KzY4MzAsMTEgQEAgdXNpbmcgJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9ID0gSlNET01JdGVyYXRv
clByb3RvdHlwZTwke2NsYXNzTmFtZX0sICR7aXRlcmF0b3IKIEpTQ19BTk5PVEFURV9IT1NUX0ZV
TkNUSU9OKCR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfU5leHQsICR7aXRlcmF0b3JQcm90b3R5cGVO
YW1lfTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0
b3JOYW1lfUJhc2U6OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9y
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgk
e2l0ZXJhdG9yTmFtZX1CYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5h
bWV9OjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVyYXRvciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRv
ck5hbWV9KSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9QmFzZTo6c19p
bmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9
QmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JOYW1lfTo6c19pbmZvID0g
eyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9KSB9Owog
CiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90eXBlTmFt
ZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9y
UHJvdG90eXBlTmFtZX0pIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90
eXBlTmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7
aXRlcmF0b3JQcm90b3R5cGVOYW1lfSkgfTsKIAogRU5ECiAKQEAgLTc4MzEsNyArNzgzMSw3IEBA
IHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogICAgICAgICAkbGVhc3RDb25z
dHJ1Y3Rvckxlbmd0aCA9IDA7CiAgICAgfQogCi0gICAgcHVzaChAJG91dHB1dEFycmF5LCAidGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OnNfaW5mbyA9
IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y29uc3RydWN0b3JDbGFzc05hbWV9KSB9O1xu
XG4iKTsKKyAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byAke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFj
ZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRSgke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfSkgfTtcblxuIik7CiAKICAgICAjIElmIHRo
ZSBpbnRlcmZhY2UgaGFzIGEgcGFyZW50IGludGVyZmFjZSB3aGljaCBkb2VzIG5vdCBoYXZlIFtM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdF0sIHRoZW4gdXNlIGl0cyBpbnRlcmZhY2Ugb2JqZWN0IGFz
IHByb3RvdHlwZSwKICAgICAjIG90aGVyd2lzZSB1c2UgRnVuY3Rpb25Qcm90b3R5cGU6IGh0dHA6
Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jaW50ZXJmYWNlLW9iamVjdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5jcHAK
aW5kZXggNzc4N2UxZGYwN2Q4YjUzNTVhNzg4MjU4Yzg4OGNmNTA1OTIzODU4Mi4uMGZlYTAyNTk1
NmIwMTU5OWU3YjU2MDM4NTQzODYxMzZhMmEwMTExMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuY3BwCkBAIC0xNDcs
NyArMTQ3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTRE9NV2luZG93VGFibGVW
YWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRE9NV2luZG93VGFibGUg
PSB7IDEyLCAzMSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dUYWJsZVZh
bHVlcywgSlNET01XaW5kb3dUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01XaW5kb3ciLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2lu
ZG93RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdp
bmRvd0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRE9NV2luZG93RE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3Nyw3ICsxNzcsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07
CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZSA9IHsg
MSwgMSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dQcm90b3R5cGVUYWJs
ZVZhbHVlcywgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0lu
Zm8gSlNET01XaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpz
X2luZm8sICZKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRE9NV2luZG93UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2lu
ZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sICZK
U0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RE9NV2luZG93UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTRE9NV2luZG93UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xODYsNyArMTg2LDcgQEAgdm9pZCBKU0RPTVdpbmRv
d1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3c6
OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1RhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93KSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTRE9NV2luZG93OjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2lu
Zm8sICZKU0RPTVdpbmRvd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93KSB9OwogCiBKU0RPTVdpbmRvdzo6SlNET01XaW5kb3coVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgUmVmPERPTVdpbmRvdz4mJiBpbXBsLCBKU1dpbmRvd1Byb3h5KiBwcm94eSkK
ICAgICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSwgcHJveHkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggMmRj
YmE5ZjY0MGZhMTAwODRlOGNiNWRhMGI4MDUzZjVkMWI4ODk5OS4uOTI4NjhkNTc3NzU2YWNjNzA0
YmMyMmU4MTcyMmZiYjJlMWUwYjg1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlLmNwcApAQCAtNzQsNyArNzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAog
c3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUg
PSB7IDIsIDMsIHRydWUsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNCw3ICsxMDQsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
VmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFi
bGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgJkpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHZvaWQgSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVk
aWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiX3Ms
ICZCYXNlOjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsK
IAogSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpTV29ya2VyR2xvYmFsU2NvcGUodm0sIHN0cnVjdHVy
ZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcAppbmRleCBlNWZjMzVjOGFlOWMzMWIw
ZDE4NzI2NmZmMTk3YjkzMDAwMzYyNzJiLi40NjlhMTIxZjI0OTVlNmI0MjhhZWVmNjIwODhhZDA1
ZmU1NGNhNzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNFeHBvc2VkU3Rhci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3BwCkBAIC05MSw3ICs5MSw3IEBAIFNUQVRJQ19B
U1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUsIEpTRXhw
b3NlZFN0YXJQcm90b3R5CiAKIHVzaW5nIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvciA9IEpT
RE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTRXhwb3NlZFN0YXI+OwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkV4cG9zZWRTdGFyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkV4cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9z
ZWRTdGFyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAib3BlcmF0aW9uSnVzdEZvcldv
cmtlckNvbnRleHRzIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05h
dGl2ZUZ1bmN0aW9uPihqc0V4cG9zZWRTdGFyUHJvdG90eXBlRnVuY3Rpb25fb3BlcmF0aW9uSnVz
dEZvcldvcmtlckNvbnRleHRzKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4
cG9zZWRTdGFyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTQzLDcgKzE0Myw3IEBAIHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6c19pbmZvID0geyAiRXhw
b3NlZFN0YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRXhwb3NlZFN0YXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6
c19pbmZvID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhcikgfTsKIAogSlNFeHBvc2VkU3Rh
cjo6SlNFeHBvc2VkU3RhcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPEV4cG9zZWRTdGFyPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFy
Z2V0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5jcHAKaW5kZXggZWI4N2Q2Yzg3ZmI1ZTA4ZDMwYTg4
N2U3NzMzNTFkYWU2ZjU4OGE3NC4uZmYxMTQ4NWM1ZTY4ZGM1N2JhYmYyYWVhNGM2NTY1NTkwNDMx
N2FiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3BwCkBAIC0x
NTEsNyArMTUxLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FU
VFJJQlVURVMgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET00KIH0KIEpTQ19BTk5PVEFURV9I
T1NUX0ZVTkNUSU9OKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3JDb25z
dHJ1Y3QsIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVj
dCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNF
eHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvd0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTc2
LDcgKzE3Niw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRUb1dvcmtl
ckFuZFdpbmRvd1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRvU29tZXRoaW5nIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihq
c0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlwZUZ1bmN0aW9uX2RvU29tZXRoaW5nKSwg
KGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29y
a2VyQW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5k
b3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJFeHBvc2Vk
VG9Xb3JrZXJBbmRXaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTE4NSw3ICsxODUsNyBAQCB2b2lkIEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0V4
cG9zZWRUb1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0V4cG9z
ZWRUb1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93KSB9OwogCiBKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvdzo6SlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3coU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5k
b3c+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFp
bnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IDdhNTZhNzliNmJhMWZmOWU1NmI0YTI3MWMy
MjE4ZDRkNGY2ODI2YTUuLjM1YjYzOGVmNjRkNDE0M2JhNzI0OTFmOTY1NjAzMDAwMGUxM2NkNDEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Bh
aW50V29ya2xldEdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTczLDcgKzcz
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWludFdv
cmtsZXRHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2Jh
bFNjb3BlOjppbmZvKCksIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNQ
YWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xv
YmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMDMsNyArMTAzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0K
IH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVBy
b3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlOjpp
bmZvKCksIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNQ
YWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNz
SW5mbyBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1BhaW50V29ya2xldEdsb2Jh
bFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1BhaW50
V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEds
b2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2
b2lkIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlBh
aW50V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xv
YmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xl
dEdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZv
LCAmSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUpIH07CiAKIEpTUGFpbnRXb3JrbGV0R2xv
YmFsU2NvcGU6OkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgUmVmPFBhaW50V29ya2xldEdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dv
cmtsZXRHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggOTk4NjVkMWUwYmZiYjQ1OWVh
M2QyYjJmMTcwZTA0ODBmMGExZTgzNC4uZmVhZjE3OTFhOGI1ZTBjYzJkNzY3ZmMxMTJkZmZhNWU3
MDFlNmMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBA
IC03Myw3ICs3Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRh
YmxlVmFsdWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTAzLDcgKzEwMyw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5m
bywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2b2lkIEpTU2VydmljZVdvcmtlckds
b2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNj
b3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsg
IlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdv
cmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpK
U1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBS
ZWY8U2VydmljZVdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtlckdsb2Jh
bFNjb3BlKHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3Bl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGUuY3BwCmluZGV4IDg5MWEyMzJkYTllN2ViZGI5ZjMzMWNlOTIxN2RkZDBi
YzM3NTkzYWEuLmI1OTk0MjU3ZTI4MGQ0ZjQwZDI5NzAzMmE1YTlkYTljMGI4MjE5MWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3BwCkBAIC03NSw3ICs3NSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZh
bHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNTaGFkb3dSZWFsbUdsb2Jh
bFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6aW5m
bygpLCBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNTaGFkb3dSZWFsbUds
b2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxt
R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1NoYWRv
d1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
OTIsNyArOTIsNyBAQCB0ZW1wbGF0ZTw+IHZvaWQgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9N
Q29uc3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZNJgogICAgIHB1dERpcmVjdCh2bSwg
dm0ucHJvcGVydHlOYW1lcy0+cHJvdG90eXBlLCBnbG9iYWxPYmplY3QuZ2V0UHJvdG90eXBlRGly
ZWN0KHZtKSwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlOjpzX2luZm8g
PSB7ICJTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2hhZG93UmVh
bG1HbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93
UmVhbG1HbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFs
U2NvcGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2lu
Zm8sICZKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUpIH07CiAKIEpTU2hhZG93UmVhbG1HbG9i
YWxTY29wZTo6SlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIFJlZjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8U2hhZG93UmVhbG1HbG9iYWxTY29wZT4odm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBhMDI0OTQw
NjJkZDdkZDYyMzJkMWViYTQwMjU2YjMwZGEzNTBjYjBjLi43YTM1ZTQ5YjQ0MDJmODQzN2Q2ZmNi
YzZiYTBhYjVkMTA2ZjkzYmFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2Nv
cGUuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwg
SlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlVGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtl
ckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNo
YXJlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA0LDcgKzEwNCw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNTaGFyZWRX
b3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZUlu
ZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZTo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAm
SlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0g
eyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTMsNyArMTEzLDcgQEAgdm9pZCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8s
ICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29w
ZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKSB9Owog
CiBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTaGFyZWRXb3JrZXJHbG9iYWxTY29wZT4m
JiBpbXBsKQogICAgIDogSlNXb3JrZXJHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5jcHAKaW5kZXggMWI4ZjYxYTZmYTBiNWYwOTg4
YjQxZDU4YjAxYTUyYzc2ODM0YjFlMi4uZDY0OWYxZDMzMDJmMmE4NGYzODQwYTI2Mjg0NWI3ZjVk
N2EyMWExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNQcm90
b3R5cGUsIEpTVGVzdENFUmVhY3Rpb24KIAogdXNpbmcgSlNUZXN0Q0VSZWFjdGlvbnNET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rp
b25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc0RP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFj
dGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENF
UmVhY3Rpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RD
RVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNDMsNyAr
MTQzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENFUmVhY3Rpb25zUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibWV0aG9kV2l0aENFUmVhY3Rpb25zTm90TmVl
ZGVkIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZUZ1bmN0aW9uX21ldGhvZFdpdGhDRVJlYWN0
aW9uc05vdE5lZWRlZCksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25z
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJl
YWN0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVh
Y3Rpb25zUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTIsNyArMTUyLDcgQEAgdm9pZCBKU1Rlc3RD
RVJlYWN0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9ucyIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlv
bnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRl
c3RDRVJlYWN0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9ucykgfTsKIAogSlNUZXN0Q0VSZWFjdGlvbnM6
OkpTVGVzdENFUmVhY3Rpb25zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdENFUmVhY3Rpb25zPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdENFUmVhY3Rpb25zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcApp
bmRleCBkMDMzZWY4M2Y5MWMyOTQ5NzZjMWZjN2Q5ZGY1NDBlMzUxNGU4ZGQ1Li40MTBmNjE5MjYx
NzY1NmQyN2MzYWU5NjRmOTJhMTAyMzI0Y2Q5NDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5
cGUsIEpTVGVzCiAKIHVzaW5nIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0
aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9u
c1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTIyLDcgKzEyMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5
cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RD
RVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rp
b25zU3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEz
MSw3ICsxMzEsNyBAQCB2b2lkIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0
aW9uc1N0cmluZ2lmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3Ry
aW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXIpIH07CiAKIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6
OkpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmll
cj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJh
Y2VyLmNwcAppbmRleCA4NzczZjQxNDkxNmI1YmYwZWZjYTVjYWJkMmY5NmE5Y2M5YzA2OWFlLi43
MTZjMDdlZGZhZDQ1MWZhMTlkZmYzZmM4OWJiNDk5OTZiMjlmNThkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxU
cmFjZXIuY3BwCkBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdENhbGxUcmFjZXJDb25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogCiBzdGF0aWNfYXNz
ZXJ0KFRlc3RDYWxsVHJhY2VyOjp0ZXN0Q29uc3RWYWx1ZSA9PSBmYWxzZSwgInRlc3RDb25zdFZh
bHVlIGluIFRlc3RDYWxsVHJhY2VyIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlckRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbFRyYWNlckRPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJ0ZXN0Q29uc3RWYWx1ZSIsIEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnREZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZyko
ZmFsc2UpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0Q2FsbFRyYWNlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE3
Myw3ICsxNzMsNyBAQCB2b2lkIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXI6OnNfaW5mbyA9IHsgIlRlc3RD
YWxsVHJhY2VyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxU
cmFjZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXIpIH07CiAK
IEpTVGVzdENhbGxUcmFjZXI6OkpTVGVzdENhbGxUcmFjZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q2FsbFRyYWNlcj4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDYWxsVHJhY2VyPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2Uu
Y3BwCmluZGV4IGNmMjdjNjYzOTc0NTdhNDQ2NTM5MDQ5ODUyNDJmMGVkMGQzNmM4NzguLjQ4YjRj
MmY3ODE3YTc0NzNjMGNhMzU1NGFkNmM0OGVmOGY2ZjIzZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENh
bGxiYWNrSW50ZXJmYWNlLmNwcApAQCAtMTUzLDcgKzE1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RDYWxsYmFja0ludGVyZmFjZUNvbnN0cnVjdG9yVGFibGVWYWx1ZXNb
XSA9CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RBTlQxID09IDEs
ICJDT05TVEFOVDEgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1hdGNoIHZhbHVl
IGZyb20gSURMIik7CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RB
TlQyID09IDIsICJDT05TVEFOVDIgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1h
dGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFj
a0ludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFja0ludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsYmFja0ludGVy
ZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbGJh
Y2tJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0
aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXgg
YTMyYjJkOGI4OTU0YWExNmQyNGFlYWU5ZjgwYjQ0NDgxMTk2ZTBlZS4uODIxMTBkMzQ2Njg5YTUz
ZDUwYzAyN2Q1MzcyZDkwNTNmMjJjMGM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBAIC04NCw3ICs4NCw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNv
bnN0cnVjdG9yUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RDbGFz
c1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFz
c1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlw
ZVRhYmxlVmFsCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdENsYXNzV2l0aEpT
QnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1
dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWls
dGluQ29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NX
aXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
clByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
clByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIyLDcgKzEyMiw3IEBA
IHZvaWQgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRo
SlNCdWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3Ip
IH07CiAKIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
cj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25z
dHJ1Y3Rvcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0
aW9uYWxJbmNsdWRlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAKaW5kZXggMDQ2ZjczYzY0ZTg5OTgyYjQ4
ZmIxYjdjNTI2OTQzYWUzMTQwOTU5Zi4uZGFiNWNlMjEyOWViMmNmOGQwN2ZhNDU5MGVlMjMyZTM5
Yzk1OWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNwcApAQCAt
MTc4LDcgKzE3OCw3IEBAIHN0YXRpY19hc3NlcnQoVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OkNP
TlNUX0lNUEwgPT0gMiwgIkNPTlNUX0lNUEwgaW4gVGVzdENvbmRpCiBzdGF0aWNfYXNzZXJ0KFRl
c3RDb25kaXRpb25hbEluY2x1ZGVzOjpQQVJUSUFMX01JWElOX0NPTlNUQU5UX0ZST01fUEFSVElB
TCA9PSA1LCAiUEFSVElBTF9NSVhJTl9DT05TVEFOVF9GUk9NX1BBUlRJQUwgaW4gVGVzdENvbmRp
dGlvbmFsSW5jbHVkZXMgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKICNlbmRpZgog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25k
aXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMzAzLDcgKzMwMyw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9u
YWxJbmNsdWRlcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTQ1MCw3ICs0NTAsNyBAQCB2b2lkIEpTVGVzdENvbmRpdGlv
bmFsSW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1
ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXMpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6
OkpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcz4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbEluY2x1ZGVzPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25k
aXRpb25hbGx5UmVhZFdyaXRlLmNwcAppbmRleCBjNWM3YjZiYTk4MmQyNDlkODliYjczZTk2Mjk3
MWQ5Y2Q0ZjY0OGJmLi5kYTYxZDY5MzY3OTM5Nzg0MWEwMzA1MmQxMjRkZTExMTUyNzA4MjYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q29uZGl0aW9uYWxseVJlYWRXcml0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwCkBAIC0xMzks
NyArMTM5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFs
bHlSZWFkV3JpdGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUg
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlID0geyAyLCA3LCB0cnVlLCBKU1Rlc3RD
b25kaXRpb25hbGx5UmVhZFdyaXRlOjppbmZvKCksIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3Jp
dGVUYWJsZVZhbHVlcywgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlSW5kZXggfTsK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xODEsNyArMTgxLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJzZXR0
aW5nc0NvbmRpdGlvbmFsbHlSZWFkV3JpdGVBdHRyaWJ1dGVQcm9taXNlIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yKSwgTm9JbnRy
aW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5j
Pihqc1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRX
cml0ZUF0dHJpYnV0ZVByb21pc2UpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5
U2xvdDo6UHV0VmFsdWVGdW5jPihzZXRKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRp
bmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVByb21pc2UpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVh
ZFdyaXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lkIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFs
bHlSZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIiwgJkJh
c2U6OnNfaW5mbywgJkpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0Q29uZGl0
aW9uYWxseVJlYWRXcml0ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGUpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3Jp
dGU6OkpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5j
cHAKaW5kZXggNzNlNDQ0M2MxZTA2NzBkMTkwZjI0MmI5OTY3ODRmNDA5ZjdiZjc4ZS4uOGI5YzM0
NWU0NWUzN2JmZWU5ZmI0NWU1YTVjZDNmY2E1NjZhNjIxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKQEAg
LTUwMSw3ICs1MDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RET01KSVRQcm90b3R5cGUsIEpTVGVzdERPTUpJVFByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3RE
T01KSVRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdERPTUpJVD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVRET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3I6OnBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKIHsKQEAgLTU2NCw3ICs1NjQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0RE9NSklUUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZ2V0
RWxlbWVudHNCeU5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01KSVRGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0RE9NSklUUHJvdG90eXBlRnVuY3Rpb25fZ2V0RWxlbWVudHNCeU5hbWUpLCAoaW50cHRy
X3QpIHN0YXRpY19jYXN0PGNvbnN0IEpTQzo6RE9NSklUOjpTaWduYXR1cmUqPigmRE9NSklUU2ln
bmF0dXJlRm9yVGVzdERPTUpJVEdldEVsZW1lbnRzQnlOYW1lKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0RE9NSklUUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RET01KSVRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVFByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RET01KSVRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTU3Myw3ICs1NzMsNyBAQCB2b2lkIEpTVGVzdERPTUpJVFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7ICJUZXN0RE9NSklU
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RET01KSVQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7
ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVCkgfTsKIAogSlNUZXN0RE9NSklUOjpKU1Rlc3RET01K
SVQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qs
IFJlZjxUZXN0RE9NSklUPiYmIGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAKaW5kZXgg
ZWE1YTI1NGRhODFlYzRkNGViMmRkZjUyNWI2MmE4YjBjZjQzY2RkYS4uM2QzYzQzYzg1ODk2MGM5
ZDdmZjg0MmM5NGNjZGFmMjZkNWNiNmIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmNw
cApAQCAtMTQ0LDcgKzE0NCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUsIEpTVGVzdERlZmF1bHRUCiAKIHVzaW5nIEpT
VGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25z
dHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT04+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09OIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTkwLDcgKzE5MCw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlVGFibGVWYWx1
ZXNbXSA9CiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlRnVuY3Rp
b25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09O
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTlBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjE2LDcgKzIxNiw3IEBAIHZv
aWQgSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pT
T04iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT04pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTikg
fTsKIAogSlNUZXN0RGVmYXVsdFRvSlNPTjo6SlNUZXN0RGVmYXVsdFRvSlNPTihTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZh
dWx0VG9KU09OPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05G
aWx0ZXJlZEJ5RXhwb3NlZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcAppbmRleCA5NTg1
NzRiYzZkODcwNjk5NDk3YTAxOWQ2Mjg0NTI1NzdiNmEzODMxLi5jZDM2NzVjNmM3OWIxOTczNGU5
ZjhmYTkzMDA0MmJmYWRhYTgzMmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRC
eUV4cG9zZWRQcm90b3R5cAogCiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4
cG9zZWRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
ZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMyw3ICsxMjMsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVk
QnlFeHBvc2VkUHJvdG90eXBlVGFibGVWYQogICAgIHsgInRvSlNPTiIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RGVmYXVsdFRv
SlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90
KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3Nl
ZFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3Nl
ZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0
VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0g
eyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZp
bHRlcmVkQnlFeHBvc2VkKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05G
aWx0ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5
RXhwb3NlZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQpIH07CiAKIEpTVGVz
dERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRl
cmVkQnlFeHBvc2VkKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQ+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5jcHAKaW5kZXgg
MzIzZWYwODJjMWJjN2YxNWY2ZTJkNmQxMmM4NWM1MjYwM2UyMWQ0ZS4uZGY5ZjJkOGRmNDZlZmJl
MGNiZTJmOWExZDZhN2JiODIyZGQwZjc2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRh
bmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuY3BwCkBAIC04Miw3ICs4Miw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlUHJvdG90CiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZT47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRh
bmNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJ
bmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0
VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTA1LDcgKzEwNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZVRhYmxlCiAgICAg
eyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJv
cGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVy
aXRhbmNlQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xv
dDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0
VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJ
bmhlcml0YW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE0LDcg
KzExNCw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pT
T05JbmRpcmVjdEluaGVyaXRhbmNlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGly
ZWN0SW5oZXJpdGFuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlOjpz
X2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlOjpKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5j
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZT4mJiBpbXBsKQogICAgIDog
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmNwcAppbmRl
eCBkZTk3ZDIzZGRjNTgzYzA5YTM2NDc3YjVmZTdiMjAwZTA0YWRlNWZlLi4zNDk0NjU4ODY1ZDQx
MzRhNjVkYTBkZGY1ZTNlYjdmYTUwNDAxNjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09OSW5oZXJpdC5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZSwgSlNU
ZXN0RAogCiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVy
aXQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEz
NCw3ICsxMzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRv
SlNPTkluaGVyaXRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b0pTT04iLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90
KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKIHsKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdf
V0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0
VG9KU09OSW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0KSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6SlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+JiYgaW1w
bCkKICAgICA6IEpTVGVzdERlZmF1bHRUb0pTT04oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbC5jcHAKaW5kZXggNzgzYzlkYjk0ZDM2M2UxYzExYTk4NmYzZjgzOGE4MDZlZjRmN2FkNi4u
NTg0MzE3Y2Y3ZGEyNjFmNDM2NTliZTA1Y2EyYWYyYTRiZWY5ZWIxNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmNwcApAQCAtMTExLDcgKzExMSw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RmluYWxQcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWxET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTM3LDcgKzEzNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAi
dG9KU09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1
bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1
bmN0aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlRnVuY3Rpb25f
dG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZh
dWx0VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5h
bFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
RmluYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0RmluYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCkgfTsKIAog
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVy
aXRGaW5hbChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsPiYmIGltcGwpCiAgICAgOiBK
U1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVk
U3ludGhldGljQXR0cmlidXRlLmNwcAppbmRleCA4ZTZmZTM5MWJlMTAwZjM2MmRmMzIwZmY5NjUw
ODQyMTQ4NjlkNjU4Li44ZDgwOGQwYTQ5NjgzYzdkY2ViMzZhZjU1NDliY2VlNmJlZjE3MDllIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGUuY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90
CiAKIHVzaW5nIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlbGVnYXRl
VG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVE
T01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTE5LDcgKzExOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlVGFiCiAgICAgeyAicHJv
cGVydHk1Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1
c3RvbUFjY2Vzc29yIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RE9NQXR0cmlidXRlKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVG
dW5jPihqc1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0dHJp
YnV0ZTIpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVG
dW5jPihzZXRKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0
dHJpYnV0ZTIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hh
cmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVU
b1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hh
cmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVU
b1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGlj
QXR0cmlidXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50
aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEy
OCw3ICsxMjgsNyBAQCB2b2lkIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVn
YXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRv
U2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUpIH07CiAKIEpT
VGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OkpTVGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3REZWxlZ2F0ZVRvU2hhcmVk
U3ludGhldGljQXR0cmlidXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REb21haW5TZWN1cml0eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuY3BwCmluZGV4IDVjNTA0MGNlNjNlY2EyZmYw
OTNiYTkyMGU4ZjRkMzczMTM1MzkwMDIuLmQzY2NmNjAwY2Q1ZDhhYThmNDdjNmJlNGNiNGVhNDk2
OGYwNTk0YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcApAQCAtMTE0LDcgKzEx
NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eVRh
YmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3REb21haW5T
ZWN1cml0eVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1Rlc3REb21haW5TZWN1cml0eTo6aW5mbygp
LCBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlVmFsdWVzLCBKU1Rlc3REb21haW5TZWN1cml0eVRh
YmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3Vy
aXR5RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9t
YWluU2VjdXJpdHlET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REb21h
aW5TZWN1cml0eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTQxLDcgKzE0MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsg
Im92ZXJsb2FkZWRNZXRob2QiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlRnVuY3Rpb25f
b3ZlcmxvYWRlZE1ldGhvZCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFp
blNlY3VyaXR5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFpblNl
Y3VyaXR5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERv
bWFpblNlY3VyaXR5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTAs
NyArMTUwLDcgQEAgdm9pZCBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHk6OnNfaW5mbyA9IHsg
IlRlc3REb21haW5TZWN1cml0eSIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0
eVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5OjpzX2luZm8gPSB7ICJU
ZXN0RG9tYWluU2VjdXJpdHkiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0
eVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5
KSB9OwogCiBKU1Rlc3REb21haW5TZWN1cml0eTo6SlNUZXN0RG9tYWluU2VjdXJpdHkoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
RG9tYWluU2VjdXJpdHk+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RG9tYWluU2Vj
dXJpdHk+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRC
eVNldHRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwCmluZGV4IDlmMjY4ODk3ODQ0MTQ0ZTBkMThkNTljMTJk
MmZjZjk4ZjIwNmEyZmIuLjA1Y2EyOThiYjY0OWVlNmQ1NWQwMjFiNTRlZTc0YmU3YzAzMzI5ZTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFbmFibGVkQnlTZXR0aW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5jcHAKQEAgLTEzNSw3ICsxMzUsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0NvbnN0
cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAKIHN0YXRpY19hc3NlcnQoVGVzdEVuYWJsZWRCeVNldHRp
bmc6OmVuYWJsZWRCeVNldHRpbmdDb25zdGFudCA9PSAwLCAiZW5hYmxlZEJ5U2V0dGluZ0NvbnN0
YW50IGluIFRlc3RFbmFibGVkQnlTZXR0aW5nIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURM
Iik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJs
ZWRCeVNldHRpbmdET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVu
YWJsZWRCeVNldHRpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xODMsNyArMTgzLDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGVUYWJsZVZhbHVlc1td
ID0KICAgICB7ICJlbmFibGVkQnlTZXR0aW5nQ29uc3RhbnQiLCBKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpEb250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25n
IGxvbmcpKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0
aW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxl
ZEJ5U2V0dGluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlT
ZXR0aW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RF
bmFibGVkQnlTZXR0aW5nUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRp
bmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzNiw3ICsyMzYsNyBA
QCB2b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsgIlRlc3RF
bmFibGVkQnlTZXR0aW5nIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdEVuYWJsZWRCeVNldHRpbmdU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5n
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsg
IlRlc3RFbmFibGVkQnlTZXR0aW5nIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZ1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRC
eVNldHRpbmcpIH07CiAKIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OkpTVGVzdEVuYWJsZWRCeVNl
dHRpbmcoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3RFbmFibGVkQnlTZXR0aW5nPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuY3BwCmluZGV4IDNhZjdkYjM0
MzE5NzFiZjY0NThiNWEzZTdmMjZiYjgyMTI3NTAzNzguLmUxOTUxMDY5ZTlmMWJjMDk0ODRkNGM0
MGYzMTA3NDcyMDk1Yjc2ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNw
cApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZSwgSlNUZXN0RW5hYgogCiB1c2luZyBKU1Rl
c3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0RW5hYmxlZEZvckNvbnRleHQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25z
dHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNs
b3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RW5hYmxlZEZvckNvbnRleHRDb25zdHJ1Y3RvciksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4
dFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRG
b3JDb250ZXh0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdm9p
ZCBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFi
bGVkRm9yQ29udGV4dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHQpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dCkgfTsKIAogSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6
OkpTVGVzdEVuYWJsZWRGb3JDb250ZXh0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEVuYWJsZWRGb3JDb250ZXh0PiYmIGltcGwp
CiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEVuYWJsZWRGb3JDb250ZXh0PihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9y
LmNwcAppbmRleCBjODhlZDIxY2NmOWEwOTZhMzM2YmI0MzBjNzA3YzMyZmQzZWFiOWI2Li5kZTg3
YzkxOTg1YzdjZGViMTAyOWJlMzkzNTAyMzJmOTg5ZjkwNDlmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2
ZW50Q29uc3RydWN0b3IuY3BwCkBAIC0xOTQsNyArMTk0LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRP
TUNvbnMKIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdEV2ZW50Q29uc3RydWN0
b3JET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0
cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RF
dmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0
cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50Q29uc3RydWN0
b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjI0LDcgKzIyNCw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RF
dmVudENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3Rv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1
Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEV2
ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIz
Myw3ICsyMzMsNyBAQCB2b2lkIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVu
dENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEV2ZW50Q29u
c3RydWN0b3I6OkpTVGVzdEV2ZW50Q29uc3RydWN0b3IoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RXZlbnRDb25zdHJ1Y3Rvcj4m
JiBpbXBsKQogICAgIDogSlNFdmVudChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCmluZGV4IDdiZmQxZTkyMDQxODg1ZTJhZjZj
MmQ1MGJjMDMyMGM0NmM5OTNlMjAuLjVhY2NmMGU2NTIxODhlOWM5YzQwODRlYzA2N2MwNjg3Mjkw
ZjlkNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcApAQCAtOTMsNyArOTMsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlw
ZSwgSlNUZXN0RXZlbnRUYXJnZQogCiB1c2luZyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVj
dG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RXZlbnRUYXJnZXQ+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdl
dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRU
YXJnZXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50
VGFyZ2V0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsxMTcs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5
cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJpdGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RFdmVudFRhcmdldFByb3RvdHlw
ZUZ1bmN0aW9uX2l0ZW0pLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdl
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZl
bnRUYXJnZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVu
dFRhcmdldFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0
RXZlbnRUYXJnZXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFy
Z2V0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJU
ZXN0RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXQpIH07CiAKIEpTVGVzdEV2ZW50VGFyZ2V0
OjpKU1Rlc3RFdmVudFRhcmdldChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFdmVudFRhcmdldD4mJiBpbXBsKQogICAgIDogSlNF
dmVudFRhcmdldChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNl
cHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEV4Y2VwdGlvbi5jcHAKaW5kZXggMTFkYzVlYWVmZjczZTVmM2YwZGYwODFiZGM2ZDE1OWNiMDE5
MDczZi4uOTdjZjhkMzViMTUyY2QxMDVlOWQyYjAyODRjMmMwOWJiMzRkYmE5MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEV4Y2VwdGlvbi5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlLCBKU1Rlc3RFeGNlcHRpb25Qcm8K
IAogdXNpbmcgSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4
Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dEV4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVz
dEV4Y2VwdGlvblByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIm5hbWUiLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9w
ZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RXhjZXB0aW9uX25hbWUpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEV4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVz
dEV4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb24pIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEV4Y2VwdGlvbikgfTsKIAogSlNUZXN0RXhjZXB0aW9uOjpKU1Rlc3RFeGNlcHRp
b24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qs
IFJlZjxUZXN0RXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEV4Y2Vw
dGlvbj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVB
ZGRPcGFxdWVSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCmluZGV4IGVlM2FmMWYxZjU5Mjg5Nzg3
YTlkZTUwYWYxNzk4NDFlYTExZWJiNjQuLjhlZDZjNDhmMGM1YjAzNjUzOTJlZGVjNTBhOTUwZThl
NDJlOGEzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3Bw
CkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZSwgSlNUZXN0CiAKIHVzaW5nIEpTVGVz
dEdlbmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290PjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29u
c3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1
ZVJvb3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTExLDcgKzExMSw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
b3RQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJzb21lQXR0cmlidXRlIiwgc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJv
cGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdF9zb21l
QXR0cmlidXRlKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZh
bHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdl
bmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBKU1Rlc3RHZW5lcmF0
ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290KSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QpIH07CiAKIEpTVGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdDo6SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290KFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0
ZUFkZE9wYXF1ZVJvb3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwCmluZGV4IDVmNTk1ODU4ZWRk
YzljYjg4ZWY3ZTE0MWY1MTcxNzQ1MDkzOWQwM2QuLmM4NDk1NGE4YzA2OGI0OTk4OWE3MjFlZWI2
YjQ3NmUyMjc3ZDU3YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5j
cHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSwgSlNUZXN0R2UKIAogdXNpbmcgSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFi
bGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICAgICB7ICJhU2VjcmV0QXR0cmlidXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUp
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVfYVNlY3JldEF0dHJpYnV0ZSksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1Jl
YWNoYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVh
Y2hhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMCw3
ICsxMzAsNyBAQCB2b2lkIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNf
aW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNfaW5mbyA9
IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUpIH07
CiAKIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OkpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RHZW5lcmF0ZUlzUmVhY2hhYmxlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKaW5kZXggNGYxNGE2OWEyMGYwYTMwMTM5
OTQwN2RjMDBiYzgwNjVlZDJkYjkwZC4uOTQyMzQ3MzhlNDAwMjI5NTNjOWU5ODIxOGY2MDNiY2Q1
M2NiMDkzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKQEAgLTYyMSw3ICs2MjEsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0R2xvYmFsT2JqZWN0Q29uc3RydWN0
b3JUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHbG9i
YWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07
CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNjUzLDcgKzY1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07
CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFi
bGUgPSB7IDEsIDEsIHRydWUsIEpTVGVzdEdsb2JhbE9iamVjdDo6aW5mbygpLCBKU1Rlc3RHbG9i
YWxPYmplY3RQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBl
VGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RH
bG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xv
YmFsT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0Il9zLCAmQmFz
ZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtNjYxLDcgKzY2MSw3IEBAIHZvaWQgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIlRlc3RHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0KSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiVGVzdEds
b2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdEdsb2JhbE9iamVjdFRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdCkgfTsKIAogSlNU
ZXN0R2xvYmFsT2JqZWN0OjpKU1Rlc3RHbG9iYWxPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2xvYmFsT2JqZWN0PiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEdsb2JhbE9iamVjdD4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggYTc2NGM4ZjI3NDU1MjZhODlkMjM4OGFhMjVi
YWY0OGVlMGNlOGMyNy4uZGQ3NjU5MGEyYzI4ZDI1NjllOGEwZDVhYmU2NmQ3ZjU1ZTJhNjRkOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApA
QCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPjsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFs
dWVzWwogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5
U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdf
V0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRp
ZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDg4MmZmMDQ3YjhiZDI4MGM2Yzg2
NTYxMWRkMWY1NWVmOTM3NzZiMGIuLmFkZGM1NDhkNzljY2Y5ODc2YWY5NzNkOTQyNzMxNWIwOGFk
Y2MxYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlw
CiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVj
dG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGVUYWJsZVZhCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQ
dXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyAr
MTE4LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAi
VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bjo6SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyLmNwcAppbmRleCAyYWM2ZDcxZDU2MzI3ZDlhNmNjZDgwNjIwNWE1MjVhM2ZjZmM2NDM1
Li4xOTk1YmY4MDAyNTliOWVkZmFhYTFhYjI0MjY3ZDhiMGZlZDBlYTI5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTMsNyAr
OTMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsCiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0
cnVjdGFibGU8SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGVUYWJsZVZhbHVlCiAgICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkg
KDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElk
ZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
KSB9OwogCiBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdEluZGV4ZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFj
ZS5jcHAKaW5kZXggZWNiMDU0ODQwNmYxZGU0ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uZGZk
MWQ0ZmM3NmZkNmMzM2U0YTEzNzkyOTFlYWQ1YmY5NzQxOTRmOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFj
ZS5jcHAKQEAgLTI5Myw3ICsyOTMsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3RvcgogfQogSlND
X0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3JDb25z
dHJ1Y3QsIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdEludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC00NTcsNyArNDU3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2VuZGlm
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbnRlcmZhY2VQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTQ3OSw3ICs0NzksNyBAQCB2b2lk
IEpTVGVzdEludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZh
Y2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0
SW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZSkgfTsKIAogSlNUZXN0SW50ZXJmYWNlOjpKU1Rlc3RJ
bnRlcmZhY2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0SW50ZXJmYWNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVz
dEludGVyZmFjZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBAIC0x
MTMyLDExICsxMTMyLDExIEBAIHVzaW5nIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSA9
IEpTRE9NSXRlcmF0b3JQcm90b3R5cGU8SlNUZXN0SW50ZXJmYWNlLCBUCiBKU0NfQU5OT1RBVEVf
SE9TVF9GVU5DVElPTihUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGVOZXh0LCBUZXN0SW50
ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6
OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50
ZXJmYWNlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpD
bGFzc0luZm8gVGVzdEludGVyZmFjZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNl
IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBU
ZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJh
dG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBU
ZXN0SW50ZXJmYWNlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3Ii
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
VGVzdEludGVyZmFjZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNz
SW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRl
cmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpT
Qzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdEludGVyZmFjZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGUpIH07
CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlUHJvdG90eXBl
RnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSosIEpTVGVz
dEludGVyZmFjZSogdGhpc09iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJm
YWNlTGVhZGluZ1VuZGVyc2NvcmUuY3BwCmluZGV4IGE4MzNjODQ0ZGEwMDIzZGQ1MWViNzc3Yzk4
NWU1NjJiZjUxYThjYjIuLjU1NmIwNjJkM2U3N2IyYmNhODhhZjU5OTUwNzlhNDM3YjQxZjk5YmUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNw
cApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJz
Y29yZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVy
c2NvcmUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90
b3R5cGVUYWJsZVZhbHVlcwogICAgIHsgInJlYWRvbmx5Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUp
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlX3JlYWRvbmx5KSwgKGlu
dHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3Jl
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVy
c2NvcmVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBA
QCB2b2lkIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZh
Y2VMZWFkaW5nVW5kZXJzY29yZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VM
ZWFkaW5nVW5kZXJzY29yZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNj
b3JlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlKSB9OwogCiBKU1Rlc3RJbnRlcmZh
Y2VMZWFkaW5nVW5kZXJzY29yZTo6SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBl
cjxUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAKaW5kZXggNWY0ZmE2OWZhOGQxYjAx
MTkxZDdhNDg0MjFiZWM5MzFhODk1NmFmMi4uNTMxMjk1NmI3YmFkMDRiZTMxMDkyZmFmZGEzYjdi
NWYxMzE2MTViZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlLCBK
U1Rlc3RJdGVyYWJsZVByb3RvCiAKIHVzaW5nIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJdGVyYWJsZT47CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RJdGVyYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZURPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZvckVh
Y2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkg
KDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJh
YmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEl0ZXJhYmxlUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzMsNyArMTMzLDcgQEAgdm9p
ZCBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVy
YWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RJdGVyYWJsZSkgfTsKIAogSlNUZXN0SXRlcmFibGU6OkpTVGVzdEl0ZXJhYmxl
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdEl0ZXJhYmxlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEl0ZXJhYmxl
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKQEAgLTIyNywxMSArMjI3
LDExIEBAIHVzaW5nIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRv
clByb3RvdHlwZTxKU1Rlc3RJdGVyYWJsZSwgVGVzCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElP
TihUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZU5leHQsIFRlc3RJdGVyYWJsZUl0ZXJhdG9y
UHJvdG90eXBlOjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVz
dEl0ZXJhYmxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRl
c3RJdGVyYWJsZUl0ZXJhdG9yQmFzZSkgfTsKLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJdGVy
YWJsZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJs
ZUl0ZXJhdG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JC
YXNlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0
b3JCYXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3I6OnNf
aW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SXRlcmFibGVJdGVyYXRvcikgfTsK
IAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRl
cmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVy
YXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9yIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVy
YWJsZUl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgaW5saW5lIEVuY29kZWRKU1ZhbHVl
IGpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9i
amVjdCosIENhbGxGcmFtZSosIEpTVGVzdEl0ZXJhYmxlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggNzFmNjFjMmE2MGZhOTg2
MmMxMzg3Y2U2YmJlMTZmNjk0MjNkMzZlOS4uMGIyMmFhMzRiMjgzMzU4NmEzZjlhNjcwMTZlOGQy
NGFhNmU3MjY0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3Bw
CkBAIC04OSw3ICs4OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlLCBKU1Rlc3RKCiAKIHVzaW5nIEpTVGVz
dEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1
Y3RvcjxKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25z
dHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgInRlc3RDdXN0b21GdW5jdGlvbiIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SlNCdWlsdGluQ29uc3Ry
dWN0b3JQcm90b3R5cGVGdW5jdGlvbl90ZXN0Q3VzdG9tRnVuY3Rpb24pLCAoaW50cHRyX3QpICgw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWls
dGluQ29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWls
dGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1
Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTMyLDcgKzEzMiw3IEBAIHZvaWQgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWls
dGluQ29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2Jq
ZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKaW5k
ZXggYmI2ODhmY2I0YThmNzIzN2VlOTc5NmFkMTkzYTk4Njc0NGFkZGQ1MC4uOGM3NDYwMmYzNWM2
NDY4ZWUyOWU1ZDhkZjRjMGYyNDQ0NzM0NzE4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eUZhY3RvcnlGdW5jdGlvbi5jcHAKQEAgLTg4LDcgKzg4LDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlLCBK
U1Rlc3QKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0
aW9uPjsKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5j
dGlvbiA9IEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uPEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlG
dW5jdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0
aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZh
Y3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTE0MCw3ICsxNDAsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTExfQVRUUklCVVRFUyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZQogfQogSlNDX0FO
Tk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFj
dG9yeUZ1bmN0aW9uQ29uc3RydWN0LCBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lG
YWN0b3J5RnVuY3Rpb246OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZv
ID0geyAiQXVkaW8iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlv
bikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiQXVkaW8iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5
RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RMZWdhY3lGYWN0b3J5RnVu
Y3Rpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgSlNUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiBKU1Rl
c3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OkpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbihTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuY3BwCmlu
ZGV4IDFjODM0OTBiNjdhMTFjYzg4YjNhNWViODJiOTE3MjhiNWRmODM1MTIuLmZhNzYwOTE2MjE0
ZjZhYjY4MjM5ODI3ZWJlYTUyYjZkMDRmY2M3Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExl
Z2FjeU5vSW50ZXJmYWNlT2JqZWN0LmNwcApAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZVRh
YmxlVmFsdWVzW10KICAgICB7ICJDT05TVEFOVDIiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
b250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcp
KDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9i
amVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExl
Z2FjeU5vSW50ZXJmYWNlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rlc3RM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsg
IlRlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVj
dCkgfTsKIAogSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OkpTVGVzdExlZ2FjeU5vSW50
ZXJmYWNlT2JqZWN0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zLmNwcAppbmRleCBlMmIxZjgwNDk2OTAxZTZlODcyYTA2YmNkYmVhMDBkNDk4
OTlhNGEyLi41MzEyNDA1MzlmODc5NGUxMmIyOTBmMWQzNDVhMzcwZWE2MmI4NTZkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5
T3ZlcnJpZGVCdWlsdElucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCkBAIC05Myw3ICs5Myw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnNQcm90b3R5cGUsIEpTVGVzCiAKIHVzaW5nIEpTVGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibmFtZWRJdGVtIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zUHJvdG90eXBlRnVuY3Rpb25fbmFtZWRJdGVtKSwgKGludHB0cl90KSAoMSkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0TGVnYWN5T3ZlcnJp
ZGVCdWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TGVn
YWN5T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucyhTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE1hcExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE1hcExpa2UuY3BwCmluZGV4IGQ1ZWExNGMxMjk2MzUwY2FmNWNlODE3OWJhYjli
MzRhNTUxZGIzMTUuLmUxYjZlOTAzNGU4M2YzYzQwZGVlNWEyNDk3NDBjYzQ4YjM0ZTczZjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RN
YXBMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TWFwTGlrZS5jcHAKQEAgLTEwMiw3ICsxMDIsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90eXBlLCBKU1Rlc3RNYXBMaWtlUHJv
dG90eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RNYXBMaWtlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFw
TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlr
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNiw3
ICsxMzYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVByb3Rv
dHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05h
dGl2ZUZ1bmN0aW9uPihqc1Rlc3RNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGlu
dHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RN
YXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE1hcExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFwTGlrZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZv
aWQgSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2UpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2Ui
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TWFwTGlrZSkgfTsKIAogSlNUZXN0TWFwTGlrZTo6SlNUZXN0TWFwTGlrZShTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RN
YXBMaWtlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2U+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCmluZGV4IDIwODBlN2U2ZGUx
NjM5MDk5ZGZiOGE1YTNhZDJlMmJmZDcwZWM5YTcuLmM3MzdhOWRmZWNhNDFjOTkyOTFjMGFiNjQ1
Yjk5YjVkM2IyZmJmMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zUHJvdG90eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rl
c3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
c0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsx
NDAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZVRhYmxlVgogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1h
cExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTUwLDcgKzE1MCw3IEBAIHZvaWQgSlNUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVz
dE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJh
dGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsKIAogSlNUZXN0
TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9ucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApp
bmRleCAyNDcwMmVmMTU4ZmRmY2U4MWRiYjRmY2ExNThhZTYzNjg3YThlNGYxLi5jYWMzMzY4YTVi
N2M1YWExNjU3OGY1NTU1NDYyODRmMzFjYzhmY2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODYsNyAr
ODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90bwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJv
dG90eXBlVGFibAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyKSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEFuZEluZGV4ZWRT
ZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RG
TW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDFjZTIzMzYxYjM3OGQ3YjE3
NzJhOTk3ZGY3ZWJmYTk5NjA4NTg3NjYuLmJmOWE1YWIwYjQwZjk2OWQwOTc5MzMxNGRjMzlmMjlj
MzBmZTZiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbgogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0
cnVjdGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cAogICAgIHsgImNvbnN0
cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xv
dDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6
OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24p
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsK
IAogSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDhmMjRiYTE2YjZi
M2I1YWMyMDNkMmY2NDE2NDUwNGUyNjIwZjU1YzkuLjNhZTJjOTMzNWFmZWEyNWQ0ZmYwZmFhNzM3
OGRjNmVmZTE4ZGY1ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllclBybwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRl
bnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXJQcm90b3R5cGVUYQogICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciks
IChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXI6OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVs
ZXRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggZjRjZTBlNDFlNWUzYTAyNmJjYzViM2UwNDcwZWYx
NDMxYzg3YTRlYy4uNTg3Yzk1YmVmMDMxMDUzNzIwYjMxMjM4NjFjOTkyNjJhYTEzNTkwNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKQEAgLTg1
LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFt
ZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1QKIAogdXNpbmcgSlNUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJO
b0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVz
dE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJj
b25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0
eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyQ29uc3Ry
dWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVG
dW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9J
ZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlm
aWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRp
ZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2
b2lkIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lk
ZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlm
aWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
RGVsZXRlck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
OjpKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWREZWxldGVyTm9JZGVu
dGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRl
eCA3OTFjZGEyMWVmNTMzZDFkNWM2YzE0MDQ5MDVjMjg4ZmZkOTJmNWFlLi4xZDIxMTMyMWUyZTU1
OWIyNWIzZjI2NjVhZmQ1YjEyMjYzMDFkMTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RB
VElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dp
bmdFeGNlcHRpb25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdF
eGNlcHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0
aW9uUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3Rh
dGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgs
NyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhP
VVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OkpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRl
clRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuY3Bw
CmluZGV4IDNhOThkNTlkMzhiNzFiMDE2NWMxYjJhZWYyM2JlZjgwOWFkZWM3NDYuLjg1MWVkOWNi
ODkzMmNjODM1NGY1OWZjOTFlNTI0YjQ3Y2M0MTc4ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRp
Zmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTIsNyArOTIsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRp
ZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldp
dGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlcwogICAgIHsg
Im5hbWVkRGVsZXRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdO
YXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVG
dW5jdGlvbl9uYW1lZERlbGV0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxl
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJX
aXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0TmFt
ZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlm
aWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRE
ZWxldGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlm
aWVyOjpKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZERlbGV0ZXJX
aXRoSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVy
LmNwcAppbmRleCAyZWFjMTZmNDk5NmNkYWQ3NmNmYzFjYWYwN2FmOGEyNmIyMDdmZTE5Li4xMzM4
NmIyZjMxNzg5OTRhYTdkYTExOGRlNzRlOTFkNjQyMGQ3M2VmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElu
ZGV4ZWRHZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKQEAgLTg2LDcgKzg2
LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxl
dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVy
V2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25z
dHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0
dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRH
ZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhl
ZEdldHRlckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTAsNyArMTEw
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
bmRleGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVu
Yz4oanNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJDb25zdHJ1Y3RvciksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdl
dHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJX
aXRoSW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSW5kZXhlZEdldHRlcikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRH
ZXR0ZXI6OkpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RG
TW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNwcAppbmRl
eCBjYzEwMjBjM2RjY2ZhMmRiZGU2MGNkNjc5NTQyYzdjZWQ3ZWMzYzA1Li5mNjBiNGY2Y2Y4YWE0
ODlkMThkOWYyOGRkM2NiYjhmMjU1MjNkMjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0
dGVyQ2FsbFdpdGguY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGUsIEpTVGVzdE5h
CiAKIHVzaW5nIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvciA9IEpTRE9N
Q29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVz
dE5hbWVkR2V0dGVyQ2FsbFdpdGhDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRHZXR0ZXJDYWxsV2l0aCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRo
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVz
dE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdl
dHRlckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNh
bGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVy
Q2FsbFdpdGg6OkpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRHZXR0ZXJDYWxs
V2l0aD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlckNhbGxXaXRo
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuY3BwCmluZGV4IGExOWRmOWRlZWQ4ODk2ODEx
YWQ1ZjJkMmQzNTliZmI3N2VjY2IxZmEuLjg0YjY2MDk5M2Q4ZTNjMzM0NWM2YzI0YTE0OTBkYzBi
MjZjMjJhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVy
LmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJM
RShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSwgSlNUZQogCiB1c2luZyBK
U1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0
ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdCiAgICAgeyAi
Y29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyQ29uc3Ry
dWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVG
dW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lk
ZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZEdldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50
aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rlc3ROYW1lZEdl
dHRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmll
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKaW5kZXggOGIzNDhhYzRlMmU3YjZkZTgzNGNkNzUx
OTk3ODRjZTcxODY2MzZmYi4uNTcwNzE0NDJlNzg1OTI3OTY3ODg2ZDI3ZTc2ZWNiNmI4YjY5NWFk
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNw
cApAQCAtOTAsNyArOTAsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyPjsKIAot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmll
ckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhYmxl
VmFsdWVzWwogICAgIHsgImdldHRlck5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZp
ZXJQcm90b3R5cGVGdW5jdGlvbl9nZXR0ZXJOYW1lKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdl
dHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdl
dHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI0LDcgKzEyNCw3IEBAIHZvaWQgSlNUZXN0
TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAi
VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZp
ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6
c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0
ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6
SlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlcldpdGhJZGVu
dGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyV2l0aElk
ZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggZWEyZWRlZTlh
Yjg0NWIwNTNhYWNmMDhmZWI1NzcxNzI5MWQxNmJkOS4uNGNiZjY2ZTNkOGI1MmQwNTMzZGFjYzBl
YTkxZmMyNDg1ZDY2MzQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lk
ZW50aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1RlCiAK
IHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmll
cj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRp
ZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10K
ICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZp
ZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9J
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVy
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAg
dm9pZCBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50
aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVz
dE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93
aW5nRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRleCA4Mjk0MmRiNTI5
NzE3YzIwMGE1YWM1MmIyNmUxNDI3YTMzOGU3MWY0Li5iNDk1MjM5ZTNhYzg3ZjAyYjViZmQ2ZjIy
OGYyN2M4NjQ3MWIwZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90
b3R5cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5n
RXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWx1CiAg
ICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmNwcAppbmRleCBjN2Q3MmE3Y2E4MjU4MGFhZjY2M2E5MTk2NWEyZjhkMjAxM2Rm
OTE0Li43ODFhYjA1NWI0Y2UzMDA1ZGYyMWMzOWUwZmU4YmE5ZWU5NzM3NmJhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05Miw3ICs5
Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAg
eyAibmFtZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVG
dW5jdGlvbl9uYW1lZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRl
bnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNl
dHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50
aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVk
U2V0dGVyV2l0aElkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmNwcAppbmRleCA3ZDM0NWZmNDYy
YjkyZjFkZjBlNjlmNDM3NGNmMjIwNDFlMWFhNDQzLi42ZjdhNWI2MmI4OWFhNDNkOTg3OTgzMmY2
MWU2Yzg4NDY1ZWM0ODUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90
b3R5cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWx1CiAg
ICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclBy
b3RvdHlwZUZ1bmN0aW9uX2luZGV4ZWRTZXR0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyAr
MTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
KSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNl
dHRlci5jcHAKaW5kZXggNDc5NjY4MDM2NGMyZTYzMjg1MzRmMDlkNDQxMTZhYTQ1ZjQ2YjFmNS4u
ZGM2YzY2MmNlMDRkNWJmZmIxMTQxMmFlYmE3MzY0NGUwNWJmZTM4MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFS
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUAogCiB1c2lu
ZyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yKSB9
OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclBy
b3RvdHlwZQogICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4
ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGVGdW5jdGlvbl9pbmRleGVkU2V0dGVyKSwgKGludHB0
cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyQW5kU2V0dGVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
CiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlckFuZFNldHRlcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3Zl
cnJpZGVCdWlsdElucy5jcHAKaW5kZXggZTAxYzcwNTQxNmE4MzM4ZTI2NjlhYjE3NDU1YzFlY2Y2
YWEwNDU1Ny4uMzhiODU4MjE2NjRkNTYzYjFmMmYwODUwZTNmZGJhMzk3YzI0MTg3YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zLmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
UAogCiB1c2luZyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVC
dWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVC
dWlsdEluc1Byb3RvdHlwZQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0b3IpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWls
dEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3Zl
cnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVC
dWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
MTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0KICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBsKQogICAgIDogSlNE
T01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllcy5jcHAKaW5kZXggZjg1OWRlZGI2YmQxNDI5ZmFkYWVkM2Q0ZDNkOGQ5ZTE0ZGIxODdjNy4u
YTZkYzY2YThjODMxNmY3MWMxNzVkZmJmMTAzNDMzOTA0MzJjYTE3MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllcy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
VGFibAogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjppbmZvKCksIEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlVmFsdWVzLCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZUluZGV4IH07
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzUsNyArMTM1LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllc1Byb3QKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQ29uc3RydWN0b3IpLCAoaW50cHRy
X3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lk
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJ
VElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
czo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcz4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMuY3BwCmluZGV4IDZmYWQ3NWI3MzRlOWY5MTJmOTMyZTk4MzY5MWY3MDEwM2NkYmI2
Y2EuLmJmYmNkZTYzMzBlZjY3NDE4YWU2YmNlNTczNjY1Y2NiZTM0OTU5ZTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdElucy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5k
TAogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGUgPSB7
IDIsIDMsIHRydWUsIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OmluZm8oKSwgSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Rh
YmxlVmFsdWVzLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVn
YWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5k
TAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0
b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92
ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDQs
NyArMTQ0LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHIKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07CiAKIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92
ZXJyaWRlQnVpbHRJbnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlQ29uc3QuY3BwCmluZGV4
IDZjMmY5ZWU0YjY0NjhlNzBkODViY2NiZThjMTVjMWExM2I5OTIxNmIuLjQ1MmRkYzU0MzI4YWVm
YTFjYWUxMDliYjM3ZGNmMDM0NjY1NDczNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZUNvbnN0
LmNwcApAQCAtNTYsNyArNTYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZXNwYWNlQ29uc3RDb25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogc3RhdGljX2Fzc2VydChU
ZXN0TmFtZXNwYWNlQ29uc3Q6OlRFU1RfRkxBRyA9PSBmYWxzZSwgIlRFU1RfRkxBRyBpbiBUZXN0
TmFtZXNwYWNlQ29uc3QgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIHN0YXRpY19h
c3NlcnQoVGVzdE5hbWVzcGFjZUNvbnN0OjpURVNUX0JJVF9NQVNLID09IDB4MDAwMGZjMDAsICJU
RVNUX0JJVF9NQVNLIGluIFRlc3ROYW1lc3BhY2VDb25zdCBkb2VzIG5vdCBtYXRjaCB2YWx1ZSBm
cm9tIElETCIpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VD
b25zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZXNwYWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTcxLDcgKzcxLDcgQEAgdGVtcGxhdGU8PiB2b2lkIEpTVGVzdE5h
bWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZNJiB2bSwK
ICAgICBVTlVTRURfUEFSQU0oZ2xvYmFsT2JqZWN0KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVzcGFjZUNvbnN0OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVzcGFjZUNvbnN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0Ojpz
X2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3QpIH07CiAK
IEpTVGVzdE5hbWVzcGFjZUNvbnN0OjpKU1Rlc3ROYW1lc3BhY2VDb25zdChTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2Jq
ZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VPYmplY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9i
amVjdC5jcHAKaW5kZXggMDc2ZDYzNDI2NmE1YTJiM2Q0MmFkZTczN2Q2MWE3NDc1MDdjMGVkMi4u
ZGU5MGU5YTA2NjI4MzBkZjFjYzYyMjkzNmI1NjgxMWMwZDczODc4NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVj
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVzcGFjZU9iamVjdC5jcHAKQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdE5hbWVzcGFjZU9iamVjdENvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9
CiAjZW5kaWYKIH07CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFj
ZU9iamVjdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFtZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dEludGVyZmFjZU5hbWUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTMxLDcgKzEzMSw3IEBAIHRlbXBsYXRlPD4gdm9pZCBK
U1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRpZXMo
Vk0mIHZtCiAjZW5kaWYKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVj
dDo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RJ
bnRlcmZhY2VOYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkgfTsKIAogSlNUZXN0TmFtZXNwYWNl
T2JqZWN0OjpKU1Rlc3ROYW1lc3BhY2VPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgOiBKU0RPTU9iamVjdChzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCkgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKaW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdi
ZWI0MTNmY2MxZTQ2M2MxNWJiYy4uYjkwNGRmNmIzMDc3YWIyZGRhNzdkMjlmZjQ1ZjVjZDRmZTFm
NjI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROb2RlLmNwcApAQCAtMTM0LDcgKzEzNCw3IEBAIHRlbXBsYXRlPD4gRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rv
cjo6Y29uCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3ROb2RlRE9NQ29uc3Ry
dWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0Tm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
Tm9kZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3ROb2RlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3MSw3ICsx
NzEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Tm9kZVByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5vZGVQcm90b3R5cGVGdW5jdGlv
bl9mb3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3ROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5vZGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Tm9kZVByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjM1LDcgKzIzNSw3IEBAIHZvaWQgSlNU
ZXN0Tm9kZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
Tm9kZTo6c19pbmZvID0geyAiVGVzdE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0Tm9kZTo6c19pbmZvID0geyAiVGVzdE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZSkgfTsKIAogSlNUZXN0
Tm9kZTo6SlNUZXN0Tm9kZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROb2RlPiYmIGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0
dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBAIC00MzMsMTEgKzQzMywxMSBAQCB1
c2luZyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxK
U1Rlc3ROb2RlLCBUZXN0Tm9kZUl0ZQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oVGVzdE5v
ZGVJdGVyYXRvclByb3RvdHlwZU5leHQsIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQp
OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yQmFz
ZTo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3JCYXNlKSB9Owot
Y29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdE5vZGVJdGVyYXRvcjo6c19pbmZvID0geyAiVGVzdE5v
ZGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0
Tm9kZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJ
dGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yOjpz
X2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0Tm9kZUl0ZXJhdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZSkgfTsK
K2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0
YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2Vu
dHJpZXNDYWxsZXIoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqLCBKU1Rlc3ROb2RlKiB0aGlz
T2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCBiNDQ3Mzk1ZWUzN2M2NDIwYTI4NDExYjI2YzdjNTBk
YjI2Nzc5YWRjLi41OTY1YzliNjRlYWVmZWJjZDFhNzY4NWY5OTQ5MjY2MDdmYWJlNGY1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
T2JqLmNwcApAQCAtMjA2Myw3ICsyMDYzLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OmNvbnMKIH0K
IEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yQ29uc3Ry
dWN0LCBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
T2JqRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPYmpET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjQyOSw3ICsyNDI5LDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE9ialByb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogICAgIHsgInJlYWRvbmx5IiwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8
IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6Q29uc3RhbnRJbnRlZ2VyLCBOb0ludHJpbnNpYywgeyAobG9uZyBsb25nKSgwKSB9IH0sCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RPYmpQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9ialByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RPYmpQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTI1
MzksNyArMjUzOSw3IEBAIHZvaWQgSlNUZXN0T2JqUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmo6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCAmSlNUZXN0T2JqVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0T2JqKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9iajo6c19pbmZvID0geyAiVGVz
dE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE9ialRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9iaikgfTsKIAogSlNUZXN0T2JqOjpKU1Rlc3RPYmooU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0T2JqPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE9iaj4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsLmNwcAppbmRleCAyZTA3MGRjOTIzNTA3YTRlNzk5MWJlYTJhNjhmNTY0ZWQyYzA5
Y2FlLi44NThhYTRjOWVlODViYjhhMGVjOWVjYWI2MjE5NWNiNWRhODA3OTBlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9u
Q29uZGl0aW9uYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRp
b25hbFByb3RvdHlwZSwgSlNUZXN0TwogCiB1c2luZyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25h
bERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0
T3BlcmF0aW9uQ29uZGl0aW9uYWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25h
bERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNl
bmRpZgogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlv
bkNvbmRpdGlvbmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlv
bkNvbmRpdGlvbmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9u
YWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25k
aXRpb25hbDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPcGVyYXRp
b25Db25kaXRpb25hbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRp
b25hbDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlv
bkNvbmRpdGlvbmFsKSB9OwogCiBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6SlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWwoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+JiYgaW1wbCkKICAg
ICA6IEpTRE9NV3JhcHBlcjxUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnMuY3BwCmluZGV4IDQ5MjEwNDY1OTMyM2UxNzczMGU3ODgxNjFlYmY1N2Q2MGI5
NWM3ZjIuLjg1OWI5OWNlMTcyY2Y1NDJkMjdjOTU3OWI3MDVmNDcyMTc3NjdhMjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKQEAgLTIxOCw3ICsyMTgs
NyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRAogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJ
T04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0yNDIsNyArMjQyLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1
Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250
RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yKSwg
KGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMjUxLDcgKzI1MSw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycykgfTsKIAogSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yczo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyhTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2UuY3BwCmluZGV4IGQ3ZjEzNzQ2N2QyNWEwOWYyNjJmNzFiNWUwM2M3ZGRh
Mjg4MzY5ZGYuLjZmYzJmNGI1MzZiN2ZmZDg2YWEyMDMzNjMwNTZjZTUwZTZjZWVkMDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhT
ZXF1ZW5jZS5jcHAKQEAgLTE1NSw3ICsxNTUsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzVwog
fQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVu
Y2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNzksNyArMTc5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5
cGVUYWIKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQ
dXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMTg4LDcgKzE4OCw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6c19p
bmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZSkgfTsKIAogSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1
ZW5jZTo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZShTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNw
cAppbmRleCBkNTM3YWFiOGI0ZTRkZGZkMGIxZDZhMThjODA1ZmEwYjcxYzA5NTQwLi41MzgzODJh
ZTYyMzk2ZGNhODE3MzQ4ODJjMjkxMmFlNWVkYWQ0MTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2lu
SW50ZXJmYWNlLmNwcApAQCAtODQsNyArODQsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUsIEpTVGVzdFBsdWdpbgog
CiB1c2luZyBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFBsdWdpbkludGVyZmFjZT47CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVy
ZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTEwOCw3ICsxMDgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UGx1
Z2luSW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3Ii
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdFBsdWdpbkludGVyZmFjZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBz
dGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbklu
dGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJm
YWNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6c19pbmZvID0g
eyAiVGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2UpIH07CiAKIEpTVGVz
dFBsdWdpbkludGVyZmFjZTo6SlNUZXN0UGx1Z2luSW50ZXJmYWNlKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFBsdWdpbkludGVy
ZmFjZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RQbHVnaW5JbnRlcmZhY2U+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25F
dmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcAppbmRleCAwN2Q5YzcxZmI3NTM3NWE1YzUxNmMzMWJm
YTc5MjAwODExM2ZlNzQ1Li4zMDY3MmQyZGQ0MTUzYWQ0YjgzZGJkNTFiZTM5OWZlNGI0ZWFkNzFl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcApAQCAtMTk1
LDcgKzE5NSw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRS
SUJVVEVTIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPCiB9CiBKU0NfQU5OT1RBVEVfSE9T
VF9GVU5DVElPTihKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3RvckNvbnN0
cnVjdCwgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVj
dCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rpb25F
dmVudERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWpl
Y3Rpb25FdmVudERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTIyMCw3ICsyMjAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAicmVhc29u
Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5
IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFByb21pc2VSZWplY3Rpb25F
dmVudF9yZWFzb24pLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0
VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIyOSw3ICsyMjksNyBAQCB2b2lkIEpTVGVzdFByb21p
c2VSZWplY3Rpb25FdmVudFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudCkgfTsKIAogSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50OjpKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50PiYmIGltcGwpCiAgICAgOiBKU0V2ZW50KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNw
cAppbmRleCA0Zjk2MzA1OTVmZDE3ZTIyYWZkNDAxZTVhMDg1YjNjN2ZmOTExYzhjLi42MDQ2Y2Jh
Yzc4OTVmNzZjZTkwZjE4OTdmODllMGRmNmY0OWVhOTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9u
bHlNYXBMaWtlLmNwcApAQCAtOTksNyArOTksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGUsIEpTVGVzdFJlYWRPbgog
CiB1c2luZyBKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFJlYWRPbmx5TWFwTGlrZT47CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFw
TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTEzMCw3ICsxMzAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVh
ZE9ubHlNYXBMaWtlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5v
SW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNU
ZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkg
KDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBM
aWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgSlNUZXN0
UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RSZWFkT25seU1hcExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2Ui
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFJlYWRPbmx5TWFwTGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1h
cExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBM
aWtlKSB9OwogCiBKU1Rlc3RSZWFkT25seU1hcExpa2U6OkpTVGVzdFJlYWRPbmx5TWFwTGlrZShT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3RSZWFkT25seU1hcExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVh
ZE9ubHlNYXBMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RS
ZWFkT25seVNldExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKaW5kZXggMzRmZTg1N2QyM2U5YTZhNWFkOGZl
MjFjZTBmMWRhZjlkNTlmYmY4OS4uMTVlNjEzODg0ODQ1MjAwY2I3MjY4YzFhOGUzZTE2MmJhYTgw
NzMwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKQEAgLTk4LDcgKzk4LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0UmVhZE9ubHlTZXRM
aWtlUHJvdG90eXBlLCBKU1Rlc3RSZWFkT24KIAogdXNpbmcgSlNUZXN0UmVhZE9ubHlTZXRMaWtl
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RS
ZWFkT25seVNldExpa2U+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFk
T25seVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlr
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFJlYWRPbmx5U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjgsNyArMTI4LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlv
biksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlv
bj4oanNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRw
dHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExp
a2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5
U2V0TGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExp
a2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9u
bHlTZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTM4LDcgKzEzOCw3IEBAIHZvaWQg
SlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNl
dExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFJlYWRPbmx5U2V0TGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFk
T25seVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9u
bHlTZXRMaWtlKSB9OwogCiBKU1Rlc3RSZWFkT25seVNldExpa2U6OkpTVGVzdFJlYWRPbmx5U2V0
TGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3RSZWFkT25seVNldExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0UmVhZE9ubHlTZXRMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKaW5kZXggMDdm
NWY5MTExMGU5NjI1MzFmNWFhYjNlMWVmOTcyNjc4OTMwZTA5OS4uOWVkMGQ3YTk1NmNlZDc0YWYz
MTgzM2MwZTk0N2FmNWZjN2EwZjhhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdC5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlLCBKU1Rlc3QK
IAogdXNpbmcgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNv
c3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1l
bW9yeUNvc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xMDcsNyArMTA3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlcG9y
dEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVj
dG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6
R2V0VmFsdWVGdW5jPihqc1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RDb25zdHJ1Y3RvciksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4
dHJhTWVtb3J5Q29zdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRF
eHRyYU1lbW9yeUNvc3RQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdf
V0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRF
eHRyYU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFJlcG9ydEV4dHJhTWVtb3J5Q29zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRF
eHRyYU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0KSB9OwogCiBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNv
c3Q6OkpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZXBvcnRFeHRyYU1lbW9yeUNv
c3Q+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXggYmNh
MGJlNTU1YWU2ZWEyZTk0OTk2NThmNTUyNzI2M2YzZTlmZDVhMi4uNDExNjZlMjE1ZjNmM2U0N2Uz
NTNhZjM4MWRlMmZmMWUyMmE0YjYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2VQcm90b3R5cAogCiB1c2luZyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYQogICAgIHsgImZ1bmN0aW9uUmV0dXJuaW5nIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihq
c1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9mdW5j
dGlvblJldHVybmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJp
YWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXJp
YWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUlu
dGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ5LDcgKzE0
OSw3IEBAIHZvaWQgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlKSB9OwogCiBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6
OkpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTZXRMaWtlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmNwcAppbmRleCBlN2Q0NzZiY2MzNDNiNTgyN2E0NzRiMTk5
OWJkMDM1N2E3MjNlMjJlLi5iMzc1MTdlMDg2OTFmNzgzMDM1NTU3ZjliZjcyMDVhYjQ3ODQ3YTRl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2V0TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFNldExpa2UuY3BwCkBAIC0xMDEsNyArMTAxLDcgQEAgU1RBVElDX0FTU0VSVF9J
U09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSwgSlNUZXN0U2V0TGlr
ZVByb3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25z
dHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2V0TGlrZT47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dFNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNl
dExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0x
MzQsNyArMTM0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJkZWxldGUiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxS
YXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U2V0TGlrZVByb3RvdHlwZUZ1bmN0aW9uX2RlbGV0ZSks
IChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtl
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNldExp
a2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBA
QCB2b2lkIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRM
aWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFNldExpa2UpIH07CiAKIEpTVGVzdFNldExpa2U6OkpTVGVzdFNldExpa2UoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0U2V0TGlrZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAppbmRleCA0MDI0Mzlh
YjBjZDk0N2FlMmI3MjA5NzQ5MDc4MGZmMTNiOGE5NzE4Li4zNTJjODYzZjNhMWEwMjk1NTExMmI5
NjYxMWE5M2M3NzczYTI2ZWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9uc1Byb3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9uc0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8
SlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucz47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJh
dGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzgs
NyArMTM4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVUYWJsZVYKICAgICB7ICJjbGVhciIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zUHJvdG90eXBlRnVuY3Rpb25fY2xlYXIpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
c1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBKU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAg
SlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJU
ZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKSB9OwogCiBKU1Rl
c3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZp
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyLmNwcAppbmRleCBlYTI5MTM0ZjMyYTVlMmVkNDJiZWYxZTIzZWYyN2VmNzhmOWY1
OTg0Li5mZDk4Yjc0NGQ0YzZkMmYyMzY4Mzc0ZjE2ZjUyZDUxMjc3Y2MzNjU3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZp
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllci5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VC
U1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGUsIEpTVGVzdFN0cmluZ2lm
aWUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyPjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFN0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlRnVuY3Rpb25fdG9T
dHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
U3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3Ry
aW5naWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZp
ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5n
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U3RyaW5naWZpZXIpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyOjpKU1Rlc3RT
dHJpbmdpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3RTdHJpbmdpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
LmNwcAppbmRleCAwYmM2YzgyOWI2NzVhZmY3OTMxZTBmMmVmYWRlNDViMWNhMmVlODRhLi5jMWNl
M2M0Y2E2YjZlNjg0YzA5NjNmMjBkNGM3ODZjY2M5MDg0MmZjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1v
dXNPcGVyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5jcHAKQEAgLTg5LDcgKzg5
LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZp
ZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJB
bm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25z
dHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25E
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVy
YXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09w
ZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnlt
b3VzT3BlcmF0aW9uUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChp
bnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmll
ckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVy
QW5vbnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJh
dGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdp
ZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OnNfaW5mbyA9IHsg
IlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1v
dXNPcGVyYXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1v
dXNPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbikgfTsKIAogSlNUZXN0U3RyaW5n
aWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OkpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPiYmIGltcGwpCiAgICAgOiBK
U0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPihzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllck5hbWVkT3BlcmF0aW9uLmNwcAppbmRleCA3YzFlMjY5YjkzZmQyNWZjODE1Y2YzMGVm
MDI3ZWRjNDZkZDM4Njc4Li40NDM2NTEzNzEyOWNmOGQyZGM3MTFjNTNlN2Q5MTJkMzU4MTdmZmNh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3Bw
CkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE2LDcgKzExNiw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlVGFibGVW
YWx1ZXNbCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Q
cm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJO
YW1lZE9wZXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJO
YW1lZE9wZXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpTVGVzdFN0cmlu
Z2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RT
dHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFt
ZWRPcGVyYXRpb24pIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OkpTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlv
bj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0
aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbkltcGxlbWVudGVkQXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAK
aW5kZXggNTUzMzY3OWM4NjYyNjEwZjI4MWQyZmViMTBlNTUxZGYxM2FmMzBjYi4uOWFiYTY0NmI3
ZmE4MmY1M2FiNDllZTA3ODAwYWM0ODc0OTMyMWZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1w
bGVtZW50ZWRBcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKQEAgLTkwLDcg
KzkwLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG8KIAogdXNpbmcgSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRl
ZEFzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcyJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1By
b3RvdHlwZVRhYmwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25J
bXBsZW1lbnRlZEFzUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9
IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25J
bXBsZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lk
IEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRl
ZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpzX2luZm8gPSB7
ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBcykgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25J
bXBsZW1lbnRlZEFzOjpKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcz4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1l
ZFRvU3RyaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCmluZGV4IGMwNjVkNzJh
N2ZiMTBiOWY2NmUwYjc5ZTg3NDYxZWJjYzY4YTk1NjcuLmNiZGY4YWFmZWM4YzQ0MWMxOTdiODlh
MWJjYjQxZWYwOGQ2MjQzNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCkBAIC04OSw3ICs4OSw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
TmFtZWRUb1N0cmluZ1Byb3RvCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1l
ZFRvU3RyaW5nRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTE0LDcgKzExNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGVUYWJsCiAg
ICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1By
b3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmcpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uTmFtZWRUb1N0cmluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RT
dHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmc+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVh
ZE9ubHlBdHRyaWJ1dGUuY3BwCmluZGV4IDliZGM0ZTMwMjk3MGE2MjI5NzBjZTVmZGM2MGMwMjIw
MDJjYTAzMGYuLjNjYWVkODgyNzQ0NzEyNDUyNzE4OTMwYThmYTQxMzllNzQ2NjgwZmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAK
QEAgLTkxLDcgKzkxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZT47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlB
dHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVh
ZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25s
eUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTcsNyAr
MTE3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUmVh
ZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGVUYWJsZVZhbHUKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwg
KGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lm
aWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
clJlYWRPbmx5QXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1
dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1
dGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0
ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3Ry
aW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSkgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJSZWFkT25s
eUF0dHJpYnV0ZTo6SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZShTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJp
bmdpZmllclJlYWRPbmx5QXR0cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZS5jcHAKaW5kZXggZWZiYzRlNjM1YWY4ZDk2MjJjNTBjM2IyMDdjOWU5YmU1
YWVhNDBhYS4uODQwYzVlNmUyZmZmMTFhYzgzYTQzNDNlMjVmMjQ5OTA3MjhkMDA3ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmlu
Z2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3Bw
CkBAIC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVz
dFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0
cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0
ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdy
aXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVy
UmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0
ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZp
ZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJp
bmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZVRhYmxlVmFsCiAgICAgeyAidG9TdHJp
bmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlRnVuY3Rpb25f
dG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVB
dHRyaWJ1dGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJS
ZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQg
SlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
OjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmlu
Z2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUpIH07CiAK
IEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpKU1Rlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0
ZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFn
Z2VkV3JhcHBlci5jcHAKaW5kZXggZGRiOTY1ZGQ2ZmU2NTQ5MTNkOTJkZjlmODIzYzFhM2JjY2Zi
OTdlMi4uZmZhMGNlNzdjYzI5ZjE0NjI5NTEzMmU3NzcwZmRiNDIwYTU0NTNmNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdy
YXBwZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RUYWdnZWRXcmFwcGVyLmNwcApAQCAtODMsNyArODMsNyBAQCBTVEFUSUNfQVNTRVJUX0lT
T19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlLCBKU1Rlc3RU
YWdnZWRXcgogCiB1c2luZyBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RUYWdnZWRXcmFwcGVyPjsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBl
ckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdn
ZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RU
YWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNyw3
ICsxMDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0VGFnZ2VkV3JhcHBl
clByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3RUYWdnZWRXcmFwcGVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1
dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdy
YXBwZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdyYXBwZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RUYWdnZWRXcmFw
cGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTYsNyArMTE2LDcg
QEAgdm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2Vk
V3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdn
ZWRXcmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFw
cGVyKSB9OwogCiBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpKU1Rlc3RUYWdnZWRXcmFwcGVyKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dFRhZ2dlZFdyYXBwZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0VGFnZ2VkV3Jh
cHBlciwgU2lnbmVkUHRyVHJhaXRzPFRlc3RUYWdnZWRXcmFwcGVyLCBUZXN0VGFnZ2VkV3JhcHBl
clB0clRhZz4+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVk
ZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RU
eXBlZGVmcy5jcHAKaW5kZXggYzJiY2VlYTEyZjY3YWY1NjU3ZGU1ZTllOGVhYWI3YWQ1Y2NjMmFj
MC4uYmMxOWI4M2Q4NjYzZDhlNGZhMmFhZjFhNmJhZDQ3MmRkNDgxYTFjYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlw
ZWRlZnMuY3BwCkBAIC0xODcsNyArMTg3LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcjoKIH0K
IEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3JD
b25zdHJ1Y3QsIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RUeXBlZGVmcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMjMyLDcgKzIzMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNhbGxX
aXRoU2VxdWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1
bmN0aW9uX2NhbGxXaXRoU2VxdWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlKSwgKGludHB0cl90KSAo
MSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0VHlwZWRlZnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VHlwZWRl
ZnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0VHlwZWRlZnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0VHlwZWRlZnNQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTI0MSw3ICsyNDEsNyBAQCB2b2lk
IEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RUeXBlZGVmczo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIiwgJkJhc2U6OnNfaW5m
bywgJkpTVGVzdFR5cGVkZWZzVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0VHlwZWRlZnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnM6OnNfaW5mbyA9
IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdFR5cGVkZWZzVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnMpIH07CiAKIEpTVGVz
dFR5cGVkZWZzOjpKU1Rlc3RUeXBlZGVmcyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RUeXBlZGVmcz4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RUeXBlZGVmcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggM2Q5NDdhMzE5YTUw
YjI0MGMxZTZkZTFlODczNWZhM2ZmZDI5YzExMi4uZWMwMTI3MTRmMGM5Nzg0Mzg2ODRmNGVhMDlk
NmNmOTgxYzViZDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtOTksNyAr
OTksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZVRh
YmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtlckdsb2Jh
bFNjb3BlVGFibGUgPSB7IDYsIDE1LCB0cnVlLCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCks
IEpTV29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxl
SW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFs
U2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTV29y
a2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2Nv
cGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25z
dCBIYXNoVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0
cnVlLCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXgg
fTsKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1dvcmtlckdsb2JhbFNj
b3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJH
bG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNj
b3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgJkpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTEzOCw3ICsxMzgsNyBAQCB2b2lkIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9
IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xvYmFsU2Nv
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3Bl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldv
cmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGUpIH07
CiAKIEpTV29ya2VyR2xvYmFsU2NvcGU6OkpTV29ya2VyR2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBK
U0V2ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2xl
dEdsb2JhbFNjb3BlLmNwcAppbmRleCBlZGYxZjE2ZmMxYTAwNzdjMDM3OTQxYTFiZmQyMmRiY2Uy
NDc1MzM0Li5mNWY4NWFmNDgxZDFkYzI5Yjc5ODljYzc3NmI2OWViZmE0YWFhNzE0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xv
YmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTY4LDcgKzY4LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9Owog
CiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUgPSB7IDEs
IDEsIHRydWUsIEpTV29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2xldEdsb2JhbFNj
b3BlVGFibGVWYWx1ZXMsIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2Nv
cGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xl
dEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1dv
cmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC05
OCw3ICs5OCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1dvcmtsZXRHbG9iYWxT
Y29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZSBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1dv
cmtsZXRHbG9iYWxTY29wZTo6aW5mbygpLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRh
YmxlVmFsdWVzLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNv
bnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAi
V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xv
YmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2Nv
cGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZTo6c19p
bmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEds
b2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xv
YmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5m
byA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEds
b2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xv
YmFsU2NvcGUpIH07CiAKIEpTV29ya2xldEdsb2JhbFNjb3BlOjpKU1dvcmtsZXRHbG9iYWxTY29w
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V29ya2xldEdsb2JhbFNjb3BlPiYm
IGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVj
dC5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCmlu
ZGV4IGRiMzU4MGI4YjUxZWJlY2YzZTk4M2JiMjAwM2FkMjM1MDc0ZWNiMTkuLjliNjMyMmY0NjM0
YjU5NGQ0Mzk0ZmVlOTQwZDRmYTk0NjIyZDQwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCkBAIC0zMyw3ICszMyw3IEBACiBuYW1lc3Bh
Y2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpDUnVu
dGltZU9iamVjdDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVPYmplY3QiLCAmUnVudGltZU9iamVj
dDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50
aW1lT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2luZm8g
PSB7ICJPYmpDUnVudGltZU9iamVjdCJfcywgJlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU9iamVjdCkgfTsKIAog
T2JqQ1J1bnRpbWVPYmplY3Q6Ok9iakNSdW50aW1lT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFJlZlB0cjxPYmpjSW5zdGFuY2U+JiYgaW5zdGFuY2UpCiAgICAgOiBSdW50aW1l
T2JqZWN0KHZtLCBzdHJ1Y3R1cmUsIGluc3RhbmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9v
YmpjL29iamNfaW5zdGFuY2UubW0KaW5kZXggNWIxYTgzNTNkOTAyZTFmOGQ3MzYyOGM2OTBiM2Y3
NGIyMGYxY2ZlNC4uNmFmNmVhMmI5MzAwNGU3OWEyNDZhNDMyYjVkZTU0YTIzMGU0NDZhYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCkBAIC0yMDUsNyAr
MjA1LDcgQEAgcHJpdmF0ZToKICAgICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gT2JqQ1J1bnRp
bWVNZXRob2Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRob2Q6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGlt
ZU1ldGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU1ldGhvZDo6c19pbmZvID0g
eyAiT2JqQ1J1bnRpbWVNZXRob2QiX3MsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07CiAKIEpT
Qzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmdldE1ldGhvZChKU0dsb2JhbE9iamVjdCogbGV4aWNh
bEdsb2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbSBiL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQppbmRleCBiNDZjNTZmZDAxMDUwODY5NTdk
Y2UzMmRkNWY2NjY1NjljNGNhNmQzLi4xNWNiNmEwOGU1YzM1YzE3MjJjZGQzN2NhMzhhYzVjYTk0
NGZhMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRp
bWUubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCkBA
IC0yMTUsNyArMjE1LDcgQEAgdW5zaWduZWQgaW50IE9iamNBcnJheTo6Z2V0TGVuZ3RoKCkgY29u
c3QKICAgICByZXR1cm4gW19hcnJheSBjb3VudF07CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpj
RmFsbGJhY2tPYmplY3RJbXA6OnNfaW5mbyA9IHsgIk9iamNGYWxsYmFja09iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqY0ZhbGxi
YWNrT2JqZWN0SW1wKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamNGYWxsYmFja09iamVjdEltcDo6
c19pbmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsK
IAogT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpPYmpjRmFsbGJhY2tPYmplY3RJbXAoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIE9iamNJbnN0YW5jZSog
aSwgY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVj
dChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50
aW1lX2FycmF5LmNwcAppbmRleCBhOWVhNjQyOGM1ZDExN2Y2ZmUyOGJkMGNjMTEyNDgzMjQxNmYx
OWM1Li5jMDVlM2E0MGU4MDU2NjVkYzBmZGVkMDJjMzA1MThlZDk2Mjg2MGMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCkBAIC0zNyw3ICszNyw3IEBAIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1
bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25z
dCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGlt
ZUFycmF5KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihhcnJheUxlbmd0
aEdldHRlcik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21l
dGhvZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCmluZGV4
IDY1OGY3M2NhZThhOTEwZDAwZmNjNWRjNjIwZTIzNzIxYzNiNzk2ZDAuLmUxOGVjMmM4OGUxODcw
ZjlkNmU4ZTM2NDgxZDE3ZTVlOWRlMDFjMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9ydW50aW1lX21ldGhvZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRp
bWVfbWV0aG9kLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogdXNpbmcg
bmFtZXNwYWNlIEJpbmRpbmdzOwogCi1XRUJDT1JFX0VYUE9SVCBjb25zdCBDbGFzc0luZm8gUnVu
dGltZU1ldGhvZDo6c19pbmZvID0geyAiUnVudGltZU1ldGhvZCIsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU1l
dGhvZCkgfTsKK1dFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpz
X2luZm8gPSB7ICJSdW50aW1lTWV0aG9kIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07CiAK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxSdW50aW1lTWV0aG9kKTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKG1ldGhvZExlbmd0aEdldHRlcik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAppbmRleCA5ZDNmM2M1YzY5MDQ3YjJl
NDAwZmMyNzJiNWE3N2U4ZWQzMzJiOWI3Li5iMjRmMmFlZjE5NGJhZDI1YjNhNjFlYjg4ZTc0MTQ3
ZGNlOTMxMGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKQEAg
LTM2LDcgKzM2LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBuYW1lc3BhY2UgSlNDIHsK
IG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLVdFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5mbyBS
dW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJSdW50aW1lT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9Owor
V0VCQ09SRV9FWFBPUlQgY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsg
IlJ1bnRpbWVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoUnVudGltZU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hP
U1RfRlVOQ1RJT04oY29udmVydFJ1bnRpbWVPYmplY3RUb1ByaW1pdGl2ZSk7CiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsUnVudGltZU9iamVjdCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9DdXN0b21QYWludEltYWdlLmNwcAppbmRleCBmNGI5OGJhNjJlMTE5YTA3NzEzMTJkM2I4
OGM0OTE5MzY4MzZlZTM3Li5hYmQyZDc1NDIzMDI5Mjg0MzIxNTQ5NDQwMTM1YjgwMDY2YjRiNTI4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJbWFnZS5jcHAKQEAgLTE1Niw3ICsx
NTYsNyBAQCBJbWFnZURyYXdSZXN1bHQgQ3VzdG9tUGFpbnRJbWFnZTo6ZG9DdXN0b21QYWludChH
cmFwaGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBjbwogCiAgICAgYXV0byYgbGV4aWNhbEdsb2Jh
bE9iamVjdCA9IGdsb2JhbE9iamVjdDsKICAgICBKU0M6OkFyZ0xpc3Qgbm9BcmdzOwotICAgIEpT
Qzo6SlNWYWx1ZSB0aGlzT2JqZWN0ID0geyBKU0M6OmNvbnN0cnVjdCgmbGV4aWNhbEdsb2JhbE9i
amVjdCwgcGFpbnRDb25zdHJ1Y3Rvciwgbm9BcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBwYWlu
dCBjbGFzcyIpIH07CisgICAgSlNDOjpKU1ZhbHVlIHRoaXNPYmplY3QgPSB7IEpTQzo6Y29uc3Ry
dWN0KCZsZXhpY2FsR2xvYmFsT2JqZWN0LCBwYWludENvbnN0cnVjdG9yLCBub0FyZ3MsICJGYWls
ZWQgdG8gY29uc3RydWN0IHBhaW50IGNsYXNzIl9zKSB9OwogCiAgICAgaWYgKFVOTElLRUxZKHNj
b3BlLmV4Y2VwdGlvbigpKSkgewogICAgICAgICByZXBvcnRFeGNlcHRpb24oJmxleGljYWxHbG9i
YWxPYmplY3QsIHNjb3BlLmV4Y2VwdGlvbigpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455530</attachid>
            <date>2022-03-23 11:30:42 -0700</date>
            <delta_ts>2022-03-23 11:38:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323113041.patch</filename>
            <type>text/plain</type>
            <size>667881</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
OGVlYjIwODc1NjkzZGM2ZmNjODdjZWUwMTUzNzAyMzM1MjVmNDY5Li41ZWFkZmIwNTcyNDJmZjk3
NDZjYzg3MGNmMzI1MjUyNDExNjA4MTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hh
ciopIGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAg
ICBleHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1
Y3RpbmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5n
IHRoZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21w
dXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVj
dDo6bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5j
cHA6CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkv
SlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0
aW9uLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Nj
cmlwdC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJ
L0pTVHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFy
cmF5QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZm
ZXJBbmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRl
U3RydWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAg
ICAqIEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9y
Q3VzdG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAg
ICAgICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBB
UEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGli
L0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoK
KyAgICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0
aW9uQ2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5k
bGVyOjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29k
ZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0
S2luZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5
dGVjb2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAg
ICAgICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2Rl
L1VubGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxD
b2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNw
cDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVs
ZXRlQnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5v
ZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgor
ICAgICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2Fs
bEZyYW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAg
ICAgIChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9v
dE1hcmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9y
L0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0
b3I6OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAg
ICAoSW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVz
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Oklu
c3BlY3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0
YWJsZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAg
ICAqIGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgor
ICAgICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6Cisg
ICAgICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToK
KyAgICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFy
Z3VtZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAg
KiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBh
cnNlUHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVS
ZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRv
bWljc09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVD
YWNoZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFy
ZEVycm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1
bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpT
Qzo6Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAg
ICAgICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVT
eW50YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToK
KyAgICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Q29uc3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICog
cnVudGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFs
RXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5j
dGlvblNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291
cmNlQXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNv
dXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVu
ZGVyKToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVh
dGVJbnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5l
ZFByaXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNj
ZXNzRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJy
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdT
bG93KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcElt
cGwuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
ICogcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6
OmluaXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZSk6CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpT
Qzo6aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0
aWFsaXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
SXRlcmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdt
ZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlh
bGl6ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6Cisg
ICAgICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0Jv
dW5kRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJl
YW0pOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rp
b24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRU
RVIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAg
ICAgIChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXAp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9K
U0dlbmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgor
ICAgICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRl
UmFuZ2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5
cGVGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAg
IChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVC
dXR0ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01h
cC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2Jq
ZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
SlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6
d3JhcFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Nj
cmlwdEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5n
OjpkdW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVk
QXJyYXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFr
TWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkxpdGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KiBydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJh
dG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAg
ICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dp
dGhSYWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAg
ICAgIChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRv
U3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVy
YXRpb25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChK
U0M6OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5
VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBP
YmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3Bl
ZEFyZ3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHA6CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxt
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OnRvTG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJv
bENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
U3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJh
dGlvbjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1w
b3JhbE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNt
YWxsZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFp
blRpbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6
OmxvZ1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFr
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMv
RnVuY3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6
RnVuY3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9v
bHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMpOgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAo
SlNDOjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUlu
c3BlY3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAg
ICAgICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJy
b3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6
CisgICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNt
R2xvYmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAq
IHdhc20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6
ZGlkQ29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5j
cHA6CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAg
ICAgICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlv
bi5jcHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAg
ICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAo
SlNDOjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1i
bHlNb2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5j
cHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29y
ZC5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXpl
RXhwb3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNt
L2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlX
cmFwcGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgor
ICAgICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVy
cm9yTWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMt
MjMgIFhhbiBMb3BleiAgPHhhbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBEb05v
dEhhdmVUYWdSZWdpc3RlcnMgbW9kZSB0byB1bmJveERvdWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBj
MDdlMWFmMmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi42MTk2NGFjNzE2MjkxMTFlYzJhZTEzNTQ4N2Y5
YTdmNDZjZTE4YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0
aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5o
OgorICAgICAgICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAo
V1RGOjpkaXNwbGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
Y3BwOgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24p
OgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6
bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
aDoKKwogMjAyMi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggNzI5OTFmYTkzYjc0MWRhMDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uMjRkYWFj
N2ZlODgzNDMxMmI1NTNkN2RjNDdiNTcxZWE1MGZhNTBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDMwIEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAg
ICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25z
dHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5k
b3dQcm94eS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5j
cHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAg
ICAgIChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpD
UnVudGltZU9iamVjdC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
OgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAg
ICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVu
dGltZV9hcnJheS5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAg
ICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIzICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBWaWRlb0ZyYW1lIGRvZXMgbm90
IG5lZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwCmluZGV4IDNkY2VhNmNhMjZlMjhiZGUzOGY0
YjY5Mzk0NmVlMjkyMDMwN2E0ZGIuLjEyNWJjOTlhMWQ1MmY1OThiNmZkZDlkNmQ4MzBjNThkNDk3
OTFmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgSlNBUElHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQppbmRleCBiM2UyYWU0NDFjNGVjNTIzNDJh
ZmU5ZDU0OWU0YWU2MjM4Y2UzNDVmLi5lNGI4NTliOWNmNzI0NjY5NjRiNGE5ZDc0YjUzNjMzOGQw
MmEyZmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFs
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QubW0KQEAgLTUwLDcgKzUwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJs
ZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKQEAgLTkwLDcgKzkwLDcgQEAgc3Rh
dGljIEV4cGVjdGVkPFVSTCwgU3RyaW5nPiBjb21wdXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIoY29u
c3QgVVJMJiBiYXNlLCBjb25zdAogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQobWFrZVN0
cmluZygiTW9kdWxlIHNwZWNpZmllcjogIl9zLCBzcGVjaWZpZXIsICIgZG9lcyBub3Qgc3RhcnQg
d2l0aCBcIi9cIiwgXCIuL1wiLCBvciBcIi4uL1wiLiBSZWZlcmVuY2VkIGZyb206ICJfcywgYmFz
ZS5zdHJpbmcoKSkpOwogCiAgICAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcvJykpIHsKLSAg
ICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iKSwgc3BlY2lmaWVyKTsK
KyAgICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iX3MpLCBzcGVjaWZp
ZXIpOwogICAgICAgICBpZiAoYWJzb2x1dGVVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0
dXJuIGFic29sdXRlVVJMOwogICAgIH0KQEAgLTE3NywxMiArMTc3LDEyIEBAIEpTSW50ZXJuYWxQ
cm9taXNlKiBKU0FQSUdsb2JhbE9iamVjdDo6bW9kdWxlTG9hZGVyRmV0Y2goSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAKICAgICBpZiAoVU5MSUtFTFkoIVtjb250ZXh0IG1vZHVsZUxvYWRlckRl
bGVnYXRlXSkpIHsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICBwcm9taXNlLT5y
ZWplY3QoZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJObyBtb2R1bGUg
bG9hZGVyIHByb3ZpZGVkLiIpKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KGdsb2JhbE9iamVj
dCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRlciBwcm92aWRlZC4i
X3MpKTsKICAgICAgICAgcmV0dXJuIHByb21pc2U7CiAgICAgfQogCiAgICAgYXV0byBzdHJvbmdQ
cm9taXNlID0gU3Ryb25nPEpTSW50ZXJuYWxQcm9taXNlPih2bSwgcHJvbWlzZSk7Ci0gICAgYXV0
byogcmVzb2x2ZSA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCAxLCAicmVzb2x2ZSIsIFs9XSAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpIHsKKyAgICBhdXRvKiByZXNvbHZlID0gSlNOYXRpdmVTdGRGdW5jdGlv
bjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsICJyZXNvbHZlIl9zLCBbPV0gKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAgICAgICAgIC8v
IFRoaXMgY2FwdHVyZXMgdGhlIGdsb2JhbE9iamVjdCBidXQgdGhhdCdzIG9rIGJlY2F1c2Ugb3Vy
IHN0cnVjdHVyZSBrZWVwcyBpdCBhbGl2ZSBhbnl3YXkuCiAgICAgICAgIFZNJiB2bSA9IGdsb2Jh
bE9iamVjdC0+dm0oKTsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW0pTQ29udGV4dCBj
b250ZXh0V2l0aEpTR2xvYmFsQ29udGV4dFJlZjp0b0dsb2JhbFJlZihnbG9iYWxPYmplY3QpXTsK
QEAgLTIxMyw3ICsyMTMsNyBAQCBKU0ludGVybmFsUHJvbWlzZSogSlNBUElHbG9iYWxPYmplY3Q6
Om1vZHVsZUxvYWRlckZldGNoKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICByZXR1
cm4gZW5jb2RlZEpTVW5kZWZpbmVkKCk7CiAgICAgfSk7CiAKLSAgICBhdXRvKiByZWplY3QgPSBK
U05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJlamVjdCIs
IFs9XSAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgeworICAgIGF1dG8q
IHJlamVjdCA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAx
LCAicmVqZWN0Il9zLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
IHsKICAgICAgICAgc3Ryb25nUHJvbWlzZS5nZXQoKS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAgICAgIHJldHVybiBlbmNvZGVkSlNVbmRlZmluZWQo
KTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElW
YWx1ZVdyYXBwZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3Jh
cHBlci5jcHAKaW5kZXggMjFhN2E5N2MwZWNlZGY5MDEyNTUzMDFlNzZjNzhjNGYyYjQ0NmQ3Yy4u
MTc3OGI2MWQ2NzU1YjlhNWI3NmE1NDA1NjYxNTgyMzk0YjRlZjYyYiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKQEAgLTI4LDYgKzI4LDYg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShKU0FQSVZhbHVlV3JhcHBlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQVBJVmFsdWVXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQVBJVmFsdWVXcmFwcGVyOjpzX2luZm8gPSB7ICJBUEkgV3JhcHBlciJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBl
cikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCmluZGV4IDQ3NzNiMDc0NDg3MzQ4YTg3ZWZjODIxZDEy
YjJhOTNjZTg2MTIxOTUuLmZjODVlZDdiZGViNmY5ZjUwMjA3MWZmM2ZiOWY2M2RmMjdhODM5MmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1t
CkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRp
Y0Z1bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyT2JqZWN0Q2FsbGJhY2tPCiAKIERFRklORV9WSVNJ
VF9DSElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNB
UElXcmFwcGVyT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBl
ck9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGUgPD4gY29uc3QgYm9vbCBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVl
OwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCmluZGV4IDQ4Nzc3ODg5MzBlZTQyZmRhYjM1ODc1OWRiZjcx
NDJmMDM2YTMzYmEuLmJhMDU2NjVjOTg5YTg1NWQ1ZTk1ODIyZWM0OWZlMjBlOTM0MWY3M2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0
cnVjdG9yKSB9OwogCiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3Rv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlND
bGFzc1JlZiBqc0NsYXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDEyODY3
MDljMDhjMmExY2FhMWQzYzM5Yjc5NjBjYzZiNzkxNzEzZGIuLmM5OTY1MDE5ZDJjMDI5NzU2NjZm
NzJkOGVmODIzZGJmZGU3NDJiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0NhbGxiYWNrRnVu
Y3Rpb24pOwogCi1jb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7
ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0
aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTQ2FsbGJhY2tGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwCmluZGV4IDQ0NGMxNTAzNDUx
ZGQ5Nzk1MzBhMTg1Y2RhMzg2ZWUxZDFjNjdiYjguLjE1ZGFmM2MyZmNjNDdlNTkyZjFkNjQyMTI2
YWQ3ZmE4YjU3MjM4Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxi
YWNrT2JqZWN0LmNwcApAQCAtNDUsOCArNDUsOCBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lU
SF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplYwog
REVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFj
a09iamVjdDxKU0dsb2JhbE9iamVjdD4pOwogCiAvLyBEZWZpbmUgdGhlIHR3byB0eXBlcyBvZiBK
U0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZv
IEpTQ2FsbGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNr
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBK
U0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2Fs
bGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCBjNzg0ZGZiYTk0MDY5Njky
NDk5ZWM3MzY4YWUxYWNiZWIxYzc5NGRiLi41MWRhNzc3YWQyNDU0NTg1MTgyM2MxZDczNjk3YjU3
ZGUyMGFlMDdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJh
Y2tPYmplY3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2Fs
bGJhY2tPYmplY3RGdW5jdGlvbnMuaApAQCAtMjExLDcgKzIxMSw3IEBAIGJvb2wgSlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgSlNH
bG9iYWxPYmplCiAgICAgaWYgKHByb3BlcnR5TmFtZS51aWQoKSA9PSB2bS5wcm9wZXJ0eU5hbWVz
LT50b1N0cmluZ1RhZ1N5bWJvbC5pbXBsKCkpIHsKICAgICAgICAgU3RyaW5nIGNsYXNzTmFtZSA9
IHRoaXNPYmplY3QtPmNsYXNzUmVmKCktPmNsYXNzTmFtZSgpOwogICAgICAgICBpZiAoY2xhc3NO
YW1lLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXNPYmplY3QtPmNsYXNz
TmFtZSh2bSk7CisgICAgICAgICAgICBjbGFzc05hbWUgPSAgdGhpc09iamVjdC0+Y2xhc3NOYW1l
KHZtKTsKICAgICAgICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwganNTdHJpbmcodm0sIFdURk1vdmUo
Y2xhc3NOYW1lKSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU1NjcmlwdC5tbQppbmRleCA4NTAzNDdiN2NkNzEyNjBhMGJmNjU5MDc1MGE5YTQ1
MGRjMzExYzFjLi42YjAyMDZlMDM3ZjMyM2MzMmY5OTEzNDIyMWFkYWRhYjM3NWZhMGUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNTY3JpcHQubW0KQEAgLTE1NCw4ICsxNTQsNyBAQCAtICh2
b2lkKXJlYWRDYWNoZQogICAgIGlmICghbV9jYWNoZVBhdGgpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIE5TU3RyaW5nICpjYWNoZVBhdGhTdHJpbmcgPSBbbV9jYWNoZVBhdGggcGF0aF07Ci0gICAg
Y29uc3QgY2hhciogY2FjaGVGaWxlbmFtZSA9IGNhY2hlUGF0aFN0cmluZy5VVEY4U3RyaW5nOwor
ICAgIFN0cmluZyBjYWNoZUZpbGVuYW1lID0gW21fY2FjaGVQYXRoIHBhdGhdOwogCiAgICAgYXV0
byBmZCA9IEZpbGVTeXN0ZW06Om9wZW5BbmRMb2NrRmlsZShjYWNoZUZpbGVuYW1lLCBGaWxlU3lz
dGVtOjpGaWxlT3Blbk1vZGU6OlJlYWQsIHtGaWxlU3lzdGVtOjpGaWxlTG9ja01vZGU6OkV4Y2x1
c2l2ZSwgRmlsZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpOb25ibG9ja2luZ30pOwogICAgIGlmICgh
RmlsZVN5c3RlbTo6aXNIYW5kbGVWYWxpZChmZCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTVHlwZWRBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTVHlwZWRBcnJheS5jcHAKaW5kZXggYWJhNmRmNmUyYTMxODM4ZTczODg0OWQyOGI3MjkyZTIx
MzJhNGU5MS4uOTNlZTg4NGM1Yzk5ZGViNzBiYjQxOWRiODZhMmM5NWVjMTEyZGNkMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNUeXBlZEFycmF5LmNwcApAQCAtMjE5LDcgKzIxOSw3
IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIoSlND
b250ZXh0UmVmIGN0eCwgSlNUeXBlZEFycmF5CiAKICAgICBKU0FycmF5QnVmZmVyKiBqc0J1ZmZl
ciA9IGpzRHluYW1pY0Nhc3Q8SlNBcnJheUJ1ZmZlcio+KHZtLCB0b0pTKGpzQnVmZmVyUmVmKSk7
CiAgICAgaWYgKCFqc0J1ZmZlcikgewotICAgICAgICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRp
b24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5
V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmpl
Y3QiKSk7CisgICAgICAgIHNldEV4Y2VwdGlvbihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIg
ZXhwZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJyYXkgQnVmZmVyIG9iamVjdCJfcykpOwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKQEAgLTI0NCw3ICsyNDQsNyBAQCBKU09iamVjdFJl
ZiBKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyQW5kT2Zmc2V0KEpTQ29udGV4
dFJlZiBjdHgsIEpTVAogCiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBqc0R5bmFtaWND
YXN0PEpTQXJyYXlCdWZmZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAgIGlmICghanNC
dWZmZXIpIHsKLSAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZl
ciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0IikpOworICAgICAg
ICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVy
IHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFs
dWUubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KaW5kZXggZDNhZDA4
MGUxZGRmNGZlNmVmYmE5MTM1YmEyNjg3NmM3N2RjYmMyNi4uZjEyYTJjNDk1M2YwMDMyZGZiNGI3
MmY2OGZmODBmZWRkYjY5MDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU1ZhbHVlLm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZS5tbQpA
QCAtMTE3OSw3ICsxMTc5LDcgQEAgc3RhdGljIFN0cnVjdEhhbmRsZXJzKiBjcmVhdGVTdHJ1Y3RI
YW5kbGVyTWFwKCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgLy8gVHJ5IHRvIGZpbmQg
YSBtYXRjaGluZyB2YWx1ZVdpdGg8Rm9vPjpjb250ZXh0OiBtZXRob2QuCiAgICAgICAgIGF1dG8g
dHlwZSA9IGFkb3B0U3lzdGVtPGNoYXJbXT4obWV0aG9kX2NvcHlSZXR1cm5UeXBlKG1ldGhvZCkp
OwotICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJz
LT5maW5kKHR5cGUuZ2V0KCkpOworICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRl
ciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKFN0cmluZyB7IHR5cGUuZ2V0KCkgfSk7CiAgICAgICAg
IGlmIChpdGVyID09IHN0cnVjdEhhbmRsZXJzLT5lbmQoKSkKICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgU3RydWN0VGFnSGFuZGxlciYgaGFuZGxlciA9IGl0ZXItPnZhbHVlOwpAQCAtMTIx
Nyw3ICsxMjE3LDcgQEAgc3RhdGljIFN0cnVjdFRhZ0hhbmRsZXIqIGhhbmRlckZvclN0cnVjdFRh
Zyhjb25zdCBjaGFyKiBlbmNvZGVkVHlwZSkKIAogICAgIHN0YXRpYyBTdHJ1Y3RIYW5kbGVycyog
c3RydWN0SGFuZGxlcnMgPSBjcmVhdGVTdHJ1Y3RIYW5kbGVyTWFwKCk7CiAKLSAgICBTdHJ1Y3RI
YW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKGVuY29kZWRUeXBl
KTsKKyAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5m
aW5kKFN0cmluZyB7IGVuY29kZWRUeXBlIH0pOwogICAgIGlmIChpdGVyID09IHN0cnVjdEhhbmRs
ZXJzLT5lbmQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuICZpdGVyLT52YWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJNYXAubW0KaW5kZXggNzBkZWZjMDA0
MDNmYTFiYTUwZmE1MmNiNTU5NWMyYzE2YjdjNjJkYy4uZjgyMWRmOGUzZWJlZDU3ZjU0MGNkMmYw
MWQ2NGVjOTZkY2ZhODZjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U1dyYXBwZXJNYXAubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJN
YXAubW0KQEAgLTQzOCw3ICs0MzgsNyBAQCBzdGF0aWMgSlNDOjpKU09iamVjdCogYWxsb2NhdGVD
b25zdHJ1Y3RvckZvckN1c3RvbUNsYXNzKEpTQ29udGV4dCAqY29udGV4dCwgY29ucwogICAgICAg
ICAgICAgICAgIGNvbnN0IGNoYXIqIG5hbWUgPSBzZWxfZ2V0TmFtZShzZWxlY3Rvcik7CiAgICAg
ICAgICAgICAgICAgaWYgKCFpc0luaXRGYW1pbHlNZXRob2QoQChuYW1lKSkpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KG5hbWUsIChf
X2JyaWRnZSBDRlR5cGVSZWYpcHJvdG9jb2wpOworICAgICAgICAgICAgICAgIGluaXRUYWJsZS5z
ZXQoU3RyaW5nIHsgbmFtZSB9LCAoX19icmlkZ2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsKICAgICAg
ICAgICAgIH0pOwogICAgICAgICB9KTsKICAgICB9CkBAIC00NTEsNyArNDUxLDcgQEAgc3RhdGlj
IEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3RydWN0b3JGb3JDdXN0b21DbGFzcyhKU0NvbnRl
eHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgZm9yRWFjaE1ldGhvZEluQ2xhc3MoY3VycmVudENs
YXNzLCBeKE1ldGhvZCBtZXRob2QpIHsKICAgICAgICAgICAgIFNFTCBzZWxlY3RvciA9IG1ldGhv
ZF9nZXROYW1lKG1ldGhvZCk7CiAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lID0gc2VsX2dl
dE5hbWUoc2VsZWN0b3IpOwotICAgICAgICAgICAgYXV0byBpdGVyID0gaW5pdFRhYmxlLmZpbmQo
bmFtZSk7CisgICAgICAgICAgICBhdXRvIGl0ZXIgPSBpbml0VGFibGUuZmluZChTdHJpbmcgeyBu
YW1lIH0pOwogCiAgICAgICAgICAgICBpZiAoaXRlciA9PSBpbml0VGFibGUuZW5kKCkpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2Jq
Q0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXggZGY3NjBjNjI4NjY4YTRmNDZlODlkNTMzNjA5M2Qx
Y2E1YzAyNDRkYy4uOGQ4ZTM1MTY5ZDk2MzQ2OTIzN2U0Mzk1ZDYyOTMzMzM0YjI2ZmQ1YSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5t
bQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxsYmFja0Z1bmN0aW9uLm1t
CkBAIC01MzMsNyArNTMzLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVmIG9iakNDYWxsYmFja0Z1bmN0
aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNhbGxlckNvbnQKICAgICByZXR1cm4g
Y29uc3RfY2FzdDxKU09iamVjdFJlZj4ocmVzdWx0KTsKIH0KIAotY29uc3QgSlNDOjpDbGFzc0lu
Zm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakND
YWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ0NhbGxiYWNrRnVuY3Rpb24p
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxPYmpDQ2FsbGJhY2tG
dW5jdGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RPYmpD
Q2FsbGJhY2tGdW5jdGlvbik7CkBAIC01NzQsMTAgKzU3NCwxMCBAQCB2b2lkIE9iakNDYWxsYmFj
a0Z1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIFN0cmluZyBPYmpDQ2FsbGJhY2tGdW5j
dGlvbkltcGw6Om5hbWUoKQogewogICAgIGlmIChtX3R5cGUgPT0gQ2FsbGJhY2tJbml0TWV0aG9k
KQotICAgICAgICByZXR1cm4gY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0KCkpOwor
ICAgICAgICByZXR1cm4gU3RyaW5nIHsgY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0
KCkpIH07CiAgICAgLy8gRklYTUU6IE1heWJlIHdlIGNvdWxkIHN1cHBvcnQgaGF2aW5nIHRoZSBz
ZWxlY3RvciBhcyB0aGUgbmFtZSBvZiB0aGUgbm9uLWluaXQgCiAgICAgLy8gZnVuY3Rpb25zIHRv
IG1ha2UgaXQgYSBiaXQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb20gdGhlIEpTIHNpZGU/Ci0gICAg
cmV0dXJuICIiOworICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogfQogCiBKU1ZhbHVlUmVmIE9i
akNDYWxsYmFja0Z1bmN0aW9uSW1wbDo6Y2FsbChKU0NvbnRleHQgKmNvbnRleHQsIEpTT2JqZWN0
UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCmlu
ZGV4IDNkYmQ5ZDM1M2Q2ZWJkYWI2ZjIzYzgyOTEyNzdlNTM2NjY3YzA2OGYuLjlhNTg3MmNiMTc3
NWIwYzE4OTc2YzgxNmEwOWYzYThlMDE3MmJhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCkBA
IC02Miw3ICs2Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRpY0Z1
bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0Q2FsCiAKIERFRklORV9WSVNJVF9D
SElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElX
cmFwcGVyR2xvYmFsT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJ
V3JhcHBlckdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0
IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNf
aW5mbyA9IHsgIkpTQVBJV3JhcHBlckdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9Owog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyR2xvYmFs
T2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CiAKIHRlbXBsYXRlIDw+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xp
Yi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0
R0xpYi5jcHAKaW5kZXggM2VhZjhmNjc5MGFlNzg1YTNkZDUyM2FiOWFlNDE3NGQxYmRiMjhkNC4u
ZjA1OTljMTBmNDQzOTM2NjYyY2VkNTZiMTY4NTc2NTBiN2I1ODkyOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJPYmplY3RHTGli
LmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihz
dGF0aWNGdW5jdGlvbkdldHRlckpTQVBJV3JhcHBlck9iamVjdENhbGxiYWNrTwogCiBERUZJTkVf
VklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlND
YWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBw
ZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdy
YXBwZXJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBK
U0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0
cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDA4MTA3N2E0YzA0M2NjYjQ4YWVi
MjliMDFmOGZmYzBkOGFmYmUxM2EuLmVkN2YxYTczOWYwNWJkODgzN2ZkNjM5ZjY4NDZmZWY2MDc1
Y2FlODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxs
YmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlND
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVm
IGNhbGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiBjYWxsZXJDb250ZXh0LCBKU09iamVjdFJl
ZiBjb24KICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SlNDQ2FsbGJhY2tGdW5jdGlvbio+KHRvSlMo
Y29uc3RydWN0b3IpKS0+Y29uc3RydWN0KGNhbGxlckNvbnRleHQsIGFyZ3VtZW50Q291bnQsIGFy
Z3VtZW50cywgZXhjZXB0aW9uKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ0NhbGxiYWNr
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZv
ID0geyAiQ2FsbGJhY2tGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0aW9uKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNDQ2FsbGJhY2tGdW5j
dGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU0NDYWxs
YmFja0Z1bmN0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVz
dHMvSlNPTlBhcnNlVGVzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pT
T05QYXJzZVRlc3QuY3BwCmluZGV4IGEwNjJhYWI3ZWRjNzNkNWI1MjE3YTU1YTllZjg1ZWE2NmRj
NzgyZmIuLmRmN2JmZGJiMDIxMGIyNmMwMGRjNzhjMzE2MTAwOGZjYjZlYjllYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcApAQCAt
NDMsMTMgKzQzLDEzIEBAIGludCB0ZXN0SlNPTlBhcnNlKCkKICAgICBKU0xvY2tIb2xkZXIgbG9j
a2VyKHZtLmdldCgpKTsKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gSlNHbG9i
YWxPYmplY3Q6OmNyZWF0ZSgqdm0sIEpTR2xvYmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUoKnZt
LCBqc051bGwoKSkpOwogICAgIAotICAgIEpTVmFsdWUgdjAgPSBKU09OUGFyc2UoZ2xvYmFsT2Jq
ZWN0LCAiIik7Ci0gICAgSlNWYWx1ZSB2MSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIjJCVe
Iik7CisgICAgSlNWYWx1ZSB2MCA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIiX3MpOworICAg
IEpTVmFsdWUgdjEgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiJfcyk7CiAgICAgSlNW
YWx1ZSB2MiA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsIFN0cmluZygpKTsKICAgICBVQ2hhciBl
bXB0eVVDaGFyQXJyYXlbMV0gPSB7ICdcMCcgfTsKICAgICBKU1ZhbHVlIHYzID0gSlNPTlBhcnNl
KGdsb2JhbE9iamVjdCwgU3RyaW5nKGVtcHR5VUNoYXJBcnJheSwgMCkpOwogICAgIEpTVmFsdWUg
djQ7Ci0gICAgSlNWYWx1ZSB2NSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIxMjMiKTsKKyAg
ICBKU1ZhbHVlIHY1ID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIjEyMyJfcyk7CiAgICAgCiAg
ICAgZmFpbGVkID0gZmFpbGVkIHx8ICh2MCAhPSB2MSk7CiAgICAgZmFpbGVkID0gZmFpbGVkIHx8
ICh2MSAhPSB2Mik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mv
U2NyaXB0RnVuY3Rpb25DYWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9T
Y3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDdmZjNlNjFlNDI1MjM2YThlNjU2NTVhYjkwZTNh
OWQ0NzllOWFmNDIuLjNhYTkyNTNkMzM0ODcwMDNlOTczN2RiZDIyMGI4MGE0YWFiOTNhOTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlvbkNh
bGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlv
bkNhbGwuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHZvaWQgU2NyaXB0Q2FsbEFyZ3VtZW50SGFuZGxl
cjo6YXBwZW5kQXJndW1lbnQoY29uc3QgY2hhciogYXJndW1lbnQpCiB7CiAgICAgVk0mIHZtID0g
bV9nbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0pOwotICAgIG1f
YXJndW1lbnRzLmFwcGVuZChqc1N0cmluZyh2bSwgYXJndW1lbnQpKTsKKyAgICBtX2FyZ3VtZW50
cy5hcHBlbmQoanNTdHJpbmcodm0sIFN0cmluZyB7IGFyZ3VtZW50IH0pKTsKIH0KIAogdm9pZCBT
Y3JpcHRDYWxsQXJndW1lbnRIYW5kbGVyOjphcHBlbmRBcmd1bWVudChKU1ZhbHVlIGFyZ3VtZW50
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAppbmRleCAw
OThhZWQ5MzVhNjhmN2Q2Njg3YmQzNTIzMjUzMDc3ZjMxZWQxOWYyLi42ZDlkOGI1MWUxMTlkYmMw
NzgwOTExNGUxY2IxMGVkYjY3Mjg0NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmNwcApAQCAtOTYsNyArOTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIERF
RklORV9BTExPQ0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoQ29kZUJsb2NrUmFyZURhdGEpOwog
CiBjb25zdCBDbGFzc0luZm8gQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkNvZGVCbG9jayIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkNvZGVCbG9jayJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKENvZGVCbG9jaykKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJs
b2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBmYWE1MTk1MTM0NjQ4YzY2MjVmN2FjNTk0MzkxMjc0ZGQwNGI5YmIwLi42MGU5ZDg4
NjQ3ZDMyNTRhOTAyZjAzNmE4OWIxMGM5MDNiZDJkZjA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBu
YW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9
IHsKLSAgICAiRXZhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CisgICAgIkV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShFdmFsQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9ja0Vk
Z2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVC
bG9ja0VkZ2UuY3BwCmluZGV4IGJmOWQ2ZmU0MWNmODU3ODE0MGRmYWYzZGNkN2RlYWRkN2EzNjMz
OTQuLjM2ZGRiN2E2NjU3OTliNjc3NjdiMzA0ZmU1ZjM1ODk0N2FkNDc5MzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlOjpzX2luZm8gPSB7ICJFeGVj
dXRhYmxlVG9Db2RlQmxvY2tFZGdlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEV4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGVUb0Nv
ZGVCbG9ja0VkZ2UiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSkgfTsKIAogU3RydWN0dXJlKiBFeGVjdXRh
YmxlVG9Db2RlQmxvY2tFZGdlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCmluZGV4IGRlNmZlYmY4OGEzNGI5MDczZDBiNzc3
M2I3MWRjMjk0MDgzM2UzODEuLjg5NDAyNjBjODk5NTEyMzIyN2FhODM2NmRlNzQwMGMwYWU2OWQ3
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmNwcApAQCAt
MzEsNzAgKzMxLDcwIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kIGtpbmQpCitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0cmluZyhF
eGl0S2luZCBraW5kKQogewogICAgIHN3aXRjaCAoa2luZCkgewogICAgIGNhc2UgRXhpdEtpbmRV
bnNldDoKLSAgICAgICAgcmV0dXJuICJVbnNldCI7CisgICAgICAgIHJldHVybiAiVW5zZXQiX3M7
CiAgICAgY2FzZSBCYWRUeXBlOgotICAgICAgICByZXR1cm4gIkJhZFR5cGUiOworICAgICAgICBy
ZXR1cm4gIkJhZFR5cGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudFZhbHVlOgotICAgICAgICBy
ZXR1cm4gIkJhZENvbnN0YW50VmFsdWUiOworICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50VmFs
dWUiX3M7CiAgICAgY2FzZSBCYWRJZGVudDoKLSAgICAgICAgcmV0dXJuICJCYWRJZGVudCI7Cisg
ICAgICAgIHJldHVybiAiQmFkSWRlbnQiX3M7CiAgICAgY2FzZSBCYWRFeGVjdXRhYmxlOgotICAg
ICAgICByZXR1cm4gIkJhZEV4ZWN1dGFibGUiOworICAgICAgICByZXR1cm4gIkJhZEV4ZWN1dGFi
bGUiX3M7CiAgICAgY2FzZSBCYWRDYWNoZToKLSAgICAgICAgcmV0dXJuICJCYWRDYWNoZSI7Cisg
ICAgICAgIHJldHVybiAiQmFkQ2FjaGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudENhY2hlOgot
ICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50Q2FjaGUiOworICAgICAgICByZXR1cm4gIkJhZENv
bnN0YW50Q2FjaGUiX3M7CiAgICAgY2FzZSBCYWRJbmRleGluZ1R5cGU6Ci0gICAgICAgIHJldHVy
biAiQmFkSW5kZXhpbmdUeXBlIjsKKyAgICAgICAgcmV0dXJuICJCYWRJbmRleGluZ1R5cGUiX3M7
CiAgICAgY2FzZSBCYWRUeXBlSW5mb0ZsYWdzOgotICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZv
RmxhZ3MiOworICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZvRmxhZ3MiX3M7CiAgICAgY2FzZSBP
dmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJPdmVyZmxvdyI7CisgICAgICAgIHJldHVybiAiT3Zl
cmZsb3ciX3M7CiAgICAgY2FzZSBOZWdhdGl2ZVplcm86Ci0gICAgICAgIHJldHVybiAiTmVnYXRp
dmVaZXJvIjsKKyAgICAgICAgcmV0dXJuICJOZWdhdGl2ZVplcm8iX3M7CiAgICAgY2FzZSBOZWdh
dGl2ZUluZGV4OgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlSW5kZXgiOworICAgICAgICByZXR1
cm4gIk5lZ2F0aXZlSW5kZXgiX3M7CiAgICAgY2FzZSBJbnQ1Mk92ZXJmbG93OgotICAgICAgICBy
ZXR1cm4gIkludDUyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkludDUyT3ZlcmZsb3ciX3M7
CiAgICAgY2FzZSBTdG9yZVRvSG9sZToKLSAgICAgICAgcmV0dXJuICJTdG9yZVRvSG9sZSI7Cisg
ICAgICAgIHJldHVybiAiU3RvcmVUb0hvbGUiX3M7CiAgICAgY2FzZSBMb2FkRnJvbUhvbGU6Ci0g
ICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIjsKKyAgICAgICAgcmV0dXJuICJMb2FkRnJvbUhv
bGUiX3M7CiAgICAgY2FzZSBPdXRPZkJvdW5kczoKLSAgICAgICAgcmV0dXJuICJPdXRPZkJvdW5k
cyI7CisgICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiX3M7CiAgICAgY2FzZSBJbmFkZXF1YXRl
Q292ZXJhZ2U6Ci0gICAgICAgIHJldHVybiAiSW5hZGVxdWF0ZUNvdmVyYWdlIjsKKyAgICAgICAg
cmV0dXJuICJJbmFkZXF1YXRlQ292ZXJhZ2UiX3M7CiAgICAgY2FzZSBBcmd1bWVudHNFc2NhcGVk
OgotICAgICAgICByZXR1cm4gIkFyZ3VtZW50c0VzY2FwZWQiOworICAgICAgICByZXR1cm4gIkFy
Z3VtZW50c0VzY2FwZWQiX3M7CiAgICAgY2FzZSBFeG90aWNPYmplY3RNb2RlOgotICAgICAgICBy
ZXR1cm4gIkV4b3RpY09iamVjdE1vZGUiOworICAgICAgICByZXR1cm4gIkV4b3RpY09iamVjdE1v
ZGUiX3M7CiAgICAgY2FzZSBWYXJhcmdzT3ZlcmZsb3c6Ci0gICAgICAgIHJldHVybiAiVmFyYXJn
c092ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJWYXJhcmdzT3ZlcmZsb3ciX3M7CiAgICAgY2Fz
ZSBURFpGYWlsdXJlOgotICAgICAgICByZXR1cm4gIlREWkZhaWx1cmUiOworICAgICAgICByZXR1
cm4gIlREWkZhaWx1cmUiX3M7CiAgICAgY2FzZSBIb2lzdGluZ0ZhaWxlZDoKLSAgICAgICAgcmV0
dXJuICJIb2lzdGluZ0ZhaWxlZCI7CisgICAgICAgIHJldHVybiAiSG9pc3RpbmdGYWlsZWQiX3M7
CiAgICAgY2FzZSBVbmNvdW50YWJsZToKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZSI7Cisg
ICAgICAgIHJldHVybiAiVW5jb3VudGFibGUiX3M7CiAgICAgY2FzZSBVbmNvdW50YWJsZUludmFs
aWRhdGlvbjoKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZUludmFsaWRhdGlvbiI7CisgICAg
ICAgIHJldHVybiAiVW5jb3VudGFibGVJbnZhbGlkYXRpb24iX3M7CiAgICAgY2FzZSBXYXRjaGRv
Z1RpbWVyRmlyZWQ6Ci0gICAgICAgIHJldHVybiAiV2F0Y2hkb2dUaW1lckZpcmVkIjsKKyAgICAg
ICAgcmV0dXJuICJXYXRjaGRvZ1RpbWVyRmlyZWQiX3M7CiAgICAgY2FzZSBEZWJ1Z2dlckV2ZW50
OgotICAgICAgICByZXR1cm4gIkRlYnVnZ2VyRXZlbnQiOworICAgICAgICByZXR1cm4gIkRlYnVn
Z2VyRXZlbnQiX3M7CiAgICAgY2FzZSBFeGNlcHRpb25DaGVjazoKLSAgICAgICAgcmV0dXJuICJF
eGNlcHRpb25DaGVjayI7CisgICAgICAgIHJldHVybiAiRXhjZXB0aW9uQ2hlY2siX3M7CiAgICAg
Y2FzZSBHZW5lcmljVW53aW5kOgotICAgICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiOworICAg
ICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiX3M7CiAgICAgY2FzZSBCaWdJbnQzMk92ZXJmbG93
OgotICAgICAgICByZXR1cm4gIkJpZ0ludDMyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkJp
Z0ludDMyT3ZlcmZsb3ciX3M7CiAgICAgfQogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgcmV0dXJuICJVbmtub3duIjsKKyAgICByZXR1cm4gIlVua25vd24iX3M7CiB9CiAK
IGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCBraW5kKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAppbmRleCBiOGViMzEwNDgwNWZjYjVlOGYzNjMwYjZk
YTkxNWRjMjBiODRiYjhhLi5kODQwMzYyMGVjMjkyYzgxNzQ0ZWZjNjM3NzM3YTM2ZWNkOGY2NTg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaApAQCAtNTksNyAr
NTksNyBAQCBlbnVtIEV4aXRLaW5kIDogdWludDhfdCB7CiAgICAgQmlnSW50MzJPdmVyZmxvdywg
Ly8gV2UgZXhpdGVkIGJlY2F1c2Ugb2YgYW4gQmlnSW50MzIgb3ZlcmZsb3cuCiB9OwogCi1jb25z
dCBjaGFyKiBleGl0S2luZFRvU3RyaW5nKEV4aXRLaW5kKTsKK0FTQ0lJTGl0ZXJhbCBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kKTsKIGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCk7
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RlMGRhY2NhYTNmYWQyZDA3MDE5
MDZmMGM0MzMxMDMwMjNlYWMwYi4uODcwOWVjNmFkOTVmYjkzNmRjNzE2OGVjOWQ2Y2RkMWYyZGVh
ZGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9u
Q29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rp
b25Db2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9u
Q29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rp
b25Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNw
cAppbmRleCA2NTNkZDdhNGQzMzE0ODM2NjhiNTJhMjYxOWUxN2FjMTIyZWE0NWU3Li4xMGEwN2Qw
ZTA3MDcwOGM5YzcxZTk1ZDNmYjljODc3MmRhMmUxY2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBA
IC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIE1vZHVs
ZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAgICAiTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
ayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIk1vZHVsZVByb2dyYW1D
b2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRF
X01FVEhPRF9UQUJMRShNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGE1
MDhiNDY2MGEwNDgxYTg5MTRkYjJhNjA2MDdmNDEwNDU3Mzk3Y2UuLjgwNWIzZjc5N2EwMTZhMGJk
NjlhMTBiYzliMDE1ZjA4NDE2YTc3ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIG5hbWVz
cGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0g
ewotICAgICJQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAiUHJvZ3JhbUNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1Db2RlQmxvY2spCiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxv
Y2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2Nr
LmNwcAppbmRleCAxNjUzNTU3MTcxNWFlZDEzNTY2YmM3NzUwOWNiY2ViOTZjMTVlNWE2Li4xZDVk
MjEwYzkxMmViNmVlYjAzYmFiYTE4OThhNGM5MTYyMDZjMjc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKQEAgLTM5LDcg
KzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENv
ZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkQ29kZUJsb2NrKSB9OworY29u
c3QgQ2xhc3NJbmZvIFVubGlua2VkQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZENvZGVC
bG9jayJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShV
bmxpbmtlZENvZGVCbG9jaykgfTsKIAogVW5saW5rZWRDb2RlQmxvY2s6OlVubGlua2VkQ29kZUJs
b2NrKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIENvZGVUeXBlIGNvZGVUeXBlLCBjb25z
dCBFeGVjdXRhYmxlSW5mbyYgaW5mbywgT3B0aW9uU2V0PENvZGVHZW5lcmF0aW9uTW9kZT4gY29k
ZUdlbmVyYXRpb25Nb2RlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBlNDcxMmQ4NjhkZWJjZWZlNzQ2MzQ1NjY0NDYyMzgwZjg2MGYxY2E4Li5mNTdjYTM3
ZjIzNzM2MmU4NjNhMzJlNjZhMmI0Yzk3OGExY2ZhNTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcApAQCAt
MzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlu
a2VkRXZhbENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRFdmFsQ29kZUJsb2NrIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtl
ZEV2YWxDb2RlQmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRFdmFsQ29kZUJsb2Nr
OjpzX2luZm8gPSB7ICJVbmxpbmtlZEV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRXZhbENvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNlbGwp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RhZWYwM2ZhNjdhZWI3Y2IxNjcxNDEy
YWNmZGRjMjk0ZGY2MDE4Yi4uY2ZhYzhiYzczYTVmZDE3Zjk5ZWI0MDdiNTY2NGM4MGYzNjEyNzU0
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVu
Y3Rpb25Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNf
aW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBj
ZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggY2JmZWRmNTJjODAyNDAzNTA4
MjE0Y2RkNTc1MGY4OTc0ZTI2NmRlOS4uMTc1ZTVkNTgwM2ViMzhkNGNiZmYzY2Q2NmZiMjQ3ZjAz
NDdiNjA2YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBzdGF0aWNfYXNzZXJ0KHNpemVvZihVbmxpbmtlZEZ1bmN0aW9uRXhl
Y3V0YWJsZSkgPD0gMTI4LCAiVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUgc2hvdWxkIGZpdCBp
biBhIDEyOC1ieXRlIGNlbGwgdG8ga2VlcCBhbGxvY2F0ZWQgYmxvY2tzIGNvdW50IHRvIG9ubHkg
b25lIGFmdGVyIGluaXRpYWxpemluZyBKU0dsb2JhbE9iamVjdC4iKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0
aW9uRXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKSB9OwogCiBzdGF0aWMgVW5saW5rZWRGdW5jdGlv
bkNvZGVCbG9jayogZ2VuZXJhdGVVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKAogICAgIFZNJiB2
bSwgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNv
ZGUmIHNvdXJjZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggYzlkNGJj
NDYxMzU1ZWI3Y2IxYWFmZDcyZWY3MjJmYTEwNGU5MzBlMi4uM2NjODFhODM2MzUxNTQyYzBkMWNm
ZDVmODgzMzYwYjEyOGNhZmY5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0geyAiVW5s
aW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
aykgfTsKIAogdm9pZCBVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OmRlc3Ryb3koSlND
ZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCAyOWVjOWRiMGQ4ZjljYmU4
ZWRmOWE0OGNiY2QyYTdkZjk2YmMxMThmLi40ZTE5ZjYyMTQ2NmIxYTI4MjRmNmJhOGNiMTczZDc2
N2I5MDU1NzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9j
azo6c19pbmZvID0geyAiVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZFByb2dyYW1Db2Rl
QmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2lu
Zm8gPSB7ICJVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNl
bGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5
dGVjb2RlR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIv
Qnl0ZWNvZGVHZW5lcmF0b3IuY3BwCmluZGV4IDc5M2UwOWYyNjMwNWIzNzhmZDBlYTRiMjk4M2My
NzBlYmY0OGFiNDguLjNhMDM3MGQ1NmU1M2MzMzA0ZWZkOGY0MDgyY2I3NDIzN2U3NWMzZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNv
ZGVHZW5lcmF0b3IuY3BwCkBAIC00NTAsMTQgKzQ1MCwxNCBAQCBCeXRlY29kZUdlbmVyYXRvcjo6
Qnl0ZWNvZGVHZW5lcmF0b3IoVk0mIHZtLCBGdW5jdGlvbk5vZGUqIGZ1bmN0aW9uTm9kZSwgVW5s
aW5rZQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6TmFrZWQ6CiAg
ICAgICAgIGlmICghaXNDb25zdHJ1Y3RvcigpKSB7Ci0gICAgICAgICAgICBlbWl0VGhyb3dUeXBl
RXJyb3IoIkNhbm5vdCBjYWxsIGEgY29uc3RydWN0b3Igd2l0aG91dCB8bmV3fCIpOworICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVjdG9yIHdpdGhv
dXQgfG5ld3wiX3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ29uc3RydWN0b3JLaW5kOjpCYXNlOgogICAgIGNhc2UgQ29uc3RydWN0
b3JLaW5kOjpFeHRlbmRzOgogICAgICAgICBpZiAoIWlzQ29uc3RydWN0b3IoKSkgewotICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGNvbnN0cnVjdG9y
IHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90
IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Il9zKTsKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTI4NzEsNyArMjg3MSw3IEBA
IFJlZ2lzdGVySUQqIEJ5dGVjb2RlR2VuZXJhdG9yOjplbWl0SGFzUHJpdmF0ZUJyYW5kKFJlZ2lz
dGVySUQqIGRzdCwgUmVnaXN0ZXJJRCoKICAgICBpZiAoaXNTdGF0aWMpIHsKICAgICAgICAgUmVm
PExhYmVsPiBpc09iamVjdExhYmVsID0gbmV3TGFiZWwoKTsKICAgICAgICAgZW1pdEp1bXBJZlRy
dWUoZW1pdElzT2JqZWN0KG5ld1RlbXBvcmFyeSgpLCBiYXNlKSwgaXNPYmplY3RMYWJlbC5nZXQo
KSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJp
dmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3Igb2YgYSBub24tT2JqZWN0Iik7CisgICAgICAgIGVtaXRU
aHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNj
ZXNzb3Igb2YgYSBub24tT2JqZWN0Il9zKTsKICAgICAgICAgZW1pdExhYmVsKGlzT2JqZWN0TGFi
ZWwuZ2V0KCkpOwogICAgICAgICBlbWl0RXF1YWxpdHlPcDxPcFN0cmljdGVxPihkc3QsIGJhc2Us
IGJyYW5kKTsKICAgICB9IGVsc2UKQEAgLTI4ODQsNyArMjg4NCw3IEBAIHZvaWQgQnl0ZWNvZGVH
ZW5lcmF0b3I6OmVtaXRDaGVja1ByaXZhdGVCcmFuZChSZWdpc3RlcklEKiBiYXNlLCBSZWdpc3Rl
cklEKiBicmFuCiAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJlbD4gYnJhbmRD
aGVja09rTGFiZWwgPSBuZXdMYWJlbCgpOwogICAgICAgICBlbWl0SnVtcElmVHJ1ZShlbWl0RXF1
YWxpdHlPcDxPcFN0cmljdGVxPihuZXdUZW1wb3JhcnkoKSwgYmFzZSwgYnJhbmQpLCBicmFuZENo
ZWNrT2tMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFj
Y2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3IiKTsKKyAgICAgICAgZW1pdFRo
cm93VHlwZUVycm9yKCJDYW5ub3QgYWNjZXNzIHN0YXRpYyBwcml2YXRlIG1ldGhvZCBvciBhY2Nl
c3NvciJfcyk7CiAgICAgICAgIGVtaXRMYWJlbChicmFuZENoZWNrT2tMYWJlbC5nZXQoKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICAKQEAgLTM2NTYsNyArMzY1Niw3IEBAIFJlZ2lzdGVySUQqIEJ5
dGVjb2RlR2VuZXJhdG9yOjplbWl0UmV0dXJuKFJlZ2lzdGVySUQqIHNyYywgUmV0dXJuRnJvbSBm
cm9tKQogICAgICAgICAgICAgaWYgKGlzRGVyaXZlZCkgewogICAgICAgICAgICAgICAgIFJlZjxM
YWJlbD4gaXNVbmRlZmluZWRMYWJlbCA9IG5ld0xhYmVsKCk7CiAgICAgICAgICAgICAgICAgZW1p
dEp1bXBJZlRydWUoZW1pdElzVW5kZWZpbmVkKG5ld1RlbXBvcmFyeSgpLCBzcmMpLCBpc1VuZGVm
aW5lZExhYmVsLmdldCgpKTsKLSAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNh
bm5vdCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVy
aXZlZCBjbGFzcy4iKTsKKyAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5v
dCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVyaXZl
ZCBjbGFzcy4iX3MpOwogICAgICAgICAgICAgICAgIGVtaXRMYWJlbChpc1VuZGVmaW5lZExhYmVs
LmdldCgpKTsKICAgICAgICAgICAgICAgICBlbWl0VERaQ2hlY2soJm1fdGhpc1JlZ2lzdGVyKTsK
ICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29t
cGlsZXIvTm9kZXNDb2RlZ2VuLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGls
ZXIvTm9kZXNDb2RlZ2VuLmNwcAppbmRleCBmNmU0M2VjOGNiYmE4ZjI1NTkwYzZmODA4YTI0NDc1
ZGMyYjZlYWUxLi43YWM3NTg2NjVkOWZjMmFjOTA4NmU5N2VkMWNjNDRlMDY2ZGJlM2Q1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4u
Y3BwCkBAIC04OTYsNyArODk2LDcgQEAgdm9pZCBQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFAKICAgICAgICAg
UmVmPExhYmVsPiB2YWxpZFByb3BlcnR5TmFtZUxhYmVsID0gZ2VuZXJhdG9yLm5ld0xhYmVsKCk7
CiAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcm90b3R5cGVTdHJpbmcgPSBnZW5lcmF0b3Iu
ZW1pdExvYWQobnVsbHB0ciwgSlNWYWx1ZShnZW5lcmF0b3IuYWRkU3RyaW5nQ29uc3RhbnQoZ2Vu
ZXJhdG9yLnByb3BlcnR5TmFtZXMoKS5wcm90b3R5cGUpKSk7CiAgICAgICAgIGdlbmVyYXRvci5l
bWl0SnVtcElmRmFsc2UoZ2VuZXJhdG9yLmVtaXRCaW5hcnlPcDxPcFN0cmljdGVxPihnZW5lcmF0
b3IubmV3VGVtcG9yYXJ5KCksIHByb3RvdHlwZVN0cmluZy5nZXQoKSwgcHJvcGVydHlOYW1lLmdl
dCgpLCBPcGVyYW5kVHlwZXMoUmVzdWx0VHlwZTo6c3RyaW5nVHlwZSgpLCBSZXN1bHRUeXBlOjpz
dHJpbmdUeXBlKCkpKSwgdmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGdl
bmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxk
IG5hbWVkICdwcm90b3R5cGUnIik7CisgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxkIG5hbWVkICdwcm90b3R5cGUnIl9zKTsK
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbCh2YWxpZFByb3BlcnR5TmFtZUxhYmVsLmdldCgp
KTsKICAgICB9CiAKQEAgLTEwMTUsNyArMTAxNSw3IEBAIFJlZ2lzdGVySUQqIEJhc2VEb3ROb2Rl
OjplbWl0R2V0UHJvcGVydHlWYWx1ZShCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdp
CiAgICAgICAgICAgICBBU1NFUlQoc2NvcGUpOyAvLyBQcml2YXRlIG5hbWVzIGFyZSBhbHdheXMg
Y2FwdHVyZWQuCiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5kU3lt
Ym9sID0gZ2VuZXJhdG9yLmVtaXRHZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFy
eSgpLCBzY29wZS5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3ltYm9s
LmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwotICAgICAgICAgICAgZ2VuZXJhdG9y
LmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0
ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRy
eWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIl9zKTsKICAgICAgICAg
ICAgIHJldHVybiBkc3Q7CiAgICAgICAgIH0KIApAQCAtMTA3NCw3ICsxMDc0LDcgQEAgUmVnaXN0
ZXJJRCogQmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eShCeXRlY29kZUdlbmVyYXRvciYgZ2Vu
ZXJhdG9yLCBSZWdpc3RlckkKICAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcml2YXRl
QnJhbmRTeW1ib2wgPSBnZW5lcmF0b3IuZW1pdEdldFByaXZhdGVCcmFuZChnZW5lcmF0b3IubmV3
VGVtcG9yYXJ5KCksIHNjb3BlLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZhdGVCcmFuZChiYXNlLCBwcml2YXRlQnJh
bmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKLSAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZp
bmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlw
ZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7
CiAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgIH0KIApAQCAtMjQ1NCw3ICsyNDU0
LDcgQEAgUmVnaXN0ZXJJRCogUG9zdGZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3Im
IGdlbmVyYXRvciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRD
aGVja1ByaXZhdGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHBy
aXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhw
cmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5k
ZWZpbmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93
VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJf
cyk7CiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwog
ICAgICAgICB9CiAKQEAgLTI0NzIsNyArMjQ3Miw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2Rl
OjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkK
ICAgICAgICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0
KCkpOwogICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwoZ2VuZXJhdG9yLm5l
d1RlbXBvcmFyeSgpLCBnZXR0ZXJGdW5jdGlvbi5nZXQoKSwgTm9FeHBlY3RlZEZ1bmN0aW9uLCBh
cmdzLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBEZWJ1Z2dhYmxlQ2FsbDo6
WWVzKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dU
eXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIik7
CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICByZXR1cm4g
Z2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwogICAgICAgICB9CiAKQEAgLTI0OTAsNyAr
MjQ5MCw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJh
dG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBn
ZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5l
ZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAg
ICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICB9CiAK
QEAgLTI1NTgsNyArMjU1OCw3IEBAIFJlZ2lzdGVySUQqIERlbGV0ZUJyYWNrZXROb2RlOjplbWl0
Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0CiAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IHIxID0gZ2VuZXJhdG9yLmVtaXROb2RlKG1fc3Vic2NyaXB0KTsKICAgICBn
ZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RF
bmQoKSk7CiAgICAgaWYgKG1fYmFzZS0+aXNTdXBlck5vZGUoKSkKLSAgICAgICAgcmV0dXJuIGVt
aXRUaHJvd1JlZmVyZW5jZUVycm9yKGdlbmVyYXRvciwgIkNhbm5vdCBkZWxldGUgYSBzdXBlciBw
cm9wZXJ0eSIsIGRzdCk7CisgICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihn
ZW5lcmF0b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiX3MsIGRzdCk7CiAgICAg
cmV0dXJuIGdlbmVyYXRvci5lbWl0RGVsZXRlQnlWYWwoZmluYWxEZXN0LmdldCgpLCByMC5nZXQo
KSwgcjEuZ2V0KCkpOwogfQogCkBAIC0yNTc0LDcgKzI1NzQsNyBAQCBSZWdpc3RlcklEKiBEZWxl
dGVEb3ROb2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVn
aXN0ZXJJRAogCiAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9uSW5mbyhkaXZvdCgpLCBkaXZv
dFN0YXJ0KCksIGRpdm90RW5kKCkpOwogICAgIGlmIChtX2Jhc2UtPmlzU3VwZXJOb2RlKCkpCi0g
ICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0b3IsICJDYW5ub3Qg
ZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiLCBkc3QpOworICAgICAgICByZXR1cm4gZW1pdFRocm93
UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5
Il9zLCBkc3QpOwogICAgIHJldHVybiBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5SWQoZmluYWxEZXN0
LmdldCgpLCByMC5nZXQoKSwgbV9pZGVudCk7CiB9CiAKQEAgLTI3NDMsNyArMjc0Myw3IEBAIFJl
Z2lzdGVySUQqIFByZWZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRv
ciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZh
dGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFp
dHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbklu
Zm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAgICAgIGdlbmVy
YXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHBy
aXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7CiAgICAg
ICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBwcm9wRHN0LmdldCgpKTsKICAgICAg
ICAgfQogCkBAIC0yNzYwLDcgKzI3NjAsNyBAQCBSZWdpc3RlcklEKiBQcmVmaXhOb2RlOjplbWl0
RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAg
ICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0KCkpOwog
ICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwocHJvcERzdC5nZXQoKSwgZ2V0
dGVyRnVuY3Rpb24uZ2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywgbV9wb3NpdGlvbiwg
bV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7CiAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcg
dG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICAgICAgZ2Vu
ZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQg
cHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRz
dCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0KIApAQCAtMjc3OCw3ICsyNzc4LDcgQEAgUmVn
aXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9y
LCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0
LCBwcm9wRHN0LmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBnZW5lcmF0b3IuZW1pdFRo
cm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRl
ciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIHByb3BEc3QuZ2V0KCkpOwogICAgIH0KIApAQCAtMzIwOCw3ICszMjA4
LDcgQEAgUmVnaXN0ZXJJRCogSW5zdGFuY2VPZk5vZGU6OmVtaXRCeXRlY29kZShCeXRlY29kZUdl
bmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlckkKICAgICBnZW5lcmF0b3IuZW1pdEp1bXAoZG9u
ZS5nZXQoKSk7CiAKICAgICBnZW5lcmF0b3IuZW1pdExhYmVsKHR5cGVFcnJvci5nZXQoKSk7Ci0g
ICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiUmlnaHQgaGFuZCBzaWRlIG9mIGluc3Rh
bmNlb2YgaXMgbm90IGFuIG9iamVjdCIpOworICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9mIGlzIG5vdCBhbiBvYmplY3QiX3MpOwog
CiAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbChjdXN0b20uZ2V0KCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAppbmRleCBh
MzFmYzFmMTVkNGI4Mzg5NDhmNDJiNGNmMWMwOWM0N2QzOTk1MDdhLi5lMDJmYjgxN2QzZmZiNjEw
NjA4MGNhOTA3ZjExMmZjNjlkNDQ2MGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKQEAgLTE0NSw3ICsxNDUsNyBAQCBT
dHJpbmcgRGVidWdnZXJDYWxsRnJhbWU6OmZ1bmN0aW9uTmFtZSgpIGNvbnN0CiAgICAgaWYgKGlz
VGFpbERlbGV0ZWQoKSkgewogICAgICAgICBpZiAoSlNGdW5jdGlvbiogZnVuYyA9IGpzRHluYW1p
Y0Nhc3Q8SlNGdW5jdGlvbio+KHZtLCBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jYWxsZWUpKQogICAg
ICAgICAgICAgcmV0dXJuIGZ1bmMtPmNhbGN1bGF0ZWREaXNwbGF5TmFtZSh2bSk7Ci0gICAgICAg
IHJldHVybiBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2stPmluZmVycmVkTmFtZSgpLmRh
dGEoKTsKKyAgICAgICAgcmV0dXJuIFN0cmluZyB7IG1fc2hhZG93Q2hpY2tlbkZyYW1lLmNvZGVC
bG9jay0+aW5mZXJyZWROYW1lKCkuZGF0YSgpIH07CiAgICAgfQogCiAgICAgcmV0dXJuIG1fdmFs
aWRNYWNoaW5lRnJhbWUtPmZyaWVuZGx5RnVuY3Rpb25OYW1lKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAKaW5kZXggMDRiOTRmNWU1Y2Fj
Y2M5ZmQ1MzE0ZWE4MGI5MmQ4NDNhYjMxZmFiMi4uZTc2YTQxZjNhYzY4N2M4ZjVlZDRkZWFhZWU5
ODFhZDkyM2I5NWE5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2Vy
L0RlYnVnZ2VyU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlclNjb3BlLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERlYnVnZ2VyU2NvcGUpOwogCi1j
b25zdCBDbGFzc0luZm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVidWdnZXJTY29wZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGVi
dWdnZXJTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7
ICJEZWJ1Z2dlclNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07CiAKIERlYnVnZ2VyU2NvcGUqIERlYnVn
Z2VyU2NvcGU6OmNyZWF0ZShWTSYgdm0sIEpTU2NvcGUqIHNjb3BlKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAppbmRleCBhOGNk
ZTg4MTUxNzU3Y2Q3ZGRhNDkwZDQ0NDU4Mjc4ZWEzYWY4ZTE5Li5mMGE4MTkzMjQ5ZjA2M2M2NTAz
Y2I3N2U3MmJlMmM3ODcxNzZiMzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcApAQCAtNTc1LDcgKzU3NSw3IEBAIFN0cmluZyBI
ZWFwU25hcHNob3RCdWlsZGVyOjpqc29uKEZ1bmN0aW9uPGJvb2wgKGNvbnN0IEhlYXBTbmFwc2hv
dE5vZGUmKT4gYWxsb3dOCiAgICAgICAgICAgICBqc29uLmFwcGVuZChzbmFwc2hvdE5vZGUudmFs
dWUoKS5pZGVudGlmaWVyKTsKIAogICAgICAgICAgICAgLy8gTWF5YmUgd2Ugc2hvdWxkIGp1c3Qg
YWx3YXlzIGVuY29kZSB0aGUgcm9vdCBuYW1lcy4KLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHJv
b3ROYW1lID0gcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1ZS5tYXJrUmVhc29uKTsK
KyAgICAgICAgICAgIGF1dG8gcm9vdE5hbWUgPSByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKGl0
LnZhbHVlLm1hcmtSZWFzb24pOwogICAgICAgICAgICAgYXV0byByZXN1bHQgPSBsYWJlbEluZGV4
ZXMuYWRkKHJvb3ROYW1lLCBuZXh0TGFiZWxJbmRleCk7CiAgICAgICAgICAgICBpZiAocmVzdWx0
LmlzTmV3RW50cnkpCiAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgrKzsKQEAgLTU4Myw3
ICs1ODMsNyBAQCBTdHJpbmcgSGVhcFNuYXBzaG90QnVpbGRlcjo6anNvbihGdW5jdGlvbjxib29s
IChjb25zdCBIZWFwU25hcHNob3ROb2RlJik+IGFsbG93TgogCiAgICAgICAgICAgICB1bnNpZ25l
ZCByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IDA7CiAgICAgICAgICAgICBpZiAoaXQudmFsdWUu
cmVhY2hhYmlsaXR5RnJvbU9wYXF1ZVJvb3RSZWFzb25zKSB7Ci0gICAgICAgICAgICAgICAgYXV0
byByZXN1bHQgPSBsYWJlbEluZGV4ZXMuYWRkKGl0LnZhbHVlLnJlYWNoYWJpbGl0eUZyb21PcGFx
dWVSb290UmVhc29ucywgbmV4dExhYmVsSW5kZXgpOworICAgICAgICAgICAgICAgIGF1dG8gcmVz
dWx0ID0gbGFiZWxJbmRleGVzLmFkZChTdHJpbmcgeyBpdC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9t
T3BhcXVlUm9vdFJlYXNvbnMgfSwgbmV4dExhYmVsSW5kZXgpOwogICAgICAgICAgICAgICAgIGlm
IChyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgr
KzsKICAgICAgICAgICAgICAgICByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IHJlc3VsdC5pdGVy
YXRvci0+dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290
TWFya1JlYXNvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNv
bi5jcHAKaW5kZXggOTQzOTM5Y2NlNzlhMTdiZGJkZmUxYmFhMTY3MWRkNzIzZjJjY2Q5YS4uNjUy
MjRiOWIzZWI3MjIxZTE1Mzk3OTVjODc4MWY2YTQ0ODU0NDc3MCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmNwcApAQCAtMzAsMTEgKzMwLDExIEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KFJvb3RNYXJrUmVhc29uIHJlYXNvbikKK0FTQ0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2Ny
aXB0aW9uKFJvb3RNYXJrUmVhc29uIHJlYXNvbikKIHsKICNkZWZpbmUgQ0FTRV9ST09UX01BUktf
UkVBU09OKHJlYXNvbikgXAogICAgIGNhc2UgSlNDOjpSb290TWFya1JlYXNvbjo6cmVhc29uOiBc
Ci0gICAgICAgIHJldHVybiAjcmVhc29uOyBcCisgICAgICAgIHJldHVybiAjcmVhc29uIiJfczsg
XAogCiAgICAgc3dpdGNoIChyZWFzb24pIHsKICAgICAgICAgRk9SX0VBQ0hfUk9PVF9NQVJLX1JF
QVNPTihDQVNFX1JPT1RfTUFSS19SRUFTT04pCkBAIC00Miw3ICs0Miw3IEBAIGNvbnN0IGNoYXIq
IHJvb3RNYXJrUmVhc29uRGVzY3JpcHRpb24oUm9vdE1hcmtSZWFzb24gcmVhc29uKQogI3VuZGVm
IENBU0VfUk9PVF9NQVJLX1JFQVNPTgogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuICJOb25lIjsKKyAgICByZXR1cm4gIk5vbmUiX3M7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFz
b24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgKaW5kZXgg
ZjIwOTYzMzZhMmQyYTM2MTUzMzAxMmI0MWUyODJmNTA1MDNlNTVmNC4uYTg2ZjljNGI5OTYzMjdm
NjIyNGJhODI1NTIyYWU4YjZkNzg1MWQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9Sb290TWFya1JlYXNvbi5oCkBAIC01NSw3ICs1NSw3IEBAIGVudW0gY2xhc3MgUm9vdE1hcmtS
ZWFzb24gOiB1aW50OF90IHsKIAogI3VuZGVmIERFQ0xBUkVfUk9PVF9NQVJLX1JFQVNPTgogCi1j
b25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKK0FT
Q0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKIAog
fSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVy
LmNwcAppbmRleCA2YWUxNzkzOWY0ODg1OGQ2MDQ2Yzk1OTI5MmQzNmNmYmM2MzQ3MWYxLi4yNTFk
YmUzYTVkZTkwNmE1NmUwZDc4MzAzYzJiZTRiNDQ1MzExMWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0dsb2JhbE9iamVj
dEluc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xNjMsNyArMTYzLDcgQEAgdm9pZCBKU0dsb2Jh
bE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXI6OmFwcGVuZEFQSUJhY2t0cmFjZShTY3JpcHRDYWxs
U3RhY2smIGNhbGwKICAgICBmb3IgKGludCBpID0gMDsgaSA8IHNpemU7ICsraSkgewogICAgICAg
ICBhdXRvIGRlbWFuZ2xlZCA9IFN0YWNrVHJhY2U6OmRlbWFuZ2xlKHN0YWNrW2ldKTsKICAgICAg
ICAgaWYgKGRlbWFuZ2xlZCkKLSAgICAgICAgICAgIGNhbGxTdGFjay5hcHBlbmQoU2NyaXB0Q2Fs
bEZyYW1lKGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgpID8gZGVtYW5nbGVkLT5kZW1hbmdsZWRO
YW1lKCkgOiBkZW1hbmdsZWQtPm1hbmdsZWROYW1lKCksICJbbmF0aXZlIGNvZGVdIl9zLCBub1Nv
dXJjZUlELCAwLCAwKSk7CisgICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxG
cmFtZShTdHJpbmcgeyBkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA/IGRlbWFuZ2xlZC0+ZGVt
YW5nbGVkTmFtZSgpIDogZGVtYW5nbGVkLT5tYW5nbGVkTmFtZSgpIH0sICJbbmF0aXZlIGNvZGVd
Il9zLCBub1NvdXJjZUlELCAwLCAwKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGNhbGxT
dGFjay5hcHBlbmQoU2NyaXB0Q2FsbEZyYW1lKCI/Il9zLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9T
b3VyY2VJRCwgMCwgMCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKaW5kZXggNzhlNzczNGUyNjM5
YjdlOTg4YmQ5NDU5YjA3NmJmN2JjZTRjMDcxZS4uMzBhMmIwMWVhODBiM2VlNDlhZWMzOWQ3MzFk
NmM0NDkwMzcwOWUwOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgbmFtZXNw
YWNlIEluc3BlY3RvciB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5m
byBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0KSB9
OwogCiBKU0luamVjdGVkU2NyaXB0SG9zdDo6SlNJbmplY3RlZFNjcmlwdEhvc3QoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPEluamVjdGVkU2NyaXB0SG9zdD4mJiBpbXBsKQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMzM2LDEzICszMzYsMTMgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgdW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICBKU0FycmF5
KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJy
YXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJu
YWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJ0YXJnZXRGdW5jdGlvbiIsIGJvdW5kRnVuY3Rpb24t
PnRhcmdldEZ1bmN0aW9uKCkpKTsKKyAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2Jh
bE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3Qs
ICJ0YXJnZXRGdW5jdGlvbiJfcywgYm91bmRGdW5jdGlvbi0+dGFyZ2V0RnVuY3Rpb24oKSkpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyIsIGJvdW5kRnVuY3Rpb24tPmJv
dW5kVGhpcygpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3Qs
IGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRU
aGlzIl9zLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRoaXMoKSkpOwogICAgICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzKCkpIHsKICAgICAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRBcmdzIiwgYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzQ29weShnbG9iYWxPYmplY3QpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImJvdW5kQXJncyJfcywgYm91bmRGdW5jdGlvbi0+Ym91bmRBcmdzQ29w
eShnbG9iYWxPYmplY3QpKSk7CiAgICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMzg4LDEwICszODgsMTAgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAgICAg
IEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxw
dHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgp
KTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYXJyYXkiLCBpdGVy
YXRlZFZhbHVlKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2Jq
ZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImFy
cmF5Il9zLCBpdGVyYXRlZFZhbHVlKSk7CiAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAg
ICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3Ry
dWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkp
KTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9T
dHJpbmcoa2luZCkpKTsKICAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICAgfQogCkBA
IC00MDIsMTAgKzQwMiwxMCBAQCBKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRl
cm5hbFByb3BlcnRpZXMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgICAgICAgICAg
dW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICAgICAgSlNBcnJheSogYXJyYXkgPSBjb25zdHJ1
Y3RFbXB0eUFycmF5KGdsb2JhbE9iamVjdCwgbnVsbHB0ciwgMik7CiAgICAgICAgICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICAgICAgYXJyYXktPnB1
dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9w
ZXJ0eShnbG9iYWxPYmplY3QsICJtYXAiLCBpdGVyYXRlZFZhbHVlKSk7CisgICAgICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgIm1hcCJfcywgaXRlcmF0ZWRWYWx1ZSkpOwogICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
ICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChn
bG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2Jq
ZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5nKGtpbmQpKSk7CiAgICAgICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDE2LDEwICs0MTYsMTAgQEAgSlNWYWx1ZSBK
U0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAg
ICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51
bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1
ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGlu
ZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0IiwgaXRl
cmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJz
ZXQiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1
Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiLCB0b1N0cmluZyhraW5kKSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIl9zLCB0b1N0
cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAg
fQpAQCAtNDI5LDcgKzQyOSw3IEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldElu
dGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgIEpT
QXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxwdHIs
IDEpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAg
ICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9i
YWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0
LCAic3RyaW5nIiwgc3RyaW5nSXRlcmF0b3ItPml0ZXJhdGVkU3RyaW5nKCkpKTsKKyAgICAgICAg
YXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50
ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJzdHJpbmciX3MsIHN0cmluZ0l0ZXJhdG9yLT5p
dGVyYXRlZFN0cmluZygpKSk7CiAgICAgICAgIHJldHVybiBhcnJheTsKICAgICB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhv
c3RQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVj
dGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKaW5kZXggYWRiYjVlNTdjMzQ1MWMzZDNhODhmODE4
ZjdlYzA1N2NlYjU5ODgyNC4uOThiNTJlYzJlODQ4NWNmN2FiMWQwYTIxYTRkNmE3NjZkNWVlOWU5
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVk
U2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKQEAgLTUyLDcgKzUyLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGVGdW5jdGlvbkV2YWx1YXRlV2kKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmlidXRlRXZhbHVhdGUpOwogc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVB
dHRyaWJ1dGVTYXZlZFJlc3VsdEFsaWFzKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0
ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3Rl
ZFNjcmlwdEhvc3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZh
U2NyaXB0Q2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lLmNwcAppbmRleCAyODk4Y2RmZWI5OWVlYWFjOTNlMjZlYTA2OTJj
ZDcxMjFlYzc4NjEyLi45NTU2OWUwYmNiZDQyNTk1M2Y1YjYyY2RjZDE5MmFhMmRkNzEwYzliIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENh
bGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFT
Y3JpcHRDYWxsRnJhbWUuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0
Q2FsbEZyYW1lOjpzX2luZm8gPSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRDYWxs
RnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0Q2FsbEZyYW1lOjpzX2luZm8g
PSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZSkgfTsKIAogSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lOjpKU0phdmFTY3JpcHRDYWxsRnJhbWUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmPEphdmFTY3JpcHRDYWxsRnJhbWU+JiYgaW1wbCkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcAppbmRl
eCBhYjVhOGFjZDAzMmZiODIxNTkzNGM3ZTQwYTAzMzJmODZhMGI4YjEyLi4xNzA4OGQ4NTkzNmQ1
NjdmOWUwNzFjMjY3ZTU3Y2M2YTY0Y2IxZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGpzSmF2YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVRoaXNPYmplY3QpOwogc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lQXR0cmlidXRlVHlw
ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0phdmFTY3JpcHRDYWxsRnJh
bWVJc1RhaWxEZWxldGVkKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2Fs
bEZyYW1lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRD
YWxsRnJhbWVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JBdWRpdEFnZW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCmluZGV4IDMwYWNhZjMzNDU4MDUzNzRkODFk
YmIwYjFjNWQ0OWZmN2FmMGE2ZTEuLmMyODc3MzZkNzFlN2ViOWU4ODU1OGZmY2QwYjcwNDUyNWJm
ZmNmOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFBy
b3RvY29sOjpFcnJvclN0cmluZ09yPHN0ZDo6dHVwbGU8UmVmPFByb3RvY29sOjpSdW50aW1lOjpS
ZW1vdGVPYmplY3Q+LCBzdGQ6Om9wCiAgICAgaWYgKGluamVjdGVkU2NyaXB0Lmhhc05vVmFsdWUo
KSkKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKGVycm9yU3RyaW5nKTsKIAotICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIiksICIpYCkoV2ViSW5zcGVjdG9yQXVkaXQpOyB9KSIpOworICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIl9zKSwgIilgKShXZWJJbnNwZWN0b3JBdWRpdCk7IH0pIik7CiAKICAg
ICBJbmplY3RlZFNjcmlwdDo6RXhlY3V0ZU9wdGlvbnMgb3B0aW9uczsKICAgICBvcHRpb25zLm9i
amVjdEdyb3VwID0gImF1ZGl0Il9zOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCBlZjBmZjYyYTc4YTNhMWY2MGQ1NTMyOWE1NTM3OGI0ZjU1MTJmZDdkLi4wYTY3YzhlYWY3
OGMzMmZjOTJhY2RkNjFiN2MzOWM2NmM1OGZkMjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50LmNwcApAQCAtNDksNyArNDksNyBAQAogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAot
Y29uc3QgY2hhciogY29uc3QgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0
R3JvdXAgPSAiYmFja3RyYWNlIjsKK2NvbnN0IEFTQ0lJTGl0ZXJhbCBJbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50OjpiYWNrdHJhY2VPYmplY3RHcm91cCA9ICJiYWNrdHJhY2UiX3M7CiAKIC8vIE9iamVj
dHMgY3JlYXRlZCBhbmQgcmV0YWluZWQgYnkgZXZhbHVhdGluZyBicmVha3BvaW50IGFjdGlvbnMg
YXJlIHB1dCBpbnRvIG9iamVjdCBncm91cHMKIC8vIGFjY29yZGluZyB0byB0aGUgYnJlYWtwb2lu
dCBhY3Rpb24gaWRlbnRpZmllciBhc3NpZ25lZCBieSB0aGUgZnJvbnRlbmQuIEEgYnJlYWtwb2lu
dCBtYXkKQEAgLTc0MSw3ICs3NDEsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxTdHJpbmc+
IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmdldFNjcmlwdFNvdXJjZShjb25zdCBQcgogewogICAg
IGF1dG8gaXQgPSBtX3NjcmlwdHMuZmluZChwYXJzZUludGVnZXJBbGxvd2luZ1RyYWlsaW5nSnVu
azxKU0M6OlNvdXJjZUlEPihzY3JpcHRJZCkudmFsdWVfb3IoMCkpOwogICAgIGlmIChpdCA9PSBt
X3NjcmlwdHMuZW5kKCkpCi0gICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZCgiTWlzc2luZyBz
Y3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3Rl
ZCgiTWlzc2luZyBzY3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIl9zKTsKIAogICAgIHJldHVybiBp
dC0+dmFsdWUuc291cmNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCmluZGV4IGUw
Y2U3NjVhNDJjYWE1ZmQwNjM3MDE1ZGVhZGQ1MjU0YWEzOTdhMTguLjRmYWUxYTk5ZGJhMmNmZWMy
OWM5Mzc2ODdjNDRjZTVlMTNmOTAwN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgK
QEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFJlZlB0cjxKU0M6OkJyZWFr
cG9pbnQ+IGRlYnVnZ2VyQnJlYWtwb2ludEZyb21QYXlsb2FkKFByb3RvY29sOjpFcnJvclN0cmlu
ZyYsIFJlZlB0cjxKU09OOjpPYmplY3Q+JiYgb3B0aW9ucyk7CiAKLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgYmFja3RyYWNlT2JqZWN0R3JvdXA7CisgICAgc3RhdGljIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBiYWNrdHJhY2VPYmplY3RHcm91cDsKIAogICAgIC8vIEluc3BlY3RvckFnZW50QmFz
ZQogICAgIHZvaWQgZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNrZW5kKEZyb250ZW5kUm91dGVyKiwg
QmFja2VuZERpc3BhdGNoZXIqKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwCmluZGV4
IDI0YjNlZmQ3YzJhMTg5MTllYjUyNWExNTY3MjM0ZTMwNjc1ODY2ZTAuLmIwNzE4YjljMDU2MmI1
MTc0NDJhODA3Y2ZmZWNhYjFmNDg2YWZkNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySGVhcEFnZW50LmNwcApA
QCAtMjU0LDcgKzI1NCw3IEBAIFByb3RvY29sOjpFcnJvclN0cmluZ09yPFJlZjxQcm90b2NvbDo6
UnVudGltZTo6UmVtb3RlT2JqZWN0Pj4gSW5zcGVjdG9ySGVhcEFnZW50CiAKICAgICBhdXRvIG9i
amVjdCA9IGluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoY2VsbCwgb2JqZWN0R3JvdXAsIHRydWUp
OwogICAgIGlmICghb2JqZWN0KQotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIkludGVy
bmFsIGVycm9yOiB1bmFibGUgdG8gY2FzdCBPYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIG1ha2VV
bmV4cGVjdGVkKCJJbnRlcm5hbCBlcnJvcjogdW5hYmxlIHRvIGNhc3QgT2JqZWN0Il9zKTsKIAog
ICAgIHJldHVybiBvYmplY3QucmVsZWFzZU5vbk51bGwoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCmluZGV4IGExNzMxNWNjNjg0
OTk2YTA1YzVhNWJhNjE1NjQ0MWU4YTliZWQ4NWUuLmM4NjdlZWQyNWE5ZjU4MzdiOTdmYzM3ZWEx
MTRkZGRjMmNiNjRiZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhl
Y3V0YWJsZUFsbG9jYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9FeGVj
dXRhYmxlQWxsb2NhdG9yLmNwcApAQCAtMTE1Miw4ICsxMTUyLDggQEAgdm9pZCBkdW1wSklUTWVt
b3J5KGNvbnN0IHZvaWQqIGRzdCwgY29uc3Qgdm9pZCogc3JjLCBzaXplX3Qgc2l6ZSkKICAgICAg
ICAgc3RhdGljIHZvaWQgZmx1c2goKSBXVEZfUkVRVUlSRVNfTE9DSyhkdW1wSklUTWVtb3J5TG9j
aykKICAgICAgICAgewogICAgICAgICAgICAgaWYgKGZkID09IC0xKSB7Ci0gICAgICAgICAgICAg
ICAgU3RyaW5nIHBhdGggPSBPcHRpb25zOjpkdW1wSklUTWVtb3J5UGF0aCgpOwotICAgICAgICAg
ICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoIiVwaWQiLCBTdHJpbmc6Om51bWJlcihnZXRDdXJy
ZW50UHJvY2Vzc0lEKCkpKTsKKyAgICAgICAgICAgICAgICBTdHJpbmcgcGF0aCB7IE9wdGlvbnM6
OmR1bXBKSVRNZW1vcnlQYXRoKCkgfTsKKyAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBs
YWNlKCIlcGlkIl9zLCBTdHJpbmc6Om51bWJlcihnZXRDdXJyZW50UHJvY2Vzc0lEKCkpKTsKICAg
ICAgICAgICAgICAgICBmZCA9IG9wZW4oRmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0
aW9uKHBhdGgpLmRhdGEoKSwgT19DUkVBVCB8IE9fVFJVTkMgfCBPX0FQUEVORCB8IE9fV1JPTkxZ
IHwgT19FWExPQ0sgfCBPX05PTkJMT0NLLCAwNjY2KTsKICAgICAgICAgICAgICAgICBSRUxFQVNF
X0FTU0VSVChmZCAhPSAtMSk7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRDb2RlLmNwcAppbmRleCA2YmY1YTFjMzYyODVlZDdiMjAwMTY3YzQ4ODcyM2QwNGQ2NTBiZTBj
Li45ODM2ZWE1ZjM5ZjcwYjBhNDdhNzZlNTIzNDY2YTkzNDg2ZmMxY2Y4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUQ29kZS5jcHAKQEAgLTQ0LDI0ICs0NCwyNCBAQCBKSVRDb2RlOjp+SklU
Q29kZSgpCiB7CiB9CiAKLWNvbnN0IGNoYXIqIEpJVENvZGU6OnR5cGVOYW1lKEpJVFR5cGUgaml0
VHlwZSkKK0FTQ0lJTGl0ZXJhbCBKSVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUpCiB7
CiAgICAgc3dpdGNoIChqaXRUeXBlKSB7CiAgICAgY2FzZSBKSVRUeXBlOjpOb25lOgotICAgICAg
ICByZXR1cm4gIk5vbmUiOworICAgICAgICByZXR1cm4gIk5vbmUiX3M7CiAgICAgY2FzZSBKSVRU
eXBlOjpIb3N0Q2FsbFRodW5rOgotICAgICAgICByZXR1cm4gIkhvc3QiOworICAgICAgICByZXR1
cm4gIkhvc3QiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpJbnRlcnByZXRlclRodW5rOgotICAgICAg
ICByZXR1cm4gIkxMSW50IjsKKyAgICAgICAgcmV0dXJuICJMTEludCJfczsKICAgICBjYXNlIEpJ
VFR5cGU6OkJhc2VsaW5lSklUOgotICAgICAgICByZXR1cm4gIkJhc2VsaW5lIjsKKyAgICAgICAg
cmV0dXJuICJCYXNlbGluZSJfczsKICAgICBjYXNlIEpJVFR5cGU6OkRGR0pJVDoKLSAgICAgICAg
cmV0dXJuICJERkciOworICAgICAgICByZXR1cm4gIkRGRyJfczsKICAgICBjYXNlIEpJVFR5cGU6
OkZUTEpJVDoKLSAgICAgICAgcmV0dXJuICJGVEwiOworICAgICAgICByZXR1cm4gIkZUTCJfczsK
ICAgICBkZWZhdWx0OgogICAgICAgICBDUkFTSCgpOwotICAgICAgICByZXR1cm4gIiI7CisgICAg
ICAgIHJldHVybiAiIl9zOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUu
aAppbmRleCA3ZTM4MzM4MmIzZjUxY2U3NDE4NTMzOGQ2MGRkNjAwNWMzYTViY2M3Li5mYjEwNmRl
ZmQzMDlmMTdiMWJkNGQ2ZGNhMDE5MDI3ZjU5MGIzYWJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0pJVENvZGUuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4gdXNpbmcgQ29kZVB0ciA9IE1hY3JvQXNzZW1ibGVyQ29kZVB0cjx0YWc+OwogICAgIHRl
bXBsYXRlPFB0clRhZyB0YWc+IHVzaW5nIENvZGVSZWYgPSBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8
dGFnPjsKIAotICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0eXBlTmFtZShKSVRUeXBlKTsKKyAgICBz
dGF0aWMgQVNDSUlMaXRlcmFsIHR5cGVOYW1lKEpJVFR5cGUpOwogCiAgICAgc3RhdGljIEpJVFR5
cGUgYm90dG9tVGllckpJVCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
T3BlcmF0aW9ucy5jcHAKaW5kZXggZWZjOWEwZThiYjAyZTIyNTgxMTg0NjIzZDEwNjBhODkzNWNk
ZjJhMS4uYWI2NmVhNDI5ZDQ4NTBlYjdjMWJiZGU2NmZjOTFkMmJkZDNjZWUzNiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3BwCkBAIC0xMjcsNyArMTI3LDcg
QEAgc3RhdGljIEpTVmFsdWUgZ2V0V3JhcHBlZFZhbHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTR2xvYmFsT2JqZWN0KiB0YXIKICAgICBpZiAodmFsdWUuaXNDYWxsYWJsZSh2bSkp
CiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNSZW1vdGVGdW5jdGlvbjo6dHJ5
Q3JlYXRlKHRhcmdldEdsb2JhbE9iamVjdCwgdm0sIHN0YXRpY19jYXN0PEpTT2JqZWN0Kj4odmFs
dWUuYXNDZWxsKCkpKSk7CiAKLSAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAidmFsdWUgcGFzc2luZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJlIGNhbGxhYmxlIG9yIHByaW1p
dGl2ZSIpOworICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBw
YXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsK
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBl
N2QzY2U5NDIxZTVkYzEyZTA5YmFmMDJiZTU1MDQyYWZhZDYwN2Q4Li5iZDJlYjgxMmM2YzM3ZWQ1
MmVkYzYzYjkyNjdmY2JjYTk4MTU5NGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtNzQxLDcg
Kzc0MSw3IEBAIHN0YXRpYyBib29sIHNoZWxsU3VwcG9ydHNSaWNoU291cmNlSW5mbyhjb25zdCBK
U0dsb2JhbE9iamVjdCopCiAgICAgcmV0dXJuIHN1cHBvcnRzUmljaFNvdXJjZUluZm87CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIsICZKU0ds
b2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogY29uc3QgR2xvYmFsT2JqZWN0
TWV0aG9kVGFibGUgR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewog
ICAgICZzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8sCiAgICAgJnNob3VsZEludGVycnVwdFNj
cmlwdCwKQEAgLTEwOTMsMTAgKzEwOTMsMTAgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgY2FjaGVQ
YXRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmICghY2FjaGVFbmFibGVkKCkpCi0gICAgICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgY2hhcio+KG51bGxwdHIpOworICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKICAgICAgICAgY29uc3QgY2hhciogY2FjaGVQYXRoID0gT3B0aW9uczo6
ZGlza0NhY2hlUGF0aCgpOwogICAgICAgICBTdHJpbmcgZmlsZW5hbWUgPSBGaWxlU3lzdGVtOjpl
bmNvZGVGb3JGaWxlTmFtZShGaWxlU3lzdGVtOjpsYXN0Q29tcG9uZW50T2ZQYXRoSWdub3JpbmdU
cmFpbGluZ1NsYXNoKHNvdXJjZU9yaWdpbigpLnVybCgpLmZpbGVTeXN0ZW1QYXRoKCkpKTsKLSAg
ICAgICAgcmV0dXJuIEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChjYWNoZVBh
dGgsIG1ha2VTdHJpbmcoc291cmNlKCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUs
ICIuYnl0ZWNvZGUtY2FjaGUiKSk7CisgICAgICAgIHJldHVybiBGaWxlU3lzdGVtOjpwYXRoQnlB
cHBlbmRpbmdDb21wb25lbnQoU3RyaW5nIHsgY2FjaGVQYXRoIH0sIG1ha2VTdHJpbmcoc291cmNl
KCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUsICIuYnl0ZWNvZGUtY2FjaGUiKSk7
CiAgICAgfQogCiAgICAgdm9pZCBsb2FkQnl0ZWNvZGUoKSBjb25zdApAQCAtMTI1OSwxMCArMTI1
OSwxMCBAQCBzdGF0aWMgQ1N0cmluZyB0b0NTdHJpbmcoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIFQmIHN0cgogICAgICAgICB0aHJvd091dE9mTWVtb3J5
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVVRG
OENvbnZlcnNpb25FcnJvcjo6SWxsZWdhbFNvdXJjZToKLSAgICAgICAgc2NvcGUudGhyb3dFeGNl
cHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxlZ2FsIHNv
dXJjZSBlbmNvdW50ZXJlZCBkdXJpbmcgVVRGOCBjb252ZXJzaW9uIikpOworICAgICAgICBzY29w
ZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwg
IklsbGVnYWwgc291cmNlIGVuY291bnRlcmVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24iX3MpKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBVVEY4Q29udmVyc2lvbkVycm9yOjpTb3VyY2VFeGhh
dXN0ZWQ6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgY3JlYXRl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiU291cmNlIGV4aGF1c3RlZCBkdXJpbmcgVVRGOCBjb252ZXJz
aW9uIikpOworICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0
ZUVycm9yKGdsb2JhbE9iamVjdCwgIlNvdXJjZSBleGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVy
c2lvbiJfcykpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNF
X0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMTQ3Nyw3ICsxNDc3LDcgQEAgcHJpdmF0ZToKICAg
ICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNDTWVtb3J5Rm9vdHByaW50OjpzX2luZm8gPSB7
ICJNZW1vcnlGb290cHJpbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ01lbW9yeUZvb3RwcmludCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0NNZW1vcnlGb290cHJpbnQ6OnNfaW5mbyA9IHsgIk1lbW9yeUZvb3RwcmludCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NNZW1vcnlG
b290cHJpbnQpIH07CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk1lbW9yeVVz
YWdlU3RhdGlzdGljcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSop
KQogewpAQCAtMTY2MiwxMyArMTY2MiwxMyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25SZWFkRmlsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcgogICAg
ICAgICBTdHJpbmcgdHlwZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSkudG9XVEZTdHJpbmcoZ2xv
YmFsT2JqZWN0KTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CiAgICAgICAgIGlmICh0eXBlICE9ICJiaW5hcnkiKQotICAgICAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScg
YXMgc2Vjb25kIGFyZ3VtZW50LiIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScgYXMgc2Vjb25kIGFyZ3VtZW50
LiJfcyk7CiAgICAgICAgIGlzQmluYXJ5ID0gdHJ1ZTsKICAgICB9CiAKICAgICBSZWZQdHI8VWlu
dDhBcnJheT4gY29udGVudCA9IGZpbGxCdWZmZXJXaXRoQ29udGVudHNPZkZpbGUoZmlsZU5hbWUp
OwogICAgIGlmICghY29udGVudCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iKTsKKyAgICAgICAgcmV0dXJuIHRo
cm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iX3Mp
OwogCiAgICAgaWYgKCFpc0JpbmFyeSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1N0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOFdpdGhMYXRpbjFGYWxsYmFjayhjb250ZW50LT5k
YXRhKCksIGNvbnRlbnQtPmxlbmd0aCgpKSkpOwpAQCAtMTgxMiw3ICsxODEyLDcgQEAgcHJpdmF0
ZToKICAgICBGSUxFKiBtX2Rlc2NyaXB0b3I7CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNGaWxl
RGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2NyaXB0b3IiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZURlc2NyaXB0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSlNGaWxlRGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2Ny
aXB0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNGaWxlRGVzY3JpcHRvcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1
bmN0aW9uT3BlbkZpbGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSkpCiB7CkBAIC0xODQ3LDcgKzE4NDcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZnVuY3Rpb25SZWFkbGluZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcgogICAgICAgICBsaW5lLmFwcGVuZChjKTsKICAgICB9CiAgICAgbGluZS5hcHBlbmQoJ1ww
Jyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhnbG9iYWxPYmplY3QtPnZt
KCksIGxpbmUuZGF0YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhn
bG9iYWxPYmplY3QtPnZtKCksIFN0cmluZyB7IGxpbmUuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJlY2lzZVRpbWUsIChKU0dsb2JhbE9iamVjdCos
IENhbGxGcmFtZSopKQpAQCAtMTkwMSw3ICsxOTAxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uQ2FsbGVySXNCQlFPck9NR0NvbXBpbGVkLCAoSlNHbG9iYWxPYmplY3QqIGds
b2IKICAgICBDYWxsZXJGdW5jdG9yIHdhc21Ub0pTRnJhbWU7CiAgICAgU3RhY2tWaXNpdG9yOjp2
aXNpdChjYWxsRnJhbWUsIHZtLCB3YXNtVG9KU0ZyYW1lKTsKICAgICBpZiAoIXdhc21Ub0pTRnJh
bWUuY2FsbGVyRnJhbWUoKSB8fCAhd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5pc0FueVdh
c21DYWxsZWUoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdhc20tPmpzIGltcG9ydCBmdW5jdGlvbiIpOworICAgICAg
ICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJjYWxsZXIgaXMgbm90
IGEgd2FzbS0+anMgaW1wb3J0IGZ1bmN0aW9uIl9zKTsKIAogICAgIC8vIFdlIGhhdmUgYSB3cmFw
cGVyIGZyYW1lIHRoYXQgd2UgZ2VuZXJhdGUgZm9yIGltcG9ydHMuIElmIHdlIGV2ZXIgY2FuIGRp
cmVjdCBjYWxsIGZyb20gd2FzbSB3ZSB3b3VsZCBuZWVkIHRvIGNoYW5nZSB0aGlzLgogICAgIEFT
U0VSVCghd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5jYWxsZWUoKS5pc1dhc20oKSk7CkBA
IC0yNTI0LDcgKzI1MjQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25TZXRU
aW1lb3V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogICAgIHZtLmRlZmVy
cmVkV29ya1RpbWVyLT5zY2hlZHVsZVdvcmtTb29uKHRpY2tldCwgW2NhbGxiYWNrXShEZWZlcnJl
ZFdvcmtUaW1lcjo6VGlja2V0KSB7CiAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QgPSBjYWxsYmFjay0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVm
ZmVyIGFyZ3M7Ci0gICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmlu
ZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iKTsKKyAgICAgICAgY2FsbChn
bG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4n
dCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgfSk7CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKIH0KQEAgLTI4MTMsOSArMjgxMyw5IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihmdW5jdGlvbldlYkFzc2VtYmx5TWVtb3J5TW9kZSwgKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPCiAKICAgICBpZiAoSlNPYmplY3QqIG9iamVjdCA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCkuZ2V0T2JqZWN0KCkpIHsKICAgICAgICAgaWYgKGF1dG8qIG1lbW9yeSA9IGpzRHluYW1pY0Nh
c3Q8SlNXZWJBc3NlbWJseU1lbW9yeSo+KHZtLCBvYmplY3QpKQotICAgICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgbWFrZVN0cmluZyhtZW1vcnktPm1lbW9yeSgp
Lm1vZGUoKSkpKTsKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmco
dm0sIFN0cmluZyB7IG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2RlKCkpIH0pKTsKICAg
ICAgICAgaWYgKGF1dG8qIGluc3RhbmNlID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqPih2bSwgb2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
anNTdHJpbmcodm0sIG1ha2VTdHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkpKTsKKyAgICAg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyB7IG1ha2VT
dHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkgfSkpOwogICAgIH0KIAogICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseU1lbW9yeU1v
ZGUgZXhwZWN0cyBlaXRoZXIgYSBXZWJBc3NlbWJseS5NZW1vcnkgb3IgV2ViQXNzZW1ibHkuSW5z
dGFuY2UiX3MpOwpAQCAtMzE4Myw3ICszMTgzLDcgQEAgc3RhdGljIHZvaWQgcnVuV2l0aE9wdGlv
bnMoR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENvbW1hbmRMaW5lJiBvcHRpb25zLCBib28K
ICAgICAgICAgSlNJbnRlcm5hbFByb21pc2UqIHByb21pc2UgPSBudWxscHRyOwogICAgICAgICBi
b29sIGlzTW9kdWxlID0gb3B0aW9ucy5tX21vZHVsZSB8fCBzY3JpcHRzW2ldLnNjcmlwdFR5cGUg
PT0gU2NyaXB0OjpTY3JpcHRUeXBlOjpNb2R1bGU7CiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmNv
ZGVTb3VyY2UgPT0gU2NyaXB0OjpDb2RlU291cmNlOjpGaWxlKSB7Ci0gICAgICAgICAgICBmaWxl
TmFtZSA9IHNjcmlwdHNbaV0uYXJndW1lbnQ7CisgICAgICAgICAgICBmaWxlTmFtZSA9IFN0cmlu
ZyB7IHNjcmlwdHNbaV0uYXJndW1lbnQgfTsKICAgICAgICAgICAgIGlmIChzY3JpcHRzW2ldLnN0
cmljdE1vZGUgPT0gU2NyaXB0OjpTdHJpY3RNb2RlOjpTdHJpY3QpCiAgICAgICAgICAgICAgICAg
c2NyaXB0QnVmZmVyLmFwcGVuZCgiXCJ1c2Ugc3RyaWN0XCI7XG4iLCBzdHJsZW4oIlwidXNlIHN0
cmljdFwiO1xuIikpOwogCkBAIC0zNDMwLDcgKzM0MzAsNyBAQCB2b2lkIENvbW1hbmRMaW5lOjpw
YXJzZUFyZ3VtZW50cyhpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAgICAgICAgICBpZiAoKytp
ID09IGFyZ2MpCiAgICAgICAgICAgICAgICAgcHJpbnRVc2FnZVN0YXRlbWVudCgpOwogICAgICAg
ICAgICAgT3B0aW9uczo6c2V0T3B0aW9uKCJ1c2VQcm9maWxlcj0xIik7Ci0gICAgICAgICAgICBt
X3Byb2ZpbGVyT3V0cHV0ID0gYXJndltpXTsKKyAgICAgICAgICAgIG1fcHJvZmlsZXJPdXRwdXQg
PSBTdHJpbmcgeyBhcmd2W2ldIH07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQog
ICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItbSIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAppbmRleCBkYTYwMGVhMDBmMGM4ZDY0M2E1N2Y2
NmZiNWY5YjBlM2EzNTY4M2E4Li43YjQ4MjdlZjNjMjM2NzIwNWRjOGQyMzllYTQyYTgxN2EzOTgy
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0
aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5j
cHAKQEAgLTIzMjgsOSArMjMyOCw5IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVZhcmFyZ3NDaGVja3Bv
aW50KFZNJiB2bSwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTR2xvYmFsT2JqZWN0CiAKICAgICBK
U1ZhbHVlIHJlc3VsdDsKICAgICBpZiAoT3Bjb2RlOjpvcGNvZGVJRCAhPSBvcF9jb25zdHJ1Y3Rf
dmFyYXJncykKLSAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQo
Y2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRl
Y29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiKTsKKyAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9i
YWxPYmplY3QsIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9w
ZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiX3MpOwogICAg
IGVsc2UKLSAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgZ2V0T3BlcmFu
ZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5
dGVjb2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiIpOworICAgICAgICByZXN1bHQgPSBjb25zdHJ1
Y3QoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUp
LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIl9z
KTsKIAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgY2FsbEZy
YW1lLT51bmNoZWNrZWRSKGJ5dGVjb2RlLm1fZHN0KSA9IHJlc3VsdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAKaW5kZXggMTA5MzUxZDgzNTUwNjMxMWY5ZjljNTA1MGQ3Y2Ri
NmQ2Y2ZlNjM2OS4uYzc3MmU4ZmI5OTU4OGQ1ZmI3NGUwNDFhMThlZTZmYjM1YTU5MDhlNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTI2NzYsNyArMjY3Niw3IEBA
IEpTVG9rZW5UeXBlIExleGVyPFQ+OjpzY2FuUmVnRXhwKEpTVG9rZW4qIHRva2VuUmVjb3JkLCBV
Q2hhciBwYXR0ZXJuUHJlZml4KQogICAgICAgICBtX2Vycm9yID0gdHJ1ZTsKICAgICAgICAgU3Ry
aW5nIGNvZGVQb2ludCA9IFN0cmluZzo6ZnJvbUNvZGVQb2ludChjdXJyZW50Q29kZVBvaW50KCkp
OwogICAgICAgICBpZiAoIWNvZGVQb2ludCkKLSAgICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52
YWxpZCB1bmljb2RlIGNoYXJhY3RlcmAiOworICAgICAgICAgICAgY29kZVBvaW50ID0gImBpbnZh
bGlkIHVuaWNvZGUgY2hhcmFjdGVyYCJfczsKICAgICAgICAgbV9sZXhFcnJvck1lc3NhZ2UgPSBt
YWtlU3RyaW5nKCJJbnZhbGlkIG5vbi1sYXRpbiBjaGFyYWN0ZXIgaW4gUmV4RXhwIGxpdGVyYWwn
cyBmbGFncyAnIiwgZ2V0VG9rZW4oKnRva2VuUmVjb3JkKSwgY29kZVBvaW50LCAiJyIpOwogICAg
ICAgICByZXR1cm4gdG9rZW47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXIuY3BwCmluZGV4IDU1MjZmNWM5YTEyNTAwODEzM2U5MThlMjZlZjMyNDdhODVkZTIzODkuLjgy
ZWMyNWE4YmZlM2I0NTZmMzA2NzU5NjZiMGY0OTYxMzUxYTY2ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTUwMDksNyArNTAwOSw3IEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gUGFyc2VyPExleGVyVHlwZT46OnBhcnNl
UHJpbWFyeUV4cHJlCiAgICAgICAgIFRyZWVFeHByZXNzaW9uIHJlID0gY29udGV4dC5jcmVhdGVS
ZWdFeHAobG9jYXRpb24sICpwYXR0ZXJuLCAqZmxhZ3MsIHN0YXJ0KTsKICAgICAgICAgaWYgKCFy
ZSkgewogICAgICAgICAgICAgWWFycjo6RXJyb3JDb2RlIGVycm9yQ29kZSA9IFlhcnI6OmNoZWNr
U3ludGF4KHBhdHRlcm4tPnN0cmluZygpLCBmbGFncy0+c3RyaW5nKCkpOwotICAgICAgICAgICAg
cmVnZXhGYWlsKFlhcnI6OmVycm9yTWVzc2FnZShlcnJvckNvZGUpKTsKKyAgICAgICAgICAgIHJl
Z2V4RmFpbChTdHJpbmcgeyBZYXJyOjplcnJvck1lc3NhZ2UoZXJyb3JDb2RlKSB9KTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gcmU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDQyNWI4ZmFk
MTM4MGU3M2M2OGU4MjE2ZGU0NWJlZDQ2ZGJhYWRlNTguLmU5MzgyZDQ5NDMyYzkyZWM4NWUzMzFk
ZDViZTMzMTUwYTM2Y2YxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BYnN0cmFjdE1vZHVsZVJlY29yZC5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNw
YWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKIH0gLy8gbmFtZXNwYWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50
ZXJuYWwKIAotY29uc3QgQ2xhc3NJbmZvIEFic3RyYWN0TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7
ICJBYnN0cmFjdE1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQWJzdHJhY3RNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFz
c0luZm8gQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIkFic3RyYWN0TW9kdWxlUmVj
b3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEFic3RyYWN0TW9kdWxlUmVjb3JkKSB9OwogCiBBYnN0cmFjdE1vZHVsZVJlY29yZDo6QWJz
dHJhY3RNb2R1bGVSZWNvcmQoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRl
bnRpZmllciYgbW9kdWxlS2V5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcAppbmRleCBlOWJkYjdjODVkYWFmZTU2Y2JmODFiZTZiNGU3NWVmN2RlM2JkMjdl
Li4wZjQ5NWI2NzgzOWMwM2RmNDBmMDlmMjllMTU5OGUyZTY2YWE3ZjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3Ip
OwogCi1jb25zdCBDbGFzc0luZm8gQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQWdncmVnYXRl
RXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCmluZGV4IDA4
ODZmOTNmNjVjZjVjNjExYzUzYjRkOGI1MmQ2NDVjM2Q1MzFlYmYuLmQ3YjEzODY2YTMwYmVlMjE5
ZDcxMTRiOWI4NmY5MmFlZDZjMWI1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQXJyYXlD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmFycmF5Q29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUNvbnN0cnVjdG9yKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEFycmF5Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBhcnJheUNvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRl
cmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggZDNhZDIxZTViYzk3ZWE5NDUwYzZjZTBiNmY3ZTBj
NjI1MTdjOTE5OS4uM2Y5NjhkMjFkNTM3ZGU3ZjZhMmQ5MTBiODAyMzZiMzhkYWM3M2I5NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0
ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIEFycmF5SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCAxODE1ZTE0
N2I5NjVlY2M2MmEyZWUzYmU4OGQ5NDhhMGMwYjRmMGVkLi41NzNhMTdiMGRjMGQ5MGQzNDE5YTAz
NjUxNjBhNDJjNDE1MDNmM2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlQcm90b3R5cGUuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGFycmF5UHJvdG9GdW5jTGFzdEluZGV4T2YpOwogCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQXJyYXlQcm90b3R5cGUgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6OnNfaW5mbyA9IHsi
QXJyYXkiLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5UHJvdG90eXBlKX07Citjb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIkFycmF5Il9zLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5UHJvdG90eXBlKSB9OwogCiBBcnJheVByb3RvdHlw
ZSogQXJyYXlQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpAQCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU09iamVj
dCo+IHNwZWNpZXNDb25zdHJ1CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgY29uc3RydWN0b3IsIGFyZ3MsICJTcGVjaWVzIGNvbnN0cnVjdGlvbiBkaWQgbm90IGdldCBh
IHZhbGlkIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24g
ZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZXhjZXB0aW9uUmVzdWx0KTsKICAgICByZXR1cm4gc3RkOjpwYWlyIHsgU3Bl
Y2llc0NvbnN0cnVjdFJlc3VsdDo6Q3JlYXRlZE9iamVjdCwgbmV3T2JqZWN0IH07CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9t
U3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMjA5NTlhOTkwNDcxNTNhY2ViMzlhZGJk
YjBmMjE0MTI2MWZhZjllLi5jZThkYWVlZTRmZGQyYTE4NDFiOGNmZjg0ZGIzMDMxYWQwYWYxN2E3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5j
SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0Zyb21TeW5jSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnJvbVN5bmNJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sICZhc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShBc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3lu
Y0Zyb21TeW5jSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Zyb21T
eW5jSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIEFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlw
ZTo6QXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRl
eCBmN2ZhYzU4YmM0OThiZTBjZDJjYTQ0ZDVlM2ZhMmJkMDYxMWNmNjA5Li40Y2Y3ZDZmYjM4MDNi
NTYwMjAwY2QyNTZiNTQ2YjBlNTM2ZmZjNThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0
LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0lu
Zm8gQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3lu
Y0Z1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jRnVu
Y3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCA0NTFk
MTA5MzdkNjQyYzdkMjZhZWUwMmUzNWY4NWQ1ZWE4YjM3ZDFmLi41ZmYxNTJjYWY1YzE4NTU1ZGZl
MGZjMzBmNmNkMjA3OTMzOTk2YTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Qcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OwogCiBBc3luY0Z1bmN0aW9uUHJv
dG90eXBlOjpBc3luY0Z1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiAgICAgOiBKU0M6OkpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDEyYzlhYmU0NTc2YzllYjllM2FiNDdi
ODgyYjJkYjY2YzZlMjFkNzUuLjU3YWU5YjAzYTFhNTM5MzQ3ODI1OGVlOTVjYTcxNjIyODUxOWRl
NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkFzeW5j
R2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IDhiNDA0ODU0N2Y4ZmRiY2E1NTk3YjM4YTk3
ZjgwNDliMjlkNDcxODcuLjZmNDYzY2ZlM2I0NTUwOTc5Njg5ZGY3MTUyOTgyOTJjMjgxZDM3YWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Q
cm90b3R5cGU6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQzo6SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDBlNmRjYjUzZDYzODA5NTU1NTJkZDBjN2YzZDEyNjBl
NzIzZGY1OGMuLmNmMjIxOGRlNWFhYjlmZmY1NzM4MWY1MWQ3MGE0NGFjY2IxZmJhNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0dlbmVyYXRvclByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEFzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBjYzY5
ODYzMjEwNzMwZmNmZjQxMGM3ZTlmYjkyYzQ5MmQwZDA3Y2RlLi5mYTNhMDNjYWJhZGE3Y2E3MWU1
MjBlZTAyN2Y1ODgxNWE3YzVmMjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEFzeW5jSXRlcmF0
b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0
b21pY3NPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09i
amVjdC5jcHAKaW5kZXggOWVlNDVkZjQ3M2E0OTE1NzVkOTU1YmNmNzk5MGVmZDA1YjgwYWQ4Ni4u
ZTJmODE3NTgxY2MxODA2ZTg3ODQzZDVkOGY5OTU0MzEwZjY5MmY3YyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKQEAgLTU1LDcgKzU1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEF0b21pY3NPYmplY3Qp
OwogRk9SX0VBQ0hfQVRPTUlDU19GVU5DKERFQ0xBUkVfRlVOQ19QUk9UTykKICN1bmRlZiBERUNM
QVJFX0ZVTkNfUFJPVE8KIAotY29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNfaW5mbyA9
IHsgIkF0b21pY3MiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEF0b21pY3NPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQXRvbWljc09iamVj
dDo6c19pbmZvID0geyAiQXRvbWljcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBdG9taWNzT2JqZWN0KSB9OwogCiBBdG9taWNzT2JqZWN0
OjpBdG9taWNzT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05v
bkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWI4NWQ5YjFiNzU0NWY2NGZm
NWEyYmZhYTFjZThmNTUwNjgwN2U5ZC4uNzc1NmNhZTFhNzA1NzQxODVjZTk3NTdlN2MyM2I3YjM1
ZDI5NGUwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEJpZ0ludENvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZiaWdJbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJpZ0ludENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEJp
Z0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
JmJpZ0ludENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQmln
SW50Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgQmlnSW50Q29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBiaWdJbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcAppbmRleCBmMTdlNTdjODVkZDZhMGNhNTFkZmU2
NWI2YzM0Y2ViZDJjZjhhYWNiLi4yN2ZhNjhjZjAzMzE4ZDg4MjkzNDI0NTUyM2JiZTE5ZGI4ZTIz
NTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludE9iamVjdC5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShCaWdJbnRPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8g
QmlnSW50T2JqZWN0OjpzX2luZm8gPSB7ICJCaWdJbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludE9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBCaWdJbnRPYmplY3Q6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRPYmplY3QpIH07
CiAKIAogQmlnSW50T2JqZWN0KiBCaWdJbnRPYmplY3Q6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYmlnSW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAKaW5kZXggOTUyMjA5ZDM3MTY1
NWM2MDk4ZGI2YmVlN2I1YjNlNzU2ZjZmOWJkZi4uNzg2NWE3OWZlNmVkODJiYzUwN2Y1MGQ4MDNm
YTMwM2JiZmZhNmY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
aWdJbnRQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGJpZ0ludFByb3RvRnVuY1ZhbHVlT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludFByb3RvdHlwZTo6c19pbmZvID0geyAiQmlnSW50Iiwg
JkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCaWdJbnRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBiaWdJbnRQ
cm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jv
b2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZWUyNTA2ZjkyNjM3NTU2ZDc0Mzk4NmI5MTE1NTY2
ZWYxYmJhYWEzNS4uZmEyY2ZkYmM2NGJlZDAzMjQ3MzExYzcwOGVjY2M4N2U0MzBlYTYwNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVjdG9yKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5D
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Db25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEJvb2xlYW5Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKaW5kZXgg
YjhjNjI0NmQxZmI5MGJjZDU4MjQ2ZWFlZjQzOTJmYTJkMjZhYmZmYS4uMzExY2FjODFmZDFjZTUz
NTMyZmQ1M2Q5NWE2OTA1MWY4MjQ0ZmNhMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKQEAgLTI3LDcgKzI3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShCb29sZWFuT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xl
YW4iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVhbk9iamVjdDo6c19pbmZv
ID0geyAiQm9vbGVhbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0OjpCb29sZWFu
T2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFu
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90
b3R5cGUuY3BwCmluZGV4IGFmMDA3YTM1ZWEwZTQwZjUzN2YxNjdjZDMwZjM1M2Y2OTdkYTAzNWIu
Ljg3N2UzODUwZTIzMDNlNmU2NjUzOTFkZjY1MWNiODc0NDE4ZGUyYzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGJvb2xlYW5Qcm90b0Z1
bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFu
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJCb29sZWFuIiwgJkJvb2xlYW5PYmplY3Q6OnNfaW5mbywg
JmJvb2xlYW5Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29s
ZWFuUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Qcm90b3R5cGU6OnNfaW5m
byA9IHsgIkJvb2xlYW4iX3MsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gYm9vbGVh
blByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9CeXRlY29kZUNhY2hlRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qnl0ZWNvZGVDYWNoZUVycm9yLmNwcAppbmRleCBhOWZjYjNlZjI1NDk2MmVjOWMwZDg0MWZmN2Ey
ZmZmMWM2MTg2ZmVmLi5kZDljMGUzNmNhZGYyZmE5ZjM2NDNjZTE0YzM3MjNhODkyNTE0NDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJy
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVjb2RlQ2FjaGVF
cnJvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgYm9vbCBCeXRlY29kZUNhY2hlRXJyb3I6OlN0YW5k
YXJkRXJyb3I6OmlzVmFsaWQoKSBjb25zdAogCiBTdHJpbmcgQnl0ZWNvZGVDYWNoZUVycm9yOjpT
dGFuZGFyZEVycm9yOjptZXNzYWdlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gc2FmZVN0cmVycm9y
KG1fZXJybm8pLmRhdGEoKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgc2FmZVN0cmVycm9yKG1fZXJy
bm8pLmRhdGEoKSB9OwogfQogCiBib29sIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6V3JpdGVFcnJvcjo6
aXNWYWxpZCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9DYWxsRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5j
cHAKaW5kZXggOTc4OWQ3NzNjMWMzNGU2MGFhMDUyNGNmYzcyZTdhMWI2MjMwY2E5ZS4uYjY0MjI2
NjM4ZjdmNDVhZTdlMmRkOWM1ZTdjOTY1ZDczZWJhNDM4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NhbGxEYXRhLmNwcApAQCAtMzMsMTIgKzMzLDEyIEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1KU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNhbGwoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbk9i
amVjdCwgZnVuY3Rpb25PYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9CiAKLUpTVmFsdWUg
Y2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0
LCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaAppbmRleCA3M2E5YzE1NWVkNDNm
YTIwYjU4OWMxOGIxZmZlZmY0YzQ0OTQ1MjNjLi4xYWM5M2U4MTIwOGI4ZDBmYzNlNmIyZTJkNjEx
MDIwMmQ3YWZiMDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
YWxsRGF0YS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmgK
QEAgLTYwLDggKzYwLDggQEAgZW51bSBjbGFzcyBQcm9maWxpbmdSZWFzb24gOiB1aW50OF90IHsK
IH07CiAKIC8vIENvbnZlbmllbmNlIHdyYXBwZXIgc28geW91IGRvbid0IG5lZWQgdG8gZGVhbCB3
aXRoIENhbGxEYXRhIHVubGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVzZSBpdC4KLUpTX0VYUE9SVF9Q
UklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmpl
Y3QsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JU
X1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9i
amVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJv
ck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0
KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2Jq
ZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAogSlNfRVhQT1JUX1BSSVZBVEUg
SlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29u
c3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwogSlNfRVhQ
T1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlv
bk9iamVjdCwgY29uc3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlz
dCYsIE5ha2VkUHRyPEV4Y2VwdGlvbj4mIHJldHVybmVkRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKaW5kZXggMjQ2NDAyZTBjNWQwYmI3N2Y0NmY4
ZTBlMWEyMjlkMWJjYWJkYjc4Yi4uYTU3NjkyOGVkOGFiYzEyNWQ5NTg1NDhkYWQwZDlkMGQ0OTUw
Nzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZv
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKQEAgLTE3
Niw3ICsxNzYsNyBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICB1c2luZyBDaGVja0pTQ2FzdFNu
aXBwZXRGdW5jdGlvblB0ciA9IFJlZjxTbmlwcGV0PiAoKikodm9pZCk7CiAKICAgICAvLyBBIHN0
cmluZyBkZW5vdGluZyB0aGUgY2xhc3MgbmFtZS4gRXhhbXBsZTogIldpbmRvdyIuCi0gICAgY29u
c3QgY2hhciogY2xhc3NOYW1lOworICAgIEFTQ0lJTGl0ZXJhbCBjbGFzc05hbWU7CiAgICAgLy8g
UG9pbnRlciB0byB0aGUgY2xhc3MgaW5mb3JtYXRpb24gb2YgdGhlIGJhc2UgY2xhc3MuCiAgICAg
Ly8gbnVsbHB0cmlmIHRoZXJlIGlzIG5vbmUuCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBwYXJlbnRD
bGFzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFy
Z3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwCmluZGV4IGRhOTA4ZGFjNDQwYmU3Njg4MDI0NGEwNjViY2Q5ZTdlMTg2N2I1Y2QuLjlm
NTFiZWQzZGFhZmE5YjM4MjEwMWY2MjQyMDMwMzk1ZmY2NGQxYWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNwcApAQCAtMzMsNyArMzMs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKENsb25lZEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBDbG9uZWRBcmd1bWVu
dHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ2xvbmVkQXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJ
bmZvIENsb25lZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENsb25lZEFyZ3VtZW50
cykgfTsKIAogQ2xvbmVkQXJndW1lbnRzOjpDbG9uZWRBcmd1bWVudHMoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgQnV0dGVyZmx5KiBidXR0ZXJmbHkpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUsIGJ1dHRlcmZseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvZGVDYWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2Fj
aGUuY3BwCmluZGV4IDI4ODRlOWE0YWNiOWQ4OTc2OGFhMGMzNDVkODM2OTBlNjNkN2VmODYuLjUy
NjFlMzA0OWI5Y2JiNDZjMmQwMmVmMjYzNGEzYzUyZjJkOTJjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcApAQCAtMjMzLDcgKzIzMyw3IEBAIFVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rp
b25FeGVjdXRhYmxlKFZNJiB2CiAgICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBwcm9ncmFt
LT5zaW5nbGVTdGF0ZW1lbnQoKTsKICAgICBpZiAoVU5MSUtFTFkoIWZ1bmNEZWNsKSkgewogICAg
ICAgICBKU1Rva2VuIHRva2VuOwotICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNlckVy
cm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJsZSwg
dG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CisgICAgICAgIGVycm9yID0gUGFyc2VyRXJyb3Io
UGFyc2VyRXJyb3I6OlN5bnRheEVycm9yLCBQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3JJcnJlY292
ZXJhYmxlLCB0b2tlbiwgIlBhcnNlciBlcnJvciJfcywgLTEpOwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICB9CiAgICAgQVNTRVJUKGZ1bmNEZWNsLT5pc0Z1bmNEZWNsTm9kZSgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tcGxldGlvbi5jcHAKaW5kZXggM2ZiZjFk
OGQzMzgzYTdhYjIxNzFhOTM4YWZhZTY5NjJjN2ZjYjBjZi4uMTlkMTZjYjgyNDhlOWExZjlmZDhi
OGEzMTk4ZTc3NmI0MjkyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tcGxldGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tcGxldGlvbi5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgYm9vbCBjaGVja01vZHVsZVN5bnRheChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFAK
ICAgICBpZiAoIW1vZHVsZVByb2dyYW1Ob2RlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJFbnRy
eVBvaW50TW9kdWxlIik7CisgICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6
OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSJfcyk7CiAgICAgTW9kdWxlQW5hbHl6ZXIg
bW9kdWxlQW5hbHl6ZXIoZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyOjpmcm9tVWlkKHByaXZhdGVO
YW1lKSwgc291cmNlLCBtb2R1bGVQcm9ncmFtTm9kZS0+dmFyRGVjbGFyYXRpb25zKCksIG1vZHVs
ZVByb2dyYW1Ob2RlLT5sZXhpY2FsVmFyaWFibGVzKCkpOwogICAgIG1vZHVsZUFuYWx5emVyLmFu
YWx5emUoKm1vZHVsZVByb2dyYW1Ob2RlKTsKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE3Miw3ICsx
NzIsNyBAQCBKU1ZhbHVlIGV2YWx1YXRlV2l0aFNjb3BlRXh0ZW5zaW9uKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZAogc3RhdGljIFN5bWJvbCogY3JlYXRlU3lt
Ym9sRm9yRW50cnlQb2ludE1vZHVsZShWTSYgdm0pCiB7CiAgICAgLy8gR2VuZXJhdGUgdGhlIHVu
aXF1ZSBrZXkgZm9yIHRoZSBzb3VyY2UtcHJvdmlkZWQgbW9kdWxlLgotICAgIFByaXZhdGVOYW1l
IHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1bGUi
KTsKKyAgICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24s
ICJFbnRyeVBvaW50TW9kdWxlIl9zKTsKICAgICByZXR1cm4gU3ltYm9sOjpjcmVhdGUodm0sIHBy
aXZhdGVOYW1lLnVpZCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db25zb2xlT2JqZWN0LmNwcAppbmRleCAwZGRlOTg3NzI3NjY1NTk4NDY5NjQ1ZjQzOTZjMjMy
YzU2NmU0M2ExLi5iOWFhYmQ0YzE0OGQyNGQzMjRmNjYyMjhiYTFjODRlYmYzMTllNzRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcApAQCAt
NzQsNyArNzQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJv
dG9GdW5jUmVjb3JkKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQ
cm90b0Z1bmNSZWNvcmRFbmQpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c29sZVByb3RvRnVuY1NjcmVlbnNob3QpOwogCi1jb25zdCBDbGFzc0luZm8gQ29uc29sZU9iamVj
dDo6c19pbmZvID0geyAiY29uc29sZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBD
b25zb2xlT2JqZWN0OjpzX2luZm8gPSB7ICJjb25zb2xlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENvbnNvbGVPYmplY3QpIH07CiAKIENv
bnNvbGVPYmplY3Q6OkNvbnNvbGVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5jcHAKaW5kZXggOTZlNjdkOGRlMjYyY2Ew
ZGZhMWJmMTFiMzEwMjFmMzAxNmJjYzUzNy4uNjJmYmE2YTcxMWY4YmIyODU0ZDg3M2Y1NzhhM2Iw
YWI4OTc4NmFkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29u
c3RydWN0RGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3Ry
dWN0RGF0YS5jcHAKQEAgLTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNv
bnN0cnVjdG9yT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBjb25zdCBjaGFyKiBlcnJvck1l
c3NhZ2UpCitKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgY29uc3RydWN0b3JPYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVjdChnbG9iYWxPYmplY3Qs
IGNvbnN0cnVjdG9yT2JqZWN0LCBjb25zdHJ1Y3Rvck9iamVjdCwgYXJncywgZXJyb3JNZXNzYWdl
KTsKIH0KIAotSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJn
TGlzdCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorSlNPYmplY3QqIGNvbnN0cnVj
dChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0
LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJnTGlzdCYgYXJncywgQVNDSUlMaXRlcmFsIGVy
cm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCmluZGV4IDU0NTJhZTJhYjhlOGQ0YTI0NTZhZjFj
NWVmNTIxZDg2ZThhNmVjYzMuLjc5MTYxY2EwNTEyZmNiMWQ1MzBlNjJiNjBmMThmNjdjY2FjZWRi
NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgK
QEAgLTM1LDggKzM1LDggQEAgbmFtZXNwYWNlIEpTQyB7CiBjbGFzcyBKU09iamVjdDsKIAogLy8g
Q29udmVuaWVuY2Ugd3JhcHBlciBzbyB5b3UgZG9uJ3QgbmVlZCB0byBkZWFsIHdpdGggQ2FsbERh
dGEgdW5sZXNzIHlvdSBhcmUgZ29pbmcgdG8gdXNlIGl0LgotSlNfRVhQT1JUX1BSSVZBVEUgSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JUX1BS
SVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rp
b25PYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgQVND
SUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CitKU19FWFBPUlRfUFJJVkFURSBKU09iamVjdCogY29u
c3RydWN0KEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSBu
ZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAog
SlNfRVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgY29uc3RydWN0b3IsIGNvbnN0IENhbGxEYXRhJiwgY29uc3QgQXJnTGlzdCYsIEpTVmFs
dWUgbmV3VGFyZ2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0N1c3RvbUdldHRlclNldHRlci5jcHAKaW5kZXggZDFjMDJmMDU5ZDA0NGZhMDNlNTM0NDkzNWNh
MGMyZmNiZjUwZmY4Ny4uZWJmY2M0MzY2MWM2MDc3MzdhNzk3YTI0OWIwZWFlYzdiYTdjMzRhNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0
dGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwCkBAIC0zMiw2ICszMiw2IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKTsKIAotY29u
c3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVy
U2V0dGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShD
dXN0b21HZXR0ZXJTZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVy
OjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB9IC8v
IG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RPTUF0dHJpYnV0ZUdldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDk3ZTcyZTE0MmViYTg0ODk0
MzYzZjA0MzkyOTk1ZmE1YjljZGQyNTEuLjcxZmRiZTZhMmY5ZmNhZDc3OThlNzhjYTcyY2M1N2Mw
MDZkNjNmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RPTUF0
dHJpYnV0ZUdldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcApAQCAtMzIsNiArMzIsNiBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERPTUF0
dHJpYnV0ZUdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBET01BdHRyaWJ1dGVHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdldHRlclNldHRlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NQXR0cmlidXRl
R2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUF0dHJpYnV0ZUdldHRlclNldHRl
cjo6c19pbmZvID0geyAiRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRl
clNldHRlcikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAppbmRleCBlNzM3YjJmYTM4ZGE3MDk5
YzYxMGFjZjk3NTRiZGYzZDBhODk2MzgzLi42ZDA5MDJjOWZjYzk0YWQwZDUxZTUxZGUyOGVhMmM5
NjUyOTRjN2EzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oZGF0ZU5vdyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
RGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sICZkYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShEYXRlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRh
dGVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBEYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBkYXRlQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggNTMyNWNmZmVmMzE4YTczN2JiYmJiZTRlYzY0NjBiZDg5
NjhlNGQ5Mi4uZjg3YmI2NmMwMzY3NWIyNjU1MzNmMTg5YmY0ZGQ5ZGUwODk1ODQwOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCkBAIC0yNyw3
ICsyNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRGF0ZUluc3Rh
bmNlOjpzX2luZm8gPSB7IkRhdGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJ
bnN0YW5jZTo6c19pbmZvID0geyAiRGF0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlSW5zdGFuY2UpIH07CiAKIERhdGVJbnN0YW5j
ZTo6RGF0ZUluc3RhbmNlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNl
KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQ
cm90b3R5cGUuY3BwCmluZGV4IDg1NDVhNTU5YTczMjhiNTUzN2RiODEyODNjOThhNjM5ZDZjNGE4
M2IuLjRkMDRhNTJiZWQ4ZmMyMjEzYjUyMWJkYTU2YjdiOGMzOTUxZDExNWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC0yMTAsNyAr
MjEwLDcgQEAgc3RhdGljIGJvb2wgZmlsbFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSoKICAgICByZXR1cm4gb2s7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7Ik9iamVjdCIsICZCYXNlOjpz
X2luZm8sICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RGF0ZVByb3RvdHlwZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlUHJvdG90eXBlVGFibGUKQEAgLTM1OCwx
MiArMzU4LDEyIEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihkYXRlUHJvdG9GdW5jVG9Qcmlt
aXRpdmVTeW1ib2wsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1l
LT50aGlzVmFsdWUoKS50b1RoaXMoZ2xvYmFsT2JqZWN0LCBFQ01BTW9kZTo6c3RyaWN0KCkpOwog
ICAgIGlmICghdGhpc1ZhbHVlLmlzT2JqZWN0KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9Qcmlt
aXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtT
eW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIl9zKTsK
ICAgICBKU09iamVjdCogdGhpc09iamVjdCA9IGpzQ2FzdDxKU09iamVjdCo+KHRoaXNWYWx1ZSk7
CiAgICAgSW50ZWdyaXR5OjphdWRpdFN0cnVjdHVyZUlEKHRoaXNPYmplY3QtPnN0cnVjdHVyZUlE
KCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJvdG90eXBl
W1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJv
dG90eXBlW1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iX3Mp
OwogCiAgICAgSlNWYWx1ZSBoaW50VmFsdWUgPSBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50
KDApOwogICAgIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgdHlwZSA9IHRvUHJlZmVycmVkUHJpbWl0
aXZlVHlwZShnbG9iYWxPYmplY3QsIGhpbnRWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcAppbmRleCBiYTQyYzYxODczZTM3OWMw
ZDNkMmIzOGU3NzNjYzE3NzZmZTRkMTU3Li5hY2M2MjlmMGQzMGQxNDExMzgzNWM2ZWUyYzVjMmYy
N2QwYWYzNzZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJl
Y3RBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RpcmVj
dEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShEaXJlY3RBcmd1bWVudHMpOwogCi1j
b25zdCBDbGFzc0luZm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERpcmVj
dEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBEaXJlY3RBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShEaXJlY3RBcmd1bWVudHMpIH07CiAKIERpcmVjdEFyZ3VtZW50czo6RGly
ZWN0QXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVuc2lnbmVkIGxlbmd0
aCwgdW5zaWduZWQgY2FwYWNpdHkpCiAgICAgOiBHZW5lcmljQXJndW1lbnRzKHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAppbmRleCA1NGIxNDk0NThmZjIy
ODcwZmRkYjgzMWZlYTk5Njc0ZDIyZDFhNTIyLi44ZTQ4YmIxNGRkNjFkYzgyM2EyODAyZGQxODNk
NTM2OGE2YWZlZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKQEAgLTkz
LDcgKzkzLDcgQEAgSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSB0aHJvd0RPTUF0dHJpYnV0ZVNl
dHRlclR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCosIFRocm8KIC8vIENvbnZlbmllbmNlIHdyYXBw
ZXJzLCB3cmFwIHJlc3VsdCBhcyBhbiBFbmNvZGVkSlNWYWx1ZS4KIGlubGluZSB2b2lkIHRocm93
Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwg
RXhjZXB0aW9uKiBleGNlcHRpb24pIHsgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgZXhjZXB0aW9uKTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1FcnJvcihKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwgSlNWYWx1ZSBlcnJv
cikgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGVycm9yKSk7IH0KLWlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IGNoYXIq
IGVycm9yTWVzc2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdl
KSkpOyB9CitpbmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVz
c2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdlKSkpOyB9CiBp
bmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTVR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRo
cm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUpKTsgfQogaW5saW5lIEVuY29kZWRKU1Zh
bHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dT
Y29wZSYgc2NvcGUsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvck1lc3NhZ2Up
KTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IFN0cmluZyYgZXJyb3JN
ZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzA2NGQxMjBhN2Y4YzQyMThl
MTE3YjU2NjVkYjdlYTUwMjhhN2I3ZC4uNTBkMmVmMDRjYTMyNzA1MTJiZGZmZTAyYzNjMTU3MDJk
MjI4ZjAwNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJv
ckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFcnJvckNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcAppbmRleCA3MzhlN2Y0ZTEy
N2UxN2RlZjJmNDU5Yzk4YmEwYTc3MjUwNTY1OThiLi4zNTJiN2QyOTgzYzNhOTVlMGFkZDYxNjI4
YjMyMDRkMTgwZTM2ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckluc3RhbmNlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkpTTm9u
RmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShFcnJvckluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5m
byA9IHsgIkVycm9yIl9zLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVycm9ySW5zdGFuY2UpIH07CiAKIEVycm9ySW5zdGFu
Y2U6OkVycm9ySW5zdGFuY2UoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRXJyb3JUeXBl
IGVycm9yVHlwZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCBlZjQzMWYzOTVlMzQy
NWEyNjM1NGU5MzIwYWNjNGY5MjUyYjM4MjljLi5jNjZiZmE4MzBjNDFkMjdmOTFhMzMwYjY2YjYw
YTBhOWQwN2Y0NzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JQcm90b3R5cGUuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGVycm9yUHJvdG9GdW5jVG9TdHJpbmcpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6
c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJvclByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBFcnJvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGVycm9yUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRhYmxlLmNw
cAppbmRleCAxYjJmNGY1MmFiN2JmY2UzNDBiM2MzOTUyOWUxODA1NzJjZDE2NDQzLi5kZDg0OTMz
ODJmZjYxNDEwYmJlZWVkZDBiYmUyNzdkYzUyMDhlNjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5m
byA9IHsgIkV2YWxFeGVjdXRhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShFdmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
dmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiRXZhbEV4ZWN1dGFibGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUp
IH07CiAKIEV2YWxFeGVjdXRhYmxlOjpFdmFsRXhlY3V0YWJsZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaW5TdHJpY3RDb250ZXh0
LCBEZXJpdmVkQ29udGV4dFR5cGUgZGVyaXZlZENvbnRleHRUeXBlLCBib29sIGlzQXJyb3dGdW5j
dGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFsQ29udGV4dFR5
cGUgZXZhbENvbnRleHRUeXBlLCBOZWVkc0NsYXNzRmllbGRJbml0aWFsaXplciBuZWVkc0NsYXNz
RmllbGRJbml0aWFsaXplciwgUHJpdmF0ZUJyYW5kUmVxdWlyZW1lbnQgcHJpdmF0ZUJyYW5kUmVx
dWlyZW1lbnQpCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKS5ldmFsRXhlY3V0YWJsZVN0
cnVjdHVyZS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT52bSgpLCBzb3VyY2UsIGluU3RyaWN0Q29udGV4
dCwgZGVyaXZlZENvbnRleHRUeXBlLCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBpc0luc2lkZU9y
ZGluYXJ5RnVuY3Rpb24sIGV2YWxDb250ZXh0VHlwZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcAppbmRleCA0ZTIwNjQ2MGI5ZDIwMDY3
OGZmYzRhYmVhMzE2OTA1NDFkOGZmZjVmLi5mYjE5OWYzODc2MGFjYmUwZDM5NGJlMzAxNmY5ZjJk
YzI3NjI2OWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbi5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGNlcHRpb246OnNfaW5mbyA9IHsgIkV4Y2VwdGlvbiIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEV4Y2VwdGlvbjo6c19pbmZvID0geyAiRXhjZXB0aW9uIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4Y2VwdGlvbikgfTsKIAogRXhjZXB0aW9uKiBF
eGNlcHRpb246OmNyZWF0ZShWTSYgdm0sIEpTVmFsdWUgdGhyb3duVmFsdWUsIFN0YWNrQ2FwdHVy
ZUFjdGlvbiBhY3Rpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0V4Y2VwdGlvbkhlbHBlcnMuY3BwCmluZGV4IDA5OWZmNzFjZDYyNjViOGQxY2E4YzkxZTM2MTEz
NjFlZTBlZTdmYTMuLmQyMTM0Mzk2NDczNjBlOWNiNWI1ZDkzOTZhY2FhNDEyZGM4ZGM4NGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIFN0cmluZyBub3RBRnVuY3Rpb25Tb3VyY2VB
cHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY29uc3QgU3QKICAgICAgICAg
cmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2FnZSwgc291
cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNlOjpGb3Vu
ZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIG5vdEFGdW5jdGlvbkluZGV4ID0gb3JpZ2luYWxNZXNz
YWdlLnJldmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiIpOworICAgIGF1dG8gbm90QUZ1bmN0
aW9uSW5kZXggPSBvcmlnaW5hbE1lc3NhZ2UucmV2ZXJzZUZpbmQoImlzIG5vdCBhIGZ1bmN0aW9u
Il9zKTsKICAgICBSRUxFQVNFX0FTU0VSVChub3RBRnVuY3Rpb25JbmRleCAhPSBub3RGb3VuZCk7
CiAgICAgU3RyaW5nVmlldyBkaXNwbGF5VmFsdWU7CiAgICAgaWYgKG9yaWdpbmFsTWVzc2FnZS5p
czhCaXQoKSkgCkBAIC0xOTcsNyArMTk3LDcgQEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUGFyYW1l
dGVySW5Tb3VyY2VBcHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY28KICAg
ICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2Fn
ZSwgc291cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNl
OjpGb3VuZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIGluSW5kZXggPSBzb3VyY2VUZXh0LnJldmVy
c2VGaW5kKCJpbiIpOworICAgIGF1dG8gaW5JbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQo
ImluIl9zKTsKICAgICBpZiAoaW5JbmRleCA9PSBub3RGb3VuZCkgewogICAgICAgICAvLyBUaGlz
IHNob3VsZCBiYXNpY2FsbHkgbmV2ZXIgaGFwcGVuLCBzaW5jZSBKUyBjb2RlIG11c3QgdXNlIHRo
ZSBsaXRlcmFsCiAgICAgICAgIC8vIHRleHQgImluIiBmb3IgdGhlIGBpbmAgb3BlcmF0aW9uLiBI
b3dldmVyLCBpZiB3ZSBmYWlsIHRvIGZpbmQgImluIgpAQCAtMjE4LDcgKzIxOCw3IEBAIGlubGlu
ZSBTdHJpbmcgaW52YWxpZFBhcmFtZXRlckluc3RhbmNlb2ZTb3VyY2VBcHBlbmRlcihjb25zdCBT
dHJpbmcmIGNvbnRlbnQsIGNvCiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3Vy
Y2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3Vy
cmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBpbnN0
YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9mIik7CisgICAg
YXV0byBpbnN0YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9m
Il9zKTsKICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBTeW1ib2wuaGFzSW5zdGFuY2UgZnVu
Y3Rpb24gaXMgZGlyZWN0bHkgY2FsbGVkLgogICAgIGlmIChpbnN0YW5jZW9mSW5kZXggPT0gbm90
Rm91bmQpCiAgICAgICAgIHJldHVybiBvcmlnaW5hbE1lc3NhZ2U7CkBAIC0yNDYsNyArMjQ2LDcg
QEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUHJvdG90eXBlU291cmNlQXBwZW5kZXIoY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvbnMKICAgICBpZiAob2NjdXJyZW5jZSA9PSBFcnJvcklu
c3RhbmNlOjpGb3VuZEFwcHJveGltYXRlU291cmNlKQogICAgICAgICByZXR1cm4gZGVmYXVsdEFw
cHJveGltYXRlU291cmNlRXJyb3Iob3JpZ2luYWxNZXNzYWdlLCBzb3VyY2VUZXh0KTsKIAotICAg
IGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyIpOwor
ICAgIGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyJf
cyk7CiAgICAgaWYgKGV4dGVuZHNJbmRleCA9PSBub3RGb3VuZCB8fCBzb3VyY2VUZXh0LmZpbmQo
ImV4dGVuZHMiKSAhPSBleHRlbmRzSW5kZXgpCiAgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKG9y
aWdpbmFsTWVzc2FnZSwgIiAoZXZhbHVhdGluZyAnIiwgc291cmNlVGV4dCwgIicpIik7CiAKQEAg
LTMyNCwyNyArMzI0LDI3IEBAIEpTT2JqZWN0KiBjcmVhdGVFcnJvckZvckludmFsaWRHbG9iYWxB
c3NpZ25tZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvCiAKIEpTT2JqZWN0KiBj
cmVhdGVURFpFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVy
biBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIHVuaW5p
dGlhbGl6ZWQgdmFyaWFibGUuIik7CisgICAgcmV0dXJuIGNyZWF0ZVJlZmVyZW5jZUVycm9yKGds
b2JhbE9iamVjdCwgIkNhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJsZS4iX3MpOwog
fQogCiBKU09iamVjdCogY3JlYXRlSW52YWxpZFByaXZhdGVOYW1lRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgbWFrZVN0cmluZygiQ2Fubm90IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiKSwg
ZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNyZWF0ZVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIGludmFsaWQgcHJpdmF0ZSBmaWVs
ZCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEpTT2JqZWN0
KiBjcmVhdGVSZWRlZmluZWRQcml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VT
dHJpbmcoIkNhbm5vdCByZWRlZmluZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIiksIGRlZmF1bHRT
b3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCAiQ2Fubm90IHJlZGVmaW5lIGV4aXN0aW5nIHByaXZhdGUgZmllbGQiX3Ms
IGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3Jl
YXRlUHJpdmF0ZU1ldGhvZEFjY2Vzc0Vycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VTdHJpbmco
IkNhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcyksIGRlZmF1bHRTb3Vy
Y2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyBwcml2YXRlIG1ldGhvZCBvciBhY2Vzc29yIl9zLCBk
ZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0
ZVJlaW5zdGFsbFByaXZhdGVNZXRob2RFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5n
KCJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUgbWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0aGFu
IG9uY2UiX3MpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1
cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCBpbnN0YWxsIHNhbWUgcHJp
dmF0ZSBtZXRob2RzIG9uIG9iamVjdCBtb3JlIHRoYW4gb25jZSJfcywgZGVmYXVsdFNvdXJjZUFw
cGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEV4Y2VwdGlvbiogdGhyb3dPdXRPZk1lbW9yeUVy
cm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwCmluZGV4
IGZkNDczODJkMTVlZjc1OTk3MmY5NGM2MmUzMDBjZTkwZjA2OWI4ZjAuLjY4YWVlYWFmYTFiMDE5
MzU4MDJmOWZjNTViZDY4YTc5NTcyMDc3NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGVjdXRhYmxlQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAi
RXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZUJhc2U6OnNf
aW5mbyA9IHsgIkV4ZWN1dGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07CiAKIHZvaWQgRXhlY3V0YWJsZUJhc2U6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNw
cAppbmRleCBmMzFkYjg2YTc5NjE2ZTQ1YThkYzExNWFhMjY1NzBhYzNjN2U2NmY1Li5mNWZjMWE4
MWQ2NmM1ZWZjMTUyMzRmMDA3OWEyZjAyODA3NTUwYjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgRmluYWxpemF0aW9u
UmVnaXN0cnlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBGaW5hbGl6YXRpb25S
ZWdpc3RyeVByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUu
Y3BwCmluZGV4IDg1M2U0YWE4NzRjYjUxMDBhMzYzYjJjMDAxNDMzNTNjZmZhNWIwOWMuLjhhMGMx
MTgxOTY2MjJlMTY2ZmM4MWFhYmNkOThlYTc4OGExZWNkNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVBy
b3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZTo6c19pbmZvID0geyAiRmlu
YWxpemF0aW9uUmVnaXN0cnkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJGaW5h
bGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZSkgfTsKIAogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxpemF0aW9uUmVnaXN0
cnlSZWdpc3Rlcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNG
aW5hbGl6YXRpb25SZWdpc3RyeVVucmVnaXN0ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAxNjVlN2E3Zjdl
NDZkZGRjODE0MDU1OWQyMTcxMWI4MjBhNTI3MTQyLi5lYTM1NGEwY2ZmZjNjMjRlNTQ4MGQyOWYz
NGNkZDc5YWFlMWU3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9u
Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0V2l0
aEZ1bmN0aW9uQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEZ1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggZjE0OWQ0ZTU5YTcyNGE4NDI1
N2ZiNjg3ODQ5MmMyYWEzYjE2MmU4Yi4uYjQ3NDQ2NGU3MjIwYTU5NDlhNzM2MzM5ZTViZTBjMDM1
MjY4NDU2ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkV4ZWN1dGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJGdW5jdGlv
bkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uRXhlY3V0YWJsZSJf
cywgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFibGUpIH07CiAKIEZ1bmN0aW9uRXhlY3V0YWJsZTo6
RnVuY3Rpb25FeGVjdXRhYmxlKFZNJiB2bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBVbmxp
bmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogdW5saW5rZWRFeGVjdXRhYmxlLCBJbnRyaW5zaWMgaW50
cmluc2ljLCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbikKICAgICA6IFNjcmlwdEV4ZWN1
dGFibGUodm0uZnVuY3Rpb25FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCB2bSwgc291cmNlLCB1
bmxpbmtlZEV4ZWN1dGFibGUtPmxleGljYWxTY29wZUZlYXR1cmVzKCksIHVubGlua2VkRXhlY3V0
YWJsZS0+ZGVyaXZlZENvbnRleHRUeXBlKCksIGZhbHNlLCBpc0luc2lkZU9yZGluYXJ5RnVuY3Rp
b24gfHwgIXVubGlua2VkRXhlY3V0YWJsZS0+aXNBcnJvd0Z1bmN0aW9uKCksIEV2YWxDb250ZXh0
VHlwZTo6Tm9uZSwgaW50cmluc2ljKQpAQCAtMTY0LDcgKzE2NCw3IEBAIEpTU3RyaW5nKiBGdW5j
dGlvbkV4ZWN1dGFibGU6OnRvU3RyaW5nU2xvdyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFycm93RnVuY3Rpb25Nb2RlOgogICAgIGNh
c2UgU291cmNlUGFyc2VNb2RlOjpDbGFzc0ZpZWxkSW5pdGlhbGl6ZXJNb2RlOgotICAgICAgICBm
dW5jdGlvbkhlYWRlciA9ICIiOworICAgICAgICBmdW5jdGlvbkhlYWRlciA9ICIiX3M7CiAgICAg
ICAgIGJyZWFrOwogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFzeW5jRnVuY3Rpb25Nb2Rl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5
cGUuY3BwCmluZGV4IDFkNTJhYmY1ODVjMmJhYmVkNmM4NGI1OTk3NGJiYTk2NzNkYTBmYTkuLmM5
YzlhOGFjN2UyNDcxMThhNmJmMzRlMmIyNWE1NWU5ZDBkNDRhM2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMyLDcg
KzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShGdW5jdGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5j
dGlvblByb3RvdHlwZSkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25Qcm90b0Z1bmNUb1N0cmluZyk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihjYWxsRnVuY3Rpb25Qcm90b3R5cGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcAppbmRleCBhMTNkZmE0NTY2ODMxODhmNzk0ZDc5
OTM2YTkyMTM4NTYxZjIzMjcwLi40YTliNjQwNGRkNGM3M2VlYzc5NDM4NjljNTg0NDVmYmI0MjRi
ZjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEZ1bmN0aW9uUmFyZURhdGE6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uUmFyZURhdGEi
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9u
UmFyZURhdGEpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25SYXJlRGF0YTo6c19pbmZvID0g
eyAiRnVuY3Rpb25SYXJlRGF0YSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShGdW5jdGlvblJhcmVEYXRhKSB9OwogCiBGdW5jdGlvblJhcmVEYXRhKiBG
dW5jdGlvblJhcmVEYXRhOjpjcmVhdGUoVk0mIHZtLCBFeGVjdXRhYmxlQmFzZSogZXhlY3V0YWJs
ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ZhM2IyMTE2MjM2ODdjMWE5
OWIzNTUxOGQyYjRkMDQyN2Q0Nzc2MC4uZjQ5MWU3YzVlN2I3YzEwM2YzZWMwMTY0M2I1MGMzNGJm
YWY3MTRkMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEdlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNhbGxHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rp
b25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IGFlOWVmMjE4OGQ4ZmJlMWRmYTU2NGJjOWE0MmRi
ZDQwNzEyNTdlOTMuLmM0MmVkNDMyNTcxYTYxZDA1NGRkNjI2MmM0ZTNjY2ZiZTY3NDBmMGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShHZW5lcmF0b3JGdW5j
dGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvblByb3Rv
dHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSkgfTsK
IAogR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZt
LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9H
ZW5lcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2Vu
ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBmYTA5YjlkMzA2ZmVmZTA2MzU4MThhZjJjMjJkYmRl
ODJiMWNkYzhjLi43ZTgwYjFjMzQ3MTIxYTI0NzFhMTc3MDgyYTc3N2IyMTBjYzkzNmMzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkdlbmVyYXRvciIsICZCYXNlOjpz
X2luZm8sICZnZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gR2VuZXJhdG9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZnZW5lcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBA
YmVnaW4gZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IGZhZDJjMjNmNzEwOTI5NzBiNWVjMDhlODE0
ODRmMjE5MjEzMDkwNzcuLmU2NmUwMzM0ZTU5Njk3MzU2N2Y5MWQyYWY3ZDU2Mjk0MjZiMDhiMzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcApA
QCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEdldHRlclNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIl9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdldHRlclNldHRlcikgfTsKIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxk
cmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCmluZGV4IDAwYjY1YzBi
YTgyMjY4YjQ4MjY5NTQyMWQwODkyYmQ3ZDMzYjhiM2MuLjc1ZTg0YjM4ZmY3MjdiMzJjOGViMDAx
MTZhMGIxZDBhZDg0MGJmZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiR2xv
YmFsRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoR2xvYmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJHbG9iYWxFeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbEV4ZWN1dGFibGUp
IH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSGFzaE1hcEltcGwuY3BwCmluZGV4IGQxYzRjNWNmOTZlOTc1NGYyMzJiZTUyNjUwZjJlZThk
MmI0MmU2NTIuLmVhYmE2NGU2ZDhlMjZiMWU1ZjdmZWIxZGY0NTA1MDY3ZjEwYjIzNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hhc2hNYXBJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNoTWFwSW1wbC5jcHAKQEAgLTM2LDEx
ICszNiwxMSBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+
LCBIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhSwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBD
bGFzc0luZm8gSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT46OnNfaW5mbyA9Ci0g
ICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT4pIH07CisgICAg
eyAiSGFzaE1hcEJ1Y2tldCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhS2V5PikgfTsKIAogdGVt
cGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFL
ZXlWYWx1ZT46OnNfaW5mbyA9Ci0gICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVj
a2V0RGF0YUtleVZhbHVlPikgfTsKKyAgICB7ICJIYXNoTWFwQnVja2V0Il9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1h
cEJ1Y2tldERhdGFLZXlWYWx1ZT4pIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIERhdGE+CiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAppbmRleCBkNWJjNDk0MDk1N2U1NTJiZjY0YTUwYTU5
MDJjMTEwYzE1MjZkYjkxLi4wMWJjMDg2YWY4NDk4MGY4NmEwNGJiMmFkZDliNThhMTRkYmU2MTg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGVybmFsRnVuY3Rpb24pOwogCi1jb25zdCBD
bGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGVybmFsRnVu
Y3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJu
YWxGdW5jdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOYXRpdmVGdW5jdGlvbiBm
dW5jdGlvbkZvckNhbGwsIE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uRm9yQ29uc3RydWN0KQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxDb2xsYXRvci5jcHAKaW5kZXggYjZiYjc1MTU4MGQ3NjgyZTE2NmE0NTk2NWYzMjMyOWJl
MmM0YzY1NS4uMzY5NzU1MTEzNDlhZjNhNDU4OWEzYTAxNWRmMGU1MWEyOWFkZTJlMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwCkBAIC0zNiw3
ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bENvbGxh
dG9yOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsQ29sbGF0b3I6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3IpIH07CiAKIG5hbWVz
cGFjZSBJbnRsQ29sbGF0b3JJbnRlcm5hbCB7CiBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFs
c2U7CkBAIC0xNzIsNyArMTcyLDcgQEAgdm9pZCBJbnRsQ29sbGF0b3I6OmluaXRpYWxpemVDb2xs
YXRvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGxvY2EKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCiAgICAgewotICAgICAgICBTdHJpbmcg
Y29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICAgICAg
U3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCks
IEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKICAgICAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxsKCkpIHsKICAgICAgICAg
ICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUoY29sbGF0aW9uKSkgewpAQCAt
MTg4LDcgKzE4OCw3IEBAIHZvaWQgSW50bENvbGxhdG9yOjppbml0aWFsaXplQ29sbGF0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBsb2NhCiAgICAgaWYgKG51bWVyaWMg
IT0gVHJpU3RhdGU6OkluZGV0ZXJtaW5hdGUpCiAgICAgICAgIGxvY2FsZU9wdGlvbnNbc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5OjpLbildID0gU3RyaW5nKG51bWVy
aWMgPT0gVHJpU3RhdGU6OlRydWUgPyAidHJ1ZSJfcyA6ICJmYWxzZSJfcyk7CiAKLSAgICBTdHJp
bmcgY2FzZUZpcnN0T3B0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlv
bnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAidXBwZXIiLCAibG93ZXIiLCAiZmFs
c2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1cHBlclwiLCBcImxvd2VyXCIsIG9y
IFwiZmFsc2VcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYXNlRmlyc3RPcHRpb24gPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWNhc2VGaXJzdE9wdGlvbi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlT3B0aW9uc1tz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRlbnNpb25LZXk6OktmKV0gPSBjYXNlRmly
c3RPcHRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMGJjNWFhMzdkN2NkZTAyMDMzZDczZTlm
ODVjYjJlMTMxNzMxMDMyOS4uOTRlZWQ4N2ZiMzgxNmQ3ZmVjOGI3ZmNhODkyOTY3ODg4MTU1YWM0
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxD
b2xsYXRvckNvbnN0cnVjdG9yLmNwcApAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxJbnRsQ29sbGF0b3IpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SW50bENvbGxhdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZjb2xsYXRvckNvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bENvbGxhdG9yQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmY29sbGF0b3JDb25zdHJ1
Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvckNvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxDb2xsYXRvckNvbnN0cnVjdG9yLmx1dC5o
CiBAYmVnaW4gY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwNTlj
MTk1ZmIwMzU1ZDQ1NTA3MTZhZWI4NGM1OTkwMWM4MmQ0NTMxLi5kMGY5YjZjNjE2M2Y0NzE1YjU3
ZTg1ZTQwNjMxMDhiYzhmMWQzMTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bENvbGxhdG9yRnVuY0NvbXBhcmUp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5Db2xsYXRvciIsICZCYXNlOjpzX2luZm8sICZjb2xsYXRv
clByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRv
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuQ29sbGF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZjb2xsYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvclByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JQcm90b3R5cGUubHV0LmgKIEBi
ZWdpbiBjb2xsYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAppbmRleCBjMmQ0OWRhOThhNjYwYmM2
MmIwNGFmZTE5YzU3OGYyNTkyZmQ0YmI5Li5hMWM2MTQ1YzE3MWM0MGQxODhmMDcyOTU4NWYwNWVk
Yjc1YzBhYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBVRGF0ZUludGVydmFs
Rm9ybWF0RGVsZXRlcjo6b3BlcmF0b3IoKShVRGF0ZUludGVydmFsRm9ybWF0KiBmb3JtYXR0ZXIp
CiAgICAgICAgIHVkdGl0dmZtdF9jbG9zZShmb3JtYXR0ZXIpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1h
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07CiAKIG5hbWVzcGFjZSBJbnRsRGF0ZVRpbWVGb3Jt
YXRJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAt
NjA0LDcgKzYwNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRp
bWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50bFN0
cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhbGVu
ZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGludGxT
dHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxl
bmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxlbmRh
ci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBl
KGNhbGVuZGFyKSkgewpAQCAtNjE0LDcgKzYxNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0
Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwK
ICAgICAgICAgbG9jYWxlT3B0aW9uc1tzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRl
bnNpb25LZXk6OkNhKV0gPSBjYWxlbmRhcjsKICAgICB9CiAKLSAgICBTdHJpbmcgbnVtYmVyaW5n
U3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBT
dHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBBU0NJSUxpdGVy
YWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFudW1iZXJpbmdTeXN0ZW0uaXNOdWxsKCkpIHsK
ICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShudW1iZXJpbmdTeXN0
ZW0pKSB7CkBAIC04ODEsNyArODgxLDcgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogICAgICAg
ICBicmVhazsKICAgICB9CiAKLSAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVzdCBm
aXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJlc3Qg
Zml0XCIiLCAiYmVzdCBmaXQiKTsKKyAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVz
dCBmaXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJl
c3QgZml0XCIiX3MsICJiZXN0IGZpdCJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKIAogICAgIG1fZGF0ZVN0eWxlID0gaW50bE9wdGlvbjxEYXRlVGltZVN0eWxl
PihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmRhdGVTdHlsZSwgeyB7
ICJmdWxsIl9zLCBEYXRlVGltZVN0eWxlOjpGdWxsIH0sIHsgImxvbmciX3MsIERhdGVUaW1lU3R5
bGU6OkxvbmcgfSwgeyAibWVkaXVtIl9zLCBEYXRlVGltZVN0eWxlOjpNZWRpdW0gfSwgeyAic2hv
cnQiX3MsIERhdGVUaW1lU3R5bGU6OlNob3J0IH0gfSwgImRhdGVTdHlsZSBtdXN0IGJlIFwiZnVs
bFwiLCBcImxvbmdcIiwgXCJtZWRpdW1cIiwgb3IgXCJzaG9ydFwiIl9zLCBEYXRlVGltZVN0eWxl
OjpOb25lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCBiNDUxZWUwOWIxZGRm
MTdhZjU3MmFjOWE0ZWJiOTE3M2VlNmYyYjczLi4zZjg1MjFkMmIyN2MyM2EyNmY4YTgyOTllMzRi
YWFiY2RhZDNiMTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0
NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxEYXRlVGltZUZvcm1h
dENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2lu
Zm8sICZkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZv
cm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGU3NDEy
Y2MyODIxMmZiYTlmYTIxODlkZjY0NDY4YTRiM2ZjMzgxMGEuLmVjMTgxNTY5ODczODcxZmExZjMw
YjlkYTg1MzM3ZDA2MzVlYmM4ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNTAs
NyArNTAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGF0ZVRpbWVG
b3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5EYXRl
VGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5m
byA9IHsgIkludGwuRGF0ZVRpbWVGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZv
cm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3Bw
CmluZGV4IGZiZTg2ZTRiN2VhYTA2M2NiYjY0NjNiOWExZmE5ZjcxYjI5MTg3ZTQuLmE4YmNmYmJh
ZDE2ZDMxZTViZGI0YjhjODZmNWI0NDJhOTRhMTExMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCkBAIC0zNiw3ICszNiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lczo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIElu
dGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9Owog
CiBJbnRsRGlzcGxheU5hbWVzKiBJbnRsRGlzcGxheU5hbWVzOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwCmluZGV4IGVhMDUx
YmIzNGM1ZTFkOTIyZDdiZjA4NGYxM2E1ZTQ2ZjEwYzQzMjQuLjBhM2JmOGQ0OTQ0ODI3NGQ2MTdk
YTE5OWE0NDIwMGJhNmNiNjRlMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGlzcGxheU5h
bWVzQ29uc3RydWN0b3JTdXBwb3J0ZWRMb2NhbGVzT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmZGlzcGxheU5hbWVzQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1lc0NvbnN0cnVjdG9y
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lc0NvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIGRpc3BsYXlOYW1lc0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKaW5kZXggNDVhNjIwNWQxMmI4ZDhiMzZkMmY4YmFhOWU3NzNlZTQxMmMwMjU0Mi4uNmMx
ODVlYTU5MDBhMDQzZTI0MmZjZGE1MzFmNGE2Y2ZkODAwZmM5YiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
aW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIiwgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1l
c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5EaXNwbGF5TmFtZXMiX3MsICZCYXNlOjpzX2luZm8sICZk
aXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGlzcGxheU5hbWVzUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkaXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwCmlu
ZGV4IGY1YzMwNTcwOThjOTQ4ZjMxNGNmMWJjZmQ2OWNkZTg4ZDI1ZTkzM2YuLjc4NWM5M2ZjNTQ0
ZWM3ZDhjZWVlYmMxOTg5ZDA3ZmFkMjJiNTQ1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdDo6c19pbmZvID0g
eyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1h
dDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0KSB9OwogCiAvLyBXZSBkbyBub3Qg
dXNlIElDVURlbGV0ZXI8dWxpc3RmbXRfY2xvc2U+IGJlY2F1c2Ugd2UgZG8gbm90IHdhbnQgdG8g
aW5jbHVkZSB1bGlzdGZvcm1hdHRlci5oIGluIEludGxMaXN0Rm9ybWF0LmguCiAvLyB1bGlzdGZv
cm1hdHRlci5oIG5lZWRzIHRvIGJlIGluY2x1ZGVkIHdpdGggI3VuZGVmIFVfSElERV9EUkFGVF9B
UEksIGFuZCB3ZSB3b3VsZCBsaWtlIHRvIG1pbmltaXplIHRoaXMgZWZmZWN0IGluIEludGxMaXN0
Rm9ybWF0LmNwcC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWQwMDg0NTNmZmY2ZmY3YWQ3
M2JmNjk2OTZhNTI5NzQ1MTAwZWZhNS4uNjJmZjJkZTk0NWZiZDg0NGI5N2ZjZjYyYzk3MDlhMjdk
NmJjOTFiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExp
c3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvclN1cHBv
cnRlZExvY2FsZXNPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19p
bmZvLCAmbGlzdEZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRs
TGlzdEZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgJmxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIGxpc3RGb3JtYXRDb25zdHJ1Y3Rv
clRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlz
dEZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
TGlzdEZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggYmY3MzdhYzViYTRhYmUxMjFiZWM2MTVmODMw
ZjJiYjNjNjA2YjBiZi4uMjFhZWIwNTc2NTNmYzkzYTBhMzQ5YjcwM2JjNWM3MWViMTBkNjg1MyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0
Rm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihpbnRsTGlzdEZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmbGlz
dEZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxM
aXN0Rm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZs
aXN0Rm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bExpc3RGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBsaXN0Rm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5jcHAKaW5kZXggZmNjYWQzMTE4OWE4
YWQ3ZTAwMjQ5ZDQ5MjBjOWFhOGJjNjA0N2RhNS4uZWIzYmY5MmZjYzQ3NjQwNzRiZmUzMjQ1YTc1
ODE5N2QyNjY4OTA4MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bExvY2FsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExv
Y2FsZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsTG9jYWxlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07Citjb25z
dCBDbGFzc0luZm8gSW50bExvY2FsZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07
CiAKIG5hbWVzcGFjZSBJbnRsTG9jYWxlSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKQEAgLTI1MSwyMSArMjUxLDIxIEBAIHZvaWQgSW50bExvY2FsZTo6
aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJp
bmcmIHRhCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgbGFuZ3VhZ2UgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bGFuZ3VhZ2UsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIGxhbmd1YWdlID0g
aW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMt
Pmxhbmd1YWdlLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwo
KSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWxh
bmd1YWdlLmlzTnVsbCgpICYmICFpc1VuaWNvZGVMYW5ndWFnZVN1YnRhZyhsYW5ndWFnZSkpIHsK
ICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJsYW5ndWFnZSBp
cyBub3QgYSB3ZWxsLWZvcm1lZCBsYW5ndWFnZSB2YWx1ZSJfcyk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmpl
Y3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBudWxscHRyLCBudWxs
cHRyKTsKKyAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3Qs
IG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51
bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHZvaWQoKSk7CiAgICAgaWYgKCFzY3JpcHQuaXNOdWxsKCkgJiYgIWlzVW5pY29kZVNjcmlw
dFN1YnRhZyhzY3JpcHQpKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAic2NyaXB0IGlzIG5vdCBhIHdlbGwtZm9ybWVkIHNjcmlwdCB2YWx1ZSJfcyk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9
LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9LCBB
U0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFyZWdpb24uaXNOdWxsKCkgJiYg
IWlzVW5pY29kZVJlZ2lvblN1YnRhZyhyZWdpb24pKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAicmVnaW9uIGlzIG5vdCBhIHdlbGwtZm9ybWVkIHJlZ2lv
biB2YWx1ZSJfcyk7CkBAIC0yNzUsNyArMjc1LDcgQEAgdm9pZCBJbnRsTG9jYWxlOjppbml0aWFs
aXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgdGEK
ICAgICBpZiAoIWxhbmd1YWdlLmlzTnVsbCgpIHx8ICFzY3JpcHQuaXNOdWxsKCkgfHwgIXJlZ2lv
bi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQub3ZlcnJpZGVMYW5ndWFnZVNjcmlwdFJlZ2lv
bihsYW5ndWFnZSwgc2NyaXB0LCByZWdpb24pOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50
bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNh
bGVuZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGlu
dGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5j
YWxlbmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxl
bmRhci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJU
eXBlKGNhbGVuZGFyKSkgewpAQCAtMjg1LDcgKzI4NSw3IEBAIHZvaWQgSW50bExvY2FsZTo6aW5p
dGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJpbmcm
IHRhCiAgICAgICAgIGxvY2FsZUlELnNldEtleXdvcmRWYWx1ZSgiY2FsZW5kYXIiX3MsIGNhbGVu
ZGFyKTsKICAgICB9CiAKLSAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihn
bG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxs
KCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShjb2xsYXRp
b24pKSB7CkBAIC0yOTUsMTIgKzI5NSwxMiBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVM
b2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGxhdGlvbiJfcywgY29sbGF0aW9uKTsK
ICAgICB9CiAKLSAgICBTdHJpbmcgaG91ckN5Y2xlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXJDeWNsZSwgeyAiaDExIiwgImgx
MiIsICJoMjMiLCAiaDI0IiB9LCAiaG91ckN5Y2xlIG11c3QgYmUgXCJoMTFcIiwgXCJoMTJcIiwg
XCJoMjNcIiwgb3IgXCJoMjRcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBob3VyQ3ljbGUgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
aG91ckN5Y2xlLCB7ICJoMTEiLCAiaDEyIiwgImgyMyIsICJoMjQiIH0sICJob3VyQ3ljbGUgbXVz
dCBiZSBcImgxMVwiLCBcImgxMlwiLCBcImgyM1wiLCBvciBcImgyNFwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWhvdXJDeWNsZS5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZh
bHVlKCJob3VycyJfcywgaG91ckN5Y2xlKTsKIAotICAgIFN0cmluZyBjYXNlRmlyc3QgPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIiwgbnVsbHB0cik7Cisg
ICAgU3RyaW5nIGNhc2VGaXJzdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRp
b25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsgInVwcGVyIiwgImxvd2VyIiwgImZh
bHNlIiB9LCAiY2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwidXBwZXJcIiwgXCJsb3dlclwiLCBv
ciBcImZhbHNlXCIiX3MsIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2FzZUZpcnN0LmlzTnVsbCgpKQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGNhc2VmaXJzdCJfcywgY2FzZUZpcnN0
KTsKQEAgLTMxMCw3ICszMTAsNyBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAgIGlmIChu
dW1lcmljICE9IFRyaVN0YXRlOjpJbmRldGVybWluYXRlKQogICAgICAgICBsb2NhbGVJRC5zZXRL
ZXl3b3JkVmFsdWUoImNvbG51bWVyaWMiX3MsIG51bWVyaWMgPT0gVHJpU3RhdGU6OlRydWUgPyAi
eWVzIiA6ICJubyIpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdP
cHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdT
eXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51bWJlcmluZ1N5c3Rl
bSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0
ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwog
ICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmlj
b2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzc2NTNiYjM3MTM5NTc3MjI2NWVhZWVjM2UxMTVkYjBmMThlYmJiYy4uMDkyZDhhNDRm
MjFlYWIxZjQ5NTIxOWJhNmQxZjdmYWQxNjBiZTQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoSW50bExvY2FsZUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIElu
dGxMb2NhbGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1Y3RvcikgfTsKIAogSW50bExvY2FsZUNvbnN0
cnVjdG9yKiBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBJbnRsTG9jYWxlUHJvdG90eXBlKiBsb2NhbGVQcm90b3R5cGUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUu
Y3BwCmluZGV4IDA5MGM5MjUzMjMxZDYyMzlmOTQ5ZDM4MjZiMGRmNjQ2NDI2MDkyOGYuLjMyZDIy
ODI0ZGVjNmVkYTVmYzRmYmZjZTAwNGRmN2U4ZTAyNmQ4ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCkBAIC01OSw3
ICs1OSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGludGxMb2NhbGVQcm90
b3R5cGVHZXR0ZXJXZWVrSW5mbyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bExvY2FsZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Mb2NhbGUiLCAmQmFzZTo6
c19pbmZvLCAmbG9jYWxlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bExvY2FsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxvY2FsZSJfcywgJkJhc2U6OnNfaW5mbywgJmxvY2Fs
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExvY2FsZVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGxvY2FsZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCmluZGV4IDk1M2MzOWZlNjRhOWU4NGQwYmI2
YzEwYzA0MmIwNzNhZjY5ZTM1NjkuLmNhMDQyNDk4NTAxZjI2ODA4N2Y0NDUxZWJmZWU3MjljYWVk
OTEzOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVy
Rm9ybWF0KSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbyA9IHsg
Ik9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0KSB9OwogCiBuYW1lc3BhY2UgSW50bE51bWJlckZvcm1h
dEludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CkBAIC0z
MDQsNyArMzA0LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0Ojppbml0aWFsaXplTnVtYmVyRm9y
bWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmEKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51
bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxs
KCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAg
IGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpA
QCAtMzI4LDcgKzMyOCw3IEBAIHZvaWQgSW50bE51bWJlckZvcm1hdDo6aW5pdGlhbGl6ZU51bWJl
ckZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhCiAgICAgbV9zdHlsZSA9
IGludGxPcHRpb248U3R5bGU+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+c3R5bGUsIHsgeyAiZGVjaW1hbCJfcywgU3R5bGU6OkRlY2ltYWwgfSwgeyAicGVyY2VudCJf
cywgU3R5bGU6OlBlcmNlbnQgfSwgeyAiY3VycmVuY3kiX3MsIFN0eWxlOjpDdXJyZW5jeSB9LCB7
ICJ1bml0Il9zLCBTdHlsZTo6VW5pdCB9IH0sICJzdHlsZSBtdXN0IGJlIGVpdGhlciBcImRlY2lt
YWxcIiwgXCJwZXJjZW50XCIsIFwiY3VycmVuY3lcIiwgb3IgXCJ1bml0XCIiX3MsIFN0eWxlOjpE
ZWNpbWFsKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAg
U3RyaW5nIGN1cnJlbmN5ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5jeSIpLCB7IH0sIG51bGxwdHIsIG51
bGxwdHIpOworICAgIFN0cmluZyBjdXJyZW5jeSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2Jq
ZWN0LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiY3VycmVuY3kiKSwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjdXJyZW5jeS5pc051bGwo
KSkgewogICAgICAgICBpZiAoIWlzV2VsbEZvcm1lZEN1cnJlbmN5Q29kZShjdXJyZW5jeSkpIHsK
QEAgLTM1NSw3ICszNTUsNyBAQCB2b2lkIEludGxOdW1iZXJGb3JtYXQ6OmluaXRpYWxpemVOdW1i
ZXJGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYQogICAgIG1fY3VycmVu
Y3lTaWduID0gaW50bE9wdGlvbjxDdXJyZW5jeVNpZ24+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
SWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImN1cnJlbmN5U2lnbiIpLCB7IHsgInN0YW5kYXJk
Il9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkIH0sIHsgImFjY291bnRpbmciX3MsIEN1cnJlbmN5
U2lnbjo6QWNjb3VudGluZyB9IH0sICJjdXJyZW5jeVNpZ24gbXVzdCBiZSBlaXRoZXIgXCJzdGFu
ZGFyZFwiIG9yIFwiYWNjb3VudGluZ1wiIl9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIHVuaXQg
PSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJv
bVN0cmluZyh2bSwgInVuaXQiKSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcg
dW5pdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCBJZGVudGlmaWVy
Ojpmcm9tU3RyaW5nKHZtLCAidW5pdCIpLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJ
SUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgp
KTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlbGxGb3JtZWRVbml0PiB3ZWxsRm9ybWVkVW5pdDsKICAg
ICBpZiAoIXVuaXQuaXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDQx
NjQwODk5N2MxOGY3Yzc2MjhmNzc1YjhkNDFkZjc3MjQyYTRkMTYuLjZiZmI4OTllYjlkMjgyNDEy
Y2UyODM1NTFiYjJiOTM0NThlMDE1NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAt
NDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsTnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlcwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVyRm9ybWF0Q29uc3RydWN0b3JUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdENvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIG51bWJlckZvcm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKaW5kZXggOGRiMjk0MDhhZGZhYmNhMTgzNmQxOTBkOGNkMWI4ZTU1ODU5ZmFlYi4u
MDUxZmZlOGFiMzQ4Mjc2MTdiZjU1ODA4ZTM4OGZmNGE2YTg5YjQxYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bE51bWJlckZvcm1hdFByb3RvdHlwZUZ1bmNGb3JtYXRSYW5nZVRvUGFydHMKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZudW1iZXJG
b3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuTnVtYmVyRm9ybWF0Il9zLCAmQmFzZTo6c19pbmZv
LCAmbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKaW5kZXgg
MDQ5YmMzOTQ2ODI1NmRlMzZmYmNkZGE4ZmEyNzIyMTliYjMxOGVmNC4uNWUxNzY5ZTNmNTlhZjkw
NThkZmFlOTJlNTc5NjBlZWJkOGZlMGExZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTE2OCw3ICsxNjgsNyBAQCBzdHJ1Y3QgTWF0Y2hlclJl
c3VsdCB7CiAgICAgc2l6ZV90IGV4dGVuc2lvbkluZGV4IHsgMCB9OwogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsgIkludGwiLCAmQmFzZTo6c19pbmZvLCAmaW50
bE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxPYmplY3QpIH07
Citjb25zdCBDbGFzc0luZm8gSW50bE9iamVjdDo6c19pbmZvID0geyAiSW50bCJfcywgJkJhc2U6
OnNfaW5mbywgJmludGxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsT2JqZWN0KSB9OwogCiB2b2lkIFVGaWVsZFBvc2l0aW9uSXRlcmF0b3JEZWxldGVyOjpvcGVy
YXRvcigpKFVGaWVsZFBvc2l0aW9uSXRlcmF0b3IqIGl0ZXJhdG9yKSBjb25zdAogewpAQCAtNTg4
LDcgKzU4OCw3IEBAIFRyaVN0YXRlIGludGxCb29sZWFuT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wCiAgICAgcmV0dXJuIHRyaVN0YXRl
KHZhbHVlLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKTsKIH0KIAotU3RyaW5nIGludGxTdHJpbmdP
cHRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3QqIG9wdGlvbnMsIFBy
b3BlcnR5TmFtZSBwcm9wZXJ0eSwgc3RkOjppbml0aWFsaXplcl9saXN0PGNvbnN0IGNoYXIqPiB2
YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBjaGFyKiBmYWxsYmFjaykKK1N0cmlu
ZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0
KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHksIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjaykKIHsKICAgICAvLyBHZXRPcHRpb24gKG9wdGlvbnMsIHByb3BlcnR5LCB0eXBlPSJz
dHJpbmciLCB2YWx1ZXMsIGZhbGxiYWNrKQogICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8v
ZWNtYTQwMi8jc2VjLWdldG9wdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE9iamVjdC5oCmluZGV4IDk4ZTliYjU4M2U1NWJiN2NmOTdiMGE4NTgxYzBiOGM2NWNmMWM5OTcu
LjM0MTE3NjQyMjhmYWI0ODIyYTZjYmU4MDZlODhlODYxZjM0MmZiOTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKQEAgLTEyMiw3ICsxMjIsNyBAQCBUaW1l
Wm9uZUlEIHV0Y1RpbWVab25lSURTbG93KCk7CiBDYWxlbmRhcklEIHV0Y1RpbWVab25lSUQoKTsK
IAogVHJpU3RhdGUgaW50bEJvb2xlYW5PcHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU09iamVjdCog
b3B0aW9ucywgUHJvcGVydHlOYW1lKTsKLVN0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFs
T2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgc3RkOjppbml0aWFsaXpl
cl9saXN0PGNvbnN0IGNoYXIqPiB2YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBj
aGFyKiBmYWxsYmFjayk7CitTdHJpbmcgaW50bFN0cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCos
IEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjayk7CiB1bnNpZ25lZCBpbnRsTnVtYmVyT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNP
YmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgdW5zaWduZWQgbWluaW11bSwgdW5zaWduZWQg
bWF4aW11bSwgdW5zaWduZWQgZmFsbGJhY2spOwogdW5zaWduZWQgaW50bERlZmF1bHROdW1iZXJP
cHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIG1p
bmltdW0sIHVuc2lnbmVkIG1heGltdW0sIHVuc2lnbmVkIGZhbGxiYWNrKTsKIFZlY3RvcjxjaGFy
LCAzMj4gbG9jYWxlSURCdWZmZXJGb3JMYW5ndWFnZVRhZ1dpdGhOdWxsVGVybWluYXRvcihjb25z
dCBDU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUGx1cmFsUnVsZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzLmNwcAppbmRleCBhODUxMzExYzc0NGI1ZWFiMTY1YWM3ZjRkNTY3MTAwNmQ4NjY3
ODNlLi42OGVkZjE2M2JkNDc5ZmExODYxZTAyM2IyZDc3MjQ3ODNjNmRmZGViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlcy5jcHAKQEAgLTUy
LDcgKzUyLDcgQEAgdm9pZCBVUGx1cmFsUnVsZXNEZWxldGVyOjpvcGVyYXRvcigpKFVQbHVyYWxS
dWxlcyogcGx1cmFsUnVsZXMpCiAgICAgICAgIHVwbHJ1bGVzX2Nsb3NlKHBsdXJhbFJ1bGVzKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlczo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsUGx1cmFsUnVsZXMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzOjpzX2lu
Zm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzKSB9OwogCiB1c2luZyBVRW51bWVyYXRpb25E
ZWxldGVyID0gSUNVRGVsZXRlcjx1ZW51bV9jbG9zZT47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNw
cAppbmRleCA4MTJhYWEyMDAwZTMwYjllNmI5Y2Y3MzA1N2JlZDQ0NDAyMjc4ODE2Li4wMGVmYmE1
YzFkZWUyZDY5MjQ0YjJiYTBhNWE0YWUxODU4MzI5NDlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3Iu
Y3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGlu
dGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsZXNPCiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnBsdXJhbFJ1
bGVzQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1
cmFsUnVsZXNDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXND
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sICZwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBwbHVyYWxSdWxlc0NvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwCmluZGV4IDYyYzA4YmY5NTdhMTMyZjEyZDZk
NGJmYjJkODFjZGIwOThkM2E1OTEuLjJiNGU5NTZjODU0NTlmNTQ1YTIwYzJmMmQ3OTE2YmVkNjUx
Yzk4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVy
YWxSdWxlc1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUGx1cmFsUnVsZXNQcm90b3R5cGVGdW5jUmVzb2x2
ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUGx1
cmFsUnVsZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUGx1cmFsUnVsZXMiLCAmQmFzZTo6
c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50
bFBsdXJhbFJ1bGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlBsdXJhbFJ1bGVzIl9zLCAm
QmFzZTo6c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcGx1cmFsUnVsZXNQcm90
b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcAppbmRleCBlMzI4YTFjMWY0MGM0OWU2OTU0NTFhNTNk
Mjk5ZTUyMzE3YjlkNzU2Li45NWM0M2FmNzdlNzc5OWMyZWFiMzNlNzRmZTBhMTMxYzUwYTU2NjZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVU
aW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVs
YXRpdmVUaW1lRm9ybWF0LmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkg
fTsKIAogbmFtZXNwYWNlIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRJbnRlcm5hbCB7CiB9CkBAIC05
Niw3ICs5Niw3IEBAIHZvaWQgSW50bFJlbGF0aXZlVGltZUZvcm1hdDo6aW5pdGlhbGl6ZVJlbGF0
aXZlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgTG9jYWxlTWF0Y2hlciBs
b2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVyPihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsgeyAibG9va3VwIl9zLCBM
b2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3MsIExvY2FsZU1hdGNoZXI6OkJl
c3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwi
YmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBudW1i
ZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
dm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAgICAgICBp
ZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IGE4MjVjMzY2NzEzYzE0NDkw
Y2I2ZGRlYjQ1NzZkYmQ1NTZjZjM2NjQuLmQ2N2VjZjI1ZTg3NjMwODQyZTBjNmE0NThlZjM5MmMx
YTJlODI2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxS
ZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAtNDQs
NyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUmVsYXRpdmVU
aW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVsYXRpdmVUaW1l
Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFJl
bGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJklu
dGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDQ3OTQ1YWQ2YTk3MmFmZmY1
ZTYzOGJhZDk0ZTQyZTA5Zjk5ZTMyMS4uYWZiNDBhN2M3NzM1ZDc0OWQzNDNhYmVkODQyOWI1Zjhm
YjFmMjNmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJl
bGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTQyLDcgKzQy
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFJlbGF0aXZlVGltZUZv
cm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGkKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlJlbGF0aXZlVGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZyZWxhdGl2ZVRpbWVGb3Jt
YXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUmVsYXRpdmVUaW1lRm9ybWF0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKaW5kZXgg
YTVjZDAzYmU4YmQwOGRlZjExZjYwNGZkNWNlZTc2NTBkMDFhMDE5ZC4uMDE2YTFjMzIyNjk2YTY3
NWIwZmFkNGQ5YmZlOWQyMGU4ZDUyMzQxNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudEl0ZXJhdG9y
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSW50bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRl
cmF0b3IpIH07CiAKIEludGxTZWdtZW50SXRlcmF0b3IqIEludGxTZWdtZW50SXRlcmF0b3I6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFr
SXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4mJiBzZWdtZW50ZXIsIEJveDxWZWN0b3I8
VUNoYXI+PiBidWZmZXIsIEpTU3RyaW5nKiBzdHJpbmcsIEludGxTZWdtZW50ZXI6OkdyYW51bGFy
aXR5IGdyYW51bGFyaXR5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwN2Mw
NWNiYzBiY2FlOWMyNWEzZjNjYjAxMWVjMzJhZDhjNTYzMzI1Li41NTljNThjMzQ0YmI4MzliNGY0
NDk5MzIxYTFhMDk4ODYyMDkwODZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAt
MzksNyArMzksNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVu
dEl0ZXJhdG9yUHJvdG90eXBlRnVuY05leHQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNlZ21l
bnQgU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0
b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiU2VnbWVudCBTdHJpbmcgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sICZzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50SXRlcmF0
b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFNlZ21lbnRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmNwcAppbmRleCA4ZDg1ZmU3YzljYzJlNjBjZmU2YjIyMzgzMzQ5N2RkZjliNGY3
Y2IzLi4zZmRhMDVkMjkwNzkwNTg0N2EwYThmMWYxMjVkNDBjODFlNWQxZmMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcApAQCAtMzQsNyAr
MzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50
ZXI6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsU2VnbWVudGVyOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKIAogSW50
bFNlZ21lbnRlciogSW50bFNlZ21lbnRlcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcAppbmRleCAyNTkwNjEwNTBjZWNiYmFlZDljYTQx
MmM0NjA3MTE3OTA5NWU5ZDA0Li5mMWQxZWM0MWQ4YmI2OTM1ODU1MjM0ZDkzMjY5N2UzNGFlMTIy
MjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRlckNvbnN0cnVjdG9yU3VwcG9ydGVkTG9j
YWxlc09mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnNl
Z21lbnRlckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFNlZ21lbnRlckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZzZWdt
ZW50ZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50ZXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IubHV0LmgKIEBiZWdpbiBzZWdtZW50ZXJDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5
cGUuY3BwCmluZGV4IDY2YTVjYzNhOTdlZGY2OThiYmI5YTFlMjMxNmUwYzFmYzk5YTllNWEuLmJi
ZTA5NDdhZGMzZmQyZTcwOWVjNjk2OTJhMDU3MzUwOTNkNjg4NTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3Bw
CkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxT
ZWdtZW50ZXJQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlNlZ21lbnRlciIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50ZXJQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudGVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
U2VnbWVudGVyIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVyUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlclByb3RvdHlwZSkgfTsKIAog
LyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2VnbWVu
dGVyUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudHMuY3BwCmluZGV4IDhkZTM0YTMwNGVkZTAzZTBiODRiMjBjMjgwMTEzNDQxOTk2YWI0
ZjguLjUxNWU1OTUyNjUzNmU3ZDVmZWMxMGNjNTUyYTk2MGJkZDc5MmRiOWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMzcsNyArMzcs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50czo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNl
Z21lbnRzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRzKSB9OwogCiBJbnRsU2VnbWVu
dHMqIEludGxTZWdtZW50czo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHN0
ZDo6dW5pcXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPiYmIHNl
Z21lbnRlciwgQm94PFZlY3RvcjxVQ2hhcj4+JiYgYnVmZmVyLCBKU1N0cmluZyogc3RyaW5nLCBJ
bnRsU2VnbWVudGVyOjpHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCmlu
ZGV4IDUzZTNlY2YwMmZmODRhMjkzNjljNTQ5YTY2ZDA3ODk2ZTVlZjZkZDcuLjBjZTU1Y2RjMGYx
ZjEwNjkxZTllZmIzN2U2MjMxMGJmYWY5ZGFmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcApAQCAtNDAsNyAr
NDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVudHNQcm90
b3R5cGVGdW5jSXRlcmF0b3IpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEludGxTZWdtZW50c1Byb3RvdHlwZTo6c19pbmZvID0geyAiJVNlZ21lbnRzJSIsICZCYXNlOjpz
X2luZm8sICZzZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxTZWdtZW50c1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdtZW50cyUiX3MsICZCYXNlOjpzX2luZm8sICZz
ZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50c1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudHNQcm90b3R5
cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50c1Byb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMDkyYmE1
NTU5ZDVmYzJkNTllYjFkYzZiNDc0ZTNjZTk3MWFkMTA5YS4uYTIxZWVkM2IzODk2MmZjN2VjOGI2
NGM4ZWY3ZDllYzVkOWI1YmUxYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2
b2lkIEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0FycmF5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJy
YXkuY3BwCmluZGV4IDMxNzk4NWZmZWQ2YWViM2U4ODU5Mzg0MzAyMDNlYzliYTQzZDBjYzAuLjRh
ODQwZWVkNmRlMWQ3NTM1ZDY5YWY1ODljMzllOTk1ZmY4NjVhODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCkBAIC0zNiw3ICszNiw3IEBAIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBMZW5ndGhFeGNlZWRlZFRoZU1heGltdW1BcnJheUxlbmd0aEVycm9yIHsgIkxlbmd0
aCBleGNlZWRlZCB0CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShK
U0FycmF5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9IHsiQXJyYXkiLCAm
SlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQXJyYXkpfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FycmF5OjpzX2luZm8gPSB7ICJB
cnJheSJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FycmF5KSB9OwogCiBKU0FycmF5KiBKU0FycmF5Ojp0cnlDcmVh
dGVVbmluaXRpYWxpemVkUmVzdHJpY3RlZChPYmplY3RJbml0aWFsaXphdGlvblNjb3BlJiBzY29w
ZSwgR0NEZWZlcnJhbENvbnRleHQqIGRlZmVycmFsQ29udGV4dCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIHVuc2lnbmVkIGluaXRpYWxMZW5ndGgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCmluZGV4IGRhNmQxZGNlYjIxZTdjMGQ3ZmFkNDc0
YmE1MTA5OGMxM2NhNjczNTYuLjlmOGU0MmRiNjYxNDEzNzZhYjQ5Yjc1NDllNDc3OGY4OGUxYTI3
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIu
Y3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUJ1ZmZlcjo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZl
cil9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXI6OnNfaW5mbyA9IHsgIkFycmF5QnVm
ZmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXlCdWZmZXIpIH07CiAKIEpTQXJyYXlCdWZmZXI6OkpTQXJyYXlCdWZmZXIoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPEFycmF5QnVmZmVyPiYmIGFycmF5QnVm
ZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
YjkyY2UxNTczYzBjOTUxYjkwYjFiOTE5NzA1NmExMTU2OTE5YjZmYS4uMzhmMmFkZWNmOGQwNDE0
ZTc5MjljYjYzMDc0NDI1ZTY0NDM1Yzg5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCkBAIC00MSwx
MyArNDEsMTMgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0U2hh
cmVkQXJyYXlCdWZmZXIpOwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyQ29u
c3RydWN0b3IpCiB9OwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNTaGFyZWRBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZEFycmF5
QnVmZmVyQ29uc3RydWN0b3IpCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCmluZGV4IGNmYTA4Y2JlZjUx
ZjExNTgxOTY5NTVkMDUyNzFmNjc2MjFlYmU4YzUuLjE5MGJlZjExMmNjNWRiOTEwODExYmNlYjhj
NDA0ZTQyN2MyOTIwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU0FycmF5
QnVmZmVyKj4gc3BlY2llc0NvCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgc3BlY2llcy52YWx1ZSgpLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBn
ZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiBuZXdPYmplY3QgPSBjb25z
dHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLnZhbHVlKCksIGFyZ3MsICJTcGVjaWVzIGNvbnN0
cnVjdGlvbiBkaWQgbm90IGdldCBhIHZhbGlkIGNvbnN0cnVjdG9yIl9zKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlcnJvclJlc3VsdCk7CiAKICAgICAvLyAxNy4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QobmV3LCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KQEAgLTI1Nyw3
ICsyNTcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc2hhcmVkQXJyYXlCdWZmZXJQcm90
b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYgogfQogCiBjb25zdCBDbGFzc0luZm8g
SlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZSkKKyAgICAiQXJyYXlCdWZmZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclByb3RvdHlw
ZSkKIH07CiAKIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OkpTQXJyYXlCdWZmZXJQcm90b3R5cGUo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcAppbmRleCA5MTliMzE1OWNjMzc2MDQ1
ZDlhYjk2YTNiZTYyZTBhYWQyMjZiZTYyLi42ZjhkNWFkMGM5MzRhZWIyNTM5NDBjYjdhZThlZTBi
YzBiZDk0YmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Fy
cmF5QnVmZmVyVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
cnJheUJ1ZmZlclZpZXcuY3BwCkBAIC0zNyw3ICszNyw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJWaWV3OjpzX2luZm8gPSB7Ci0gICAgIkFycmF5
QnVmZmVyVmlldyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZpZXcpCisgICAgIkFycmF5QnVmZmVyVmlldyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5
QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlCdWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0
OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5kZXggMWNhMjUxNDZkYTIxNTUwZDczMzQ4OWYzMGIz
MWQ1NGM2MDc4YTA4Yi4uYTI0MWFmODA5NTg3Y2RmZmZmYzBlZTU4ZDliZDhjZTcxMWQ2MmI2NyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5SXRlcmF0b3Iu
Y3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5SXRlcmF0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQXJyYXlJdGVyYXRvcikgfTsKIAogSlNBcnJheUl0ZXJhdG9yKiBKU0FycmF5
SXRlcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCog
aXRlcmF0ZWRPYmplY3QsIEpTVmFsdWUga2luZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwCmluZGV4IDkwODU3ZjRiOGM1NTc1MTA4
OGUyODIyOWU0ZmFjNmUyYmU5MzFlMGEuLjVjMGMzMjlhNDU0OTIwNTE5ZmYyZmI1YTA0ZGMzYWRh
MzhhNDcxZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3lu
Y0Z1bmN0aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTQXN5bmNGdW5jdGlvbjo6c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiIs
ICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
QXN5bmNGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jRnVuY3Rpb246OnNfaW5m
byA9IHsgIkFzeW5jRnVuY3Rpb24iX3MsICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNGdW5jdGlvbikgfTsKIAogSlNBc3luY0Z1bmN0
aW9uOjpKU0FzeW5jRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFi
bGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0s
IGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCmluZGV4IGVkNTA2ZWVlMTVmOTM4ZTI1
MTQ0YWY0NzI2YmNhMjljNDQxZTk0ODIuLmZjZjFkOTJlMTAzNzVkZTQzNmQ2MGNhOGM3ZTEwZjRl
ZWM1MDQ4ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQXN5bmNHZW5lcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6
c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvcikgfTsKIAogSlNBc3lu
Y0dlbmVyYXRvciogSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcAppbmRleCA0YjAwMjVjNTQ0YzU5OTFkNDhh
NDg0YWJjZGJmNDliN2I1Njg0YTkyLi4zNDJiYWFjMDczMTg5NjQ1NjgzNmE5NjdhMTM0YWJhMWJm
NDg2ZGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3JGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9
IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uKSB9
OwogCiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbihW
TSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmln
SW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmlnSW50LmNwcAppbmRl
eCAwM2Q5NDQwYmE1ZDBlNzhiZDMxNzFkZjczYzYyMjljMzI1ZjE0MzJkLi44OWQ3YmNlZWE5NTk2
NTc1ZTJkOTcyZTFjNmNhNDhhNjhlYmRlOWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCaWdJbnQuY3BwCkBAIC02MCw3ICs2MCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCIsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCaWdJbnQpIH07Citjb25z
dCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JpZ0ludCkgfTsKIAogSlNCaWdJ
bnQ6OkpTQmlnSW50KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIERpZ2l0KiBkYXRhLCB1
bnNpZ25lZCBsZW5ndGgpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBAIC0yNDU5LDcgKzI0
NTksNyBAQCBKU1ZhbHVlIEpTQmlnSW50OjpwYXJzZUludChKU0dsb2JhbE9iamVjdCogbnVsbE9y
R2xvYmFsT2JqZWN0Rm9yT09NLCBWTSYgdm0sIENoYQogICAgICAgICBBU1NFUlQobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NKTsKICAgICAgICAgaWYgKGVycm9yUGFyc2VNb2RlID09IEVycm9yUGFy
c2VNb2RlOjpUaHJvd0V4Y2VwdGlvbnMpIHsKICAgICAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9i
YWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmpl
Y3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRvIEJpZ0ludCIpKTsKKyAgICAgICAg
ICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVT
eW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3Ry
aW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBKU1ZhbHVlKCk7
CiAgICAgfQpAQCAtMjU3Niw3ICsyNTc2LDcgQEAgSlNWYWx1ZSBKU0JpZ0ludDo6cGFyc2VJbnQo
SlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgVk0mIHZtLCBDaGEKICAg
ICAgICAgICAgICAgICBpZiAoZXJyb3JQYXJzZU1vZGUgPT0gRXJyb3JQYXJzZU1vZGU6OlRocm93
RXhjZXB0aW9ucykgewogICAgICAgICAgICAgICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChudWxsT3JHbG9iYWxP
YmplY3RGb3JPT00pOwotICAgICAgICAgICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2Jq
ZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiKSk7CisgICAgICAg
ICAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3Bl
LCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8g
cGFyc2UgU3RyaW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICByZXR1cm4gSlNWYWx1ZSgpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKaW5kZXggYzdhMTY3OTU1
M2UwODEzMjU0NTA2NGE1MjVlOTFhMDRiMDdkNGJjOC4uMWVlODExZTBkNWY5ZWQzN2EzZDY5MGZl
YWZhOGUzMzgyYWZhYmIwNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNCb3VuZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0JvdW5kRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNCb3VuZEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNCb3VuZEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNCb3VuZEZ1bmN0aW9uKSB9OwogCiBKU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oYm91bmRUaGlzTm9BcmdzRnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwCmluZGV4IGQ1NDcyZTYwNjA2NzNkYjk0ODRmYmVjNWRi
NjY4YzIyMjBiYzZiMWIuLjNkMjEzYWViYzRjZWIwNTJlYzgxMThlYjFhNDNiYWZhM2U3ZDdiYTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NhbGxlZS5jcHAKQEAgLTMwLDcg
KzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGVlKSB9OwogCiBKU0NhbGxlZTo6SlNDYWxsZWUoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NlbGwuY3BwCmluZGV4IDYzOTQyODY3YTEzMGZlNmM1ZmUwMThlNzQ0ZjE0ZDYxMTlkYjRjMmEu
LjE2NTU0NDhjODliYjllM2Q4MjJjZWExZjQxNmI1ZDZhOGI4YTc5N2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtNDgsNyArNDgsNyBAQCB2b2lkIEpTQ2Vs
bDo6ZHVtcChQcmludFN0cmVhbSYgb3V0KSBjb25zdAogCiB2b2lkIEpTQ2VsbDo6ZHVtcFRvU3Ry
ZWFtKGNvbnN0IEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKLSAgICBvdXQucHJp
bnRmKCI8JXAsICVzPiIsIGNlbGwsIGNlbGwtPmNsYXNzTmFtZShjZWxsLT52bSgpKSk7CisgICAg
b3V0LnByaW50ZigiPCVwLCAlcz4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUoY2VsbC0+dm0oKSku
Y2hhcmFjdGVycygpKTsKIH0KIAogc2l6ZV90IEpTQ2VsbDo6ZXN0aW1hdGVkU2l6ZUluQnl0ZXMo
Vk0mIHZtKSBjb25zdApAQCAtMjEwLDcgKzIxMCw3IEBAIHZvaWQgSlNDZWxsOjpnZXRPd25TcGVj
aWFsUHJvcGVydHlOYW1lcyhKU09iamVjdCosIEpTR2xvYmFsT2JqZWN0KiwgUHJvcGVydHlOYW1l
CiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotY29uc3QgY2hhciogSlND
ZWxsOjpjbGFzc05hbWUoVk0mIHZtKSBjb25zdAorQVNDSUlMaXRlcmFsIEpTQ2VsbDo6Y2xhc3NO
YW1lKFZNJiB2bSkgY29uc3QKIHsKICAgICByZXR1cm4gY2xhc3NJbmZvKHZtKS0+Y2xhc3NOYW1l
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAppbmRleCA3Yzg4ODM0Mzky
YjAxNjQzYTFjNTg3ODBkZGVkOTVmNmM0MjViM2ZiLi5kZjA2OTc3NzFhZGNmNjViM2VmMWI3ZGNm
NDFkMTk4MjM2M2NkMzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaApA
QCAtMTM5LDcgKzEzOSw3IEBAIHB1YmxpYzoKIAogICAgIFR5cGVJbmZvOjpJbmxpbmVUeXBlRmxh
Z3MgaW5saW5lVHlwZUZsYWdzKCkgY29uc3QgeyByZXR1cm4gbV9mbGFnczsgfQogICAgIAotICAg
IGNvbnN0IGNoYXIqIGNsYXNzTmFtZShWTSYpIGNvbnN0OworICAgIEFTQ0lJTGl0ZXJhbCBjbGFz
c05hbWUoVk0mKSBjb25zdDsKIAogICAgIC8vIEV4dHJhY3RpbmcgdGhlIHZhbHVlLgogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgZ2V0U3RyaW5nKEpTR2xvYmFsT2JqZWN0KiwgU3RyaW5nJikg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3Rv
bUdldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3Vz
dG9tR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IDhiOGE0MWY0YzhiZmUwODQ1OWFlYTJhY2VkNzAy
OGVhYmEwYTY1YmEuLmZmZTZiZmQzNTI3NjQyNjE2ZmQ5MWY3NjM3N2Q2ODZhMGIwNjQ4MzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVu
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0
dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0
ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21HZXR0ZXJGdW5jdGlvbikg
fTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbUdldHRlckZ1bmN0aW9u
Q2FsbCk7CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21HZXR0ZXJGdW5jdGlvbkNh
bGwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRl
ckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0
dGVyRnVuY3Rpb24uY3BwCmluZGV4IDM5ZTI3MDI5OTBhYTExNTU3MTliNjlkMWJhZmNkNzg0NjA0
MjdlN2UuLjg2MjgxODU3OGYwOTFlZDc0NzViMDgwMTFhYWY4ZTgwODM3MDI0YzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVuY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVu
Y3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3Vz
dG9tU2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5j
dGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21TZXR0ZXJGdW5jdGlvbikgfTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbVNldHRlckZ1bmN0aW9uQ2FsbCk7
CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21TZXR0ZXJGdW5jdGlvbkNhbGwsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwCmluZGV4IGFiYTY4OGRl
NDg3MWY4NGM2MjUxYjc4ZjBiODNjZDYyODY2NzFkMjMuLjlhNDM1Y2M5Y2IyZTFhYjMwMTk0MzVh
ZDZkZDAzMjhkMzRjZGFiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTRGF0YVZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
RGF0YVZpZXcuY3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmll
dyl9OworY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXc6OnNfaW5mbyA9IHsgIkRhdGFWaWV3Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RGF0YVZpZXcpIH07CiAKIEpTRGF0YVZpZXc6OkpTRGF0YVZpZXcoVk0mIHZtLCBDb25zdHJ1Y3Rp
b25Db250ZXh0JiBjb250ZXh0LCBBcnJheUJ1ZmZlciogYnVmZmVyKQogICAgIDogQmFzZSh2bSwg
Y29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRh
Vmlld1Byb3RvdHlwZS5jcHAKaW5kZXggZTk4Yzc4YWJhYmY5ODMxY2ZmMDY1YzFiZTkwMmJmYWM4
MGEwNmQyYS4uMzhjY2ZhZTYzNTAwYmQwM2JmNGQyZWZkYWRmZTFkNWI2NmE0Y2YzMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlw
ZS5jcHAKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIo
ZGF0YVZpZXdQcm90b0dldHRlckJ5dGVPZmZzZXQpOwogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0
IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7Ci0gICAgIkRhdGFWaWV3
IiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51bGxwdHIsCisgICAgIkRhdGFWaWV3
Il9zLCAmQmFzZTo6c19pbmZvLCAmZGF0YVZpZXdUYWJsZSwgbnVsbHB0ciwKICAgICBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRGF0YVZpZXdQcm90b3R5cGUpCiB9OwogCkBAIC0yMzAsNyArMjMwLDcg
QEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCdWZmZXIsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5
bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8dGhpc3wgdG8g
YmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8
dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUodmlldy0+cG9zc2libHlTaGFyZWRKU0J1ZmZlcihn
bG9iYWxPYmplY3QpKSk7CiB9CkBAIC0yNDIsNyArMjQyLDcgQEAgSlNDX0RFRklORV9DVVNUT01f
R0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE8KIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcq
Pih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghdmlldykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3
LnByb3RvdHlwZS5ieXRlTGVuZ3RoIGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2Jq
ZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZUxlbmd0aCBleHBlY3RzIHx0aGlzfCB0byBiZSBh
IERhdGFWaWV3IG9iamVjdCJfcyk7CiAgICAgaWYgKHZpZXctPmlzRGV0YWNoZWQoKSkKICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVuZGVybHlp
bmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNoZWQgZnJvbSB0aGUgdmlldyJfcyk7CiAKQEAg
LTI1Niw3ICsyNTYsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoZGF0YVZpZXdQcm90b0dl
dHRlckJ5dGVPZmZzZXQsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwogCiAgICAgSlNEYXRhVmll
dyogdmlldyA9IGpzRHluYW1pY0Nhc3Q8SlNEYXRhVmlldyo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKCF2aWV3KQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0YVZpZXcucHJvdG90eXBlLmJ5dGVPZmZzZXQg
ZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlw
ZS5ieXRlT2Zmc2V0IGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Il9zKTsK
ICAgICBpZiAodmlldy0+aXNEZXRhY2hlZCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiVW5kZXJseWluZyBBcnJheUJ1ZmZlciBoYXMgYmVl
biBkZXRhY2hlZCBmcm9tIHRoZSB2aWV3Il9zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAppbmRleCBkZjc4
ODkyYmExMjljZDViNWYwZWFkZWIyZmIxNWRjZTk1MTkwNGE2Li40YThjZDQ5Yjc2OGRhYjExNDJh
YzE3MGJjZjk5Nzk0NGZjZGY5MDhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcApAQCAtMzMsNyArMzMsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVn
aXN0cnk6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsaXphdGlvblJlZ2lz
dHJ5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnNfaW5mbyA9
IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxpemF0aW9uUmVnaXN0cnkpIH07CiAKIFN0
cnVjdHVyZSogSlNGaW5hbGl6YXRpb25SZWdpc3RyeTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CkBAIC0x
NjksNyArMTY5LDcgQEAgdm9pZCBKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5OjpydW5GaW5hbGl6YXRp
b25DbGVhbnVwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QKICAgICB3aGlsZSAoSlNWYWx1
ZSB2YWx1ZSA9IHRha2VEZWFkSG9sZGluZ3NWYWx1ZSgpKSB7CiAgICAgICAgIE1hcmtlZEFyZ3Vt
ZW50QnVmZmVyIGFyZ3M7CiAgICAgICAgIGFyZ3MuYXBwZW5kKHZhbHVlKTsKLSAgICAgICAgY2Fs
bChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUgdmlz
aWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciKTsKKyAgICAgICAg
Y2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUg
dmlzaWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciX3MpOwogICAg
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIH0KIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggZDkzN2IzNmIz
MDQ1NzQ0MGNlYThiZWE1MThkMTk4MTlhNjRhOWQ1Yy4uYTM3NmFmNWVlYTBkZTZiNTE3MGM0ZmI0
NDczNzMwZDI1ODMzMWM1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAKQEAgLTUzLDEwICs1MywxMCBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y2FsbEhvc3RGdW5jdGlvbkFzQ29uc3RydWN0b3IsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwog
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlTm90QUNv
bnN0cnVjdG9yRXJyb3IoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1bmN0
aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmljdEZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU2xvcHB5RnVuY3Rp
b246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nsb3BweUZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJ
bmZvIEpTQXJyb3dGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dGdW5jdGlvbikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1
bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTU3RyaWN0RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNTbG9wcHlG
dW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTbG9wcHlGdW5jdGlvbikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0Fycm93RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dG
dW5jdGlvbikgfTsKIAogYm9vbCBKU0Z1bmN0aW9uOjppc0hvc3RGdW5jdGlvbk5vbklubGluZSgp
IGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvci5j
cHAKaW5kZXggMTU2MmFjMjYyYmQ4MDExMDYxNGRlNDlkYjM5ZGU2YjgxOGRkOGZjYS4uMjRmYmRm
NjNhNjQzMzcwM2YwNWFlMWFkZGZjNDA0NGQwY2NkOTVlOSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2luZm8gPSB7ICJH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTR2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNHZW5lcmF0b3IpIH07CiAKIEpTR2VuZXJhdG9yKiBKU0dlbmVy
YXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCmlu
ZGV4IDA2YWUwNTE4YWIxOTBhNDNhMTM5NmU4MGM5M2RkMTZkMDBlYTI2YjguLmE2OTU0NjM2YWJl
NGExODU5ZGVmM2NjZmEyOTk3MTVhYTJkNjc5MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5j
dGlvbjo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yRnVuY3Rpb24pIH07
Citjb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5jdGlvbjo6c19pbmZvID0geyAiR2VuZXJh
dG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNHZW5lcmF0b3JGdW5jdGlvbikgfTsKIAogSlNHZW5lcmF0b3JGdW5jdGlv
bjo6SlNHZW5lcmF0b3JGdW5jdGlvbihWTSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0
YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2
bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVz
LmgKaW5kZXggZDMyYTJiMGMwYzAzYjNjMjliYjhlNWZlOTRjM2MwN2VmYmQ4YjU3MC4uMTRhNmNm
MzlhZGI1OTQyYWE5MDFmZDVjYWUwZjNjNWNjMjRiOWFlNCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVzLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJ
bmxpbmVzLmgKQEAgLTEwNiwxMSArMTA2LDExIEBAIEpTR2VuZXJpY1R5cGVkQXJyYXlWaWV3PEFk
YXB0b3I+KiBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKAogICAgIHNp
emVfdCBlbGVtZW50U2l6ZSA9IHNpemVvZih0eXBlbmFtZSBBZGFwdG9yOjpUeXBlKTsKICAgICBB
U1NFUlQoYnVmZmVyKTsKICAgICBpZiAoIUFycmF5QnVmZmVyVmlldzo6dmVyaWZ5U3ViUmFuZ2VM
ZW5ndGgoKmJ1ZmZlciwgYnl0ZU9mZnNldCwgbGVuZ3RoLCBlbGVtZW50U2l6ZSkpIHsKLSAgICAg
ICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihn
bG9iYWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciIpKTsKKyAgICAgICAg
dGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9i
YWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciJfcykpOwogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgICAgaWYgKCFBcnJheUJ1ZmZlclZpZXc6OnZlcmlmeUJ5
dGVPZmZzZXRBbGlnbm1lbnQoYnl0ZU9mZnNldCwgZWxlbWVudFNpemUpKSB7Ci0gICAgICAgIHRo
cm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFs
T2JqZWN0LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiKSk7CisgICAgICAgIHRocm93RXhj
ZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogICAgIENvbnN0cnVjdGlvbkNvbnRleHQgY29udGV4dCh2bSwgc3RydWN0dXJl
LCBXVEZNb3ZlKGJ1ZmZlciksIGJ5dGVPZmZzZXQsIGxlbmd0aCk7CkBAIC0xNTIsNyArMTUyLDcg
QEAgYm9vbCBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6dmFsaWRhdGVSYW5nZSgK
ICAgICBpZiAoY2FuQWNjZXNzUmFuZ2VRdWlja2x5KG9mZnNldCwgbGVuZ3RoKSkKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgCi0gICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJSYW5nZSBjb25zaXN0aW5nIG9mIG9m
ZnNldCBhbmQgbGVuZ3RoIGFyZSBvdXQgb2YgYm91bmRzIikpOworICAgIHRocm93RXhjZXB0aW9u
KGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmFu
Z2UgY29uc2lzdGluZyBvZiBvZmZzZXQgYW5kIGxlbmd0aCBhcmUgb3V0IG9mIGJvdW5kcyJfcykp
OwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG90eXBlRnVuY3Rpb25zLmgKaW5kZXggZGYwNDM1ZjZlMzc5ODA2MWQ5ZjZjY2M2ZDc1OWRmZTY2
YmQ2ZDlmYS4uYjk0ZWIzZmIyMjZjNTAwMDVjYzgxYjU5OWQ2NjU1ZmRmOGJkODlmMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCkBAIC02Niw3ICs2
Niw3IEBAIGlubGluZSBKU0FycmF5QnVmZmVyVmlldyogc3BlY2llc0NvbnN0cnVjdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjCiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgZGVmYXVsdENvbnN0cnVjdG9yKCkpOwogCiAKLSAgICBKU1ZhbHVlIHJlc3VsdCA9
IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBh
IGNvbnN0cnVjdG9yIik7CisgICAgSlNWYWx1ZSByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2Jq
ZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciJfcyk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICBpZiAoSlNBcnJh
eUJ1ZmZlclZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXJWaWV3Kj4odm0s
IHJlc3VsdCkpIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1Zh
bHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldChWTSYgdm0sIEpTR2xvYmFsTwog
ICAgICAgICBkb3VibGUgb2Zmc2V0TnVtYmVyID0gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVu
dCgxKS50b0ludGVnZXJPckluZmluaXR5KGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoVU5MSUtF
TFkob2Zmc2V0TnVtYmVyIDwgMCkpCi0gICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIl9zKTsKICAgICAgICAgaWYgKG9mZnNl
dE51bWJlciA8PSBtYXhTYWZlSW50ZWdlcigpICYmIG9mZnNldE51bWJlciA8PSBzdGF0aWNfY2Fz
dDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8c2l6ZV90Pjo6bWF4KCkpKQogICAgICAgICAg
ICAgb2Zmc2V0ID0gb2Zmc2V0TnVtYmVyOwogICAgICAgICBlbHNlCkBAIC02MjUsNyArNjI1LDcg
QEAgQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2
YXRlRnVuY1N1YmFycmF5Q3JlYXRlKFZNJgogICAgIGFyZ3MuYXBwZW5kKGpzTnVtYmVyKGxlbmd0
aCkpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwogCi0gICAgSlNPYmplY3Qq
IHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVz
IGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBhIGNvbnN0cnVj
dG9yIl9zKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNB
cnJheUJ1ZmZlclZpZXcqIHZhbGlkYXRlZCA9IHZhbGlkYXRlVHlwZWRBcnJheShnbG9iYWxPYmpl
Y3QsIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXggOWE4MWM5NjkzYTBmY2Q1
ZTMyODljOTFmMDYzNGJhMTc2YjNlNDVkOC4uNjVhMjlmOWRkY2JjZDU1YTQwMjdkZDQ1MmFmZTEz
NmQ2Y2U2ZDQ5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
bG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsTGV4aWNhbEVudmly
b25tZW50OjpzX2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxMZXhp
Y2FsRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9iYWxMZXhpY2FsRW52aXJv
bm1lbnQ6OnNfaW5mbyA9IHsgIkpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsTGV4
aWNhbEVudmlyb25tZW50KSB9OwogCiB2b2lkIEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Ojpk
ZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAppbmRleCBmYTYyM2UwOTA3NGMzOGZiZTMyMzQxNjdkY2Q1
OTIwMmY4ZjE1MWI2Li4wMTJmMTkxY2Q5YWFlZjcyODgzYjA1MmI1NGIwYjM0NzgzZThjOTdmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3Bw
CkBAIC01MTksNyArNTE5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGRpc2FibGVTdXBl
clNhbXBsZXIsIChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSopKQogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9i
YWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmds
b2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsT2Jq
ZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU0dsb2JhbE9iamVjdDo6
c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5m
bywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcAppbmRleCBkNTdjNmU3ODgwMWQ5N2U3OTRiYzgyYjgzN2VhNTYzYTA3M2Uz
YTU3Li41MWMxNzdkZjlmOThlZjJlMWRhN2Y5MDYzMDg2NWFhNjIwZDZkYmViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZseS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbW11dGFibGVCdXR0ZXJmbHku
Y3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNJbW11dGFibGVCdXR0ZXJmbHk6OnNfaW5mbyA9IHsgIkltbXV0YWJsZSBCdXR0ZXJmbHki
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRh
YmxlQnV0dGVyZmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW1tdXRhYmxlQnV0dGVyZmx5Ojpz
X2luZm8gPSB7ICJJbW11dGFibGUgQnV0dGVyZmx5Il9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRhYmxlQnV0dGVyZmx5KSB9OwogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0ltbXV0YWJsZUJ1dHRlcmZseTo6dmlzaXRD
aGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwCmluZGV4IGZm
MWQ4ZDBlOWRlYjBhZDFkNzZjODVjMzJkMTY5YTBkOTYwNmI5ZWIuLjRlMGUxYjNjNTYwNzEyYzA1
ZWMwNzg0MTc5NDY3MjUyYjFmOGFlNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZv
ID0geyAiSW50ZXJuYWxQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlzZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50ZXJu
YWxQcm9taXNlKSB9OwogCiBKU0ludGVybmFsUHJvbWlzZSogSlNJbnRlcm5hbFByb21pc2U6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVj
dG9yLmNwcAppbmRleCAzMjZmMGU3Y2E5OWI0NTIxNGY0YWM3MzJkMzg4MThkMzk0MWRhZDg3Li41
OWI1NTllOTg1MTE5ZWIzNTE3MTJjMDg1MjEzNWIwMTJhMjNkMmQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTSW50ZXJuYWxQcm9taXNlQ29uc3Ry
dWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJv
bWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTSW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBpbnRlcm5hbFByb21pc2VDb25zdHJ1
Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lu
dGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKaW5kZXggYTY5ZDI3MGQ0OGFjMDU0YmMw
Yzk0OGJmZjgxNjUyZTVjMDNkZjMyZi4uZTE3MWMzMmY0MTg3Nzk1ODA3MzkwNzZhZDVkZGZjYWM4
NmQyMjUwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpT
SW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQ
cm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50
ZXJuYWxQcm9taXNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUpIH07CiAKIEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKiBK
U0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXgg
YzE1MWY0ZDljYWJkOTU3MGQ4NjE0MjRkMDBkMjliYjIxNjVmYTE5My4uOTEyNTk4OWZmMzllOGUw
ZWYzODMxNThkNjI2YThhODE1OGNkMmZkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzQsNyArMzQsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTGV4aWNhbEVudmlyb25t
ZW50OjpzX2luZm8gPSB7ICJKU0xleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNMZXhpY2FsRW52aXJvbm1lbnQp
IH07Citjb25zdCBDbGFzc0luZm8gSlNMZXhpY2FsRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpT
TGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4aWNhbEVudmlyb25tZW50KSB9OwogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0xleGljYWxFbnZpcm9ubWVudDo6dmlzaXRDaGlsZHJl
bkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNNYXAuY3BwCmluZGV4IDE5ZGI1MTYxOWQwOTdlNTA3YmQ3OTZmYzEwNzcwN2Uy
MjAwYjcwMjMuLjY2NzAxNWQyYjE2MmRkODVjNmJhMTU1ZWY0OTYwYjRhN2FkZDE4YWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFwIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTWFwKSB9
OwogCiBKU01hcCogSlNNYXA6OmNsb25lKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCmluZGV4IDU1MWVjMzU2MmM0ZDQzYTM4NTk4OGQ4
M2U4ODY0YWFhOTQ2NDIyMTMuLjU3MzExM2I3ZDE5MDI4YmExODZkYzUxYmNhN2JmMWZmZmRlZGNk
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNNYXBJdGVyYXRvcjo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcEl0ZXJhdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1hcCBJdGVyYXRv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU01hcEl0ZXJhdG9yKSB9OwogCiBKU01hcEl0ZXJhdG9yKiBKU01hcEl0ZXJhdG9yOjpjcmVh
dGVXaXRoSW5pdGlhbFZhbHVlcyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVu
dC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50
LmNwcAppbmRleCA4NWQwYzJlMDMwYzBhOTQ3YzlhNzUzNDVlY2NkNzYzNDBjNjgyY2U0Li40YjRh
MjA2NzI2ODhlOTQ0YzkwOWZjNmQ4ZTUyYjI2ZTc5NGUxN2NmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcApAQCAtMzQs
NyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxl
RW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9kdWxlRW52aXJvbm1lbnQiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlRW52aXJv
bm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNNb2R1bGVFbnZpcm9ubWVudDo6c19pbmZvID0g
eyAiSlNNb2R1bGVFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUVudmlyb25tZW50KSB9OwogCiBKU01vZHVs
ZUVudmlyb25tZW50KiBKU01vZHVsZUVudmlyb25tZW50OjpjcmVhdGUoCiAgICAgVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTY29wZSogY3VycmVudFNjb3BlLCBTeW1ib2xUYWJsZSog
c3ltYm9sVGFibGUsIEpTVmFsdWUgaW5pdGlhbFZhbHVlLCBBYnN0cmFjdE1vZHVsZVJlY29yZCog
bW9kdWxlUmVjb3JkKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNb2R1bGVMb2FkZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwCmluZGV4IGI4YjkyMTI4ZDFkYmRhOWI2YTEwYjU3Y2QxOGU0MzcwNDk1OGUx
ODcuLmVlZDQ2MzUwMTMxNmUzYTNkNDA0ZjFkNjZkZDhmNTYxMWFhZjM1ZTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUxvYWRlci5jcHAKQEAgLTYyLDcg
KzYyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShKU01vZHVsZUxvYWRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZUxv
YWRlcjo6c19pbmZvID0geyAiTW9kdWxlTG9hZGVyIiwgJkJhc2U6OnNfaW5mbywgJm1vZHVsZUxv
YWRlclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlTG9hZGVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTG9hZGVyOjpzX2luZm8gPSB7ICJNb2R1bGVMb2Fk
ZXIiX3MsICZCYXNlOjpzX2luZm8sICZtb2R1bGVMb2FkZXJUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU01vZHVsZUxvYWRlcikgfTsKIAogLyogU291cmNlIGZvciBKU01vZHVs
ZUxvYWRlci5sdXQuaAogQGJlZ2luIG1vZHVsZUxvYWRlclRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAK
aW5kZXggOTZhMGY3ZGE0M2QzY2U4MzExZmVjOTZkOTYzODM5YWFjOTg2ZTkxNC4uMjE4MTA0ZjI5
MjljZDczZGZmYzljYTllYTlkMjVjNTkwMGFkNmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcApAQCAt
MzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTmFtZXNwYWNl
T2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVOYW1lc3Bh
Y2VPYmplY3QpIH07CiAKIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpKU01vZHVsZU5hbWVzcGFj
ZU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNv
cmQuY3BwCmluZGV4IGNiZTY5NTg1M2QyZjFlZmE2ODllMWZkN2I3YmM3Y2Y5YmM0YTZhYjUuLmFi
N2JlY2Q5YzY3YTA4YzJmZTI1OGY3ZGI5MTA1NGYyYmFkNzlkMTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29yZC5jcHAKQEAgLTM2LDcgKzM2LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZVJlY29yZDo6
c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZVJlY29yZCkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU01vZHVsZVJlY29yZDo6c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlUmVjb3Jk
KSB9OwogCiAKIFN0cnVjdHVyZSogSlNNb2R1bGVSZWNvcmQ6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9u
LmNwcAppbmRleCA4MDY0MzlmZGYyNTg3YjE2OGVhNjc0ODAzNzg1MDYyMzM0ZWIxOTk1Li4xMGNm
NmY5OTY0NWRjMzk3YTJiNmMzZWU4YWNlYjM5MjQ2OWE4MTFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcApAQCAtMzEs
NyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZl
U3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU05hdGl2ZVN0ZEZ1bmN0aW9uKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZlU3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmF0aXZlU3RkRnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKHJ1blN0ZEZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U09OT2JqZWN0LmNwcAppbmRleCA2YjdjNTg4MWFkOWJmZmRjYTVhMjQ5YTQzNzEwMjVhMmNmNDdm
ODBiLi5iZjkwNmEyN2Y4MzU5NzBjODU1OTkwZDA1MmIzZGUzYzY5OGFhYWQ0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNjI4LDcgKzYyOCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U09OT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTT05PYmplY3Q6OnNfaW5mbyA9IHsgIkpT
T04iX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZqc29uVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNPTk9iamVjdCkgfTsKIAogLyogU291cmNlIGZvciBKU09OT2Jq
ZWN0Lmx1dC5oCiBAYmVnaW4ganNvblRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU09iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5jcHAKaW5kZXggZDU0NGE0M2JhMTllYTMyN2ZiZDI4MTVhZGM3YWYzNDE2YzU2
MWE2Ni4uMDVhYmVlMjljYjk3NjBmZmU0MjY3MTAyZGI5MDU5OTAwMDUxNGM4YSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcApAQCAtNjUsOSArNjUsOSBAQCBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZUNvbmZpZ3VyYWJp
bGl0eUVycm9yIHsgIkF0dGVtcHRpbgogY29uc3QgQVNDSUlMaXRlcmFsIFVuY29uZmlndXJhYmxl
UHJvcGVydHlDaGFuZ2VFbnVtZXJhYmlsaXR5RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ug
ZW51bWVyYWJsZSBhdHRyaWJ1dGUgb2YgdW5jb25maWd1cmFibGUgcHJvcGVydHkuIl9zIH07CiBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZVdyaXRhYmlsaXR5
RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ugd3JpdGFibGUgYXR0cmlidXRlIG9mIHVuY29u
ZmlndXJhYmxlIHByb3BlcnR5LiJfcyB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNf
aW5mbyA9IHsgIk9iamVjdCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU09iamVjdCkgfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxPYmplY3Q6OnNfaW5m
byA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2Jq
ZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlzaXRvcj4KIEFMV0FZU19JTkxJTkUgdm9pZCBKU09iamVjdDo6bWFya0F1eGlsaWFy
eUFuZFZpc2l0T3V0T2ZMaW5lUHJvcGVydGllcyhWaXNpdG9yJiB2aXNpdG9yLCBCdXR0ZXJmbHkq
IGJ1dHRlcmZseSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0IG1heE9mZnNl
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmluZGV4IDFh
MWQ3YzNmM2M5YTNmNzdhMmI0YWFiYjU2ZTdkNDc1NmY0YWY1OTMuLjVhMmM1ZmRjNGQ2NzBiNWVj
YWI3ZTJjNDhhOTcwNzdlOTk2ZTY3NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNQcm9taXNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcAppbmRleCA4ZDNiOWI4NjYzYjcwYWE0YWRiZjhhNWUx
MDU4MjI4OWI0NWNmM2FmLi42MThiZGJmYTIzYjY5ODM4NTc4MTU5ZWY2ODc0YTY3ZTc2YjEyOGVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNl
Q29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklB
TExZX0RFU1RSVUNUSUJMRShKU1Byb21pc2VDb25zdHJ1Y3Rvcik7CiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJv
bWlzZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUu
Y3BwCmluZGV4IDkxNzJmZTU3MjQ5ODhjYjBhNzE5MTc1MDRlMWViZTk1MWRjNjBkZTcuLjY2NjZj
N2Q1MDE5ZjUxYWU4ZTA0OTRjN2VhY2JiOWU5ZDkxNzY0Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNQcm9taXNl
UHJvdG90eXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlByb21pc2UiLCAmQmFzZTo6c19pbmZvLCAmcHJvbWlz
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlByb21pc2UiX3MsICZCYXNlOjpzX2luZm8sICZwcm9taXNlUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByb21pc2VQcm90b3R5
cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9w
ZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAKaW5kZXggNmVlMzIwZjdlM2Q5MDliNmNkMGUzNzkz
NjFkYTBhYTBlODc1N2M0My4uNTI1MDliYjZlNDcyMTQzMGEyYWIxMGNkMzM4NmJlNDMxYWViNjM0
OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpzX2luZm8g
PSB7ICJKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3I6OnNfaW5mbyA9IHsgIkpTUHJvcGVy
dHlOYW1lRW51bWVyYXRvciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IpIH07CiAKIEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvciogSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgdWludDMyX3QgaW5kZXhlZExlbmd0aCwgdWludDMyX3QgbnVtYmVy
U3RydWN0dXJlUHJvcGVydGllcywgUHJvcGVydHlOYW1lQXJyYXkmJiBwcm9wZXJ0eU5hbWVzKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb3h5LmNwcAppbmRleCBmNDUzZmFi
OWM4ZGE3ZDJjZDQxNjNiNTUzMzA4NjU1OGU3ZmU2MmNhLi40ODFkODU3OTNlYzM5YjFiNDM1ZDlm
YmVlMmJiNmU5NDJhZGY0ZTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3h5LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTUHJveHkpOwogCi1jb25zdCBDbGFzc0luZm8g
SlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb3h5OjpzX2luZm8gPSB7ICJKU1Byb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTUHJveHk6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKaW5kZXggNTkzOWQ4ZjJkNTFmYTBiM2JmYjU2MjVmMmIx
ZWY1NDdiMjlkZTFmMC4uYWYwNzE4ZTlhYWNkYTc5NzJmZTc1MDQ4YjhmODBmNGQxN2Y2NWM1ZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1JlbW90ZUZ1bmN0aW9uKSB9OwogCiBKU1JlbW90ZUZ1bmN0aW9uOjpKU1JlbW90ZUZ1
bmN0aW9uKFZNJiB2bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTT2JqZWN0KiB0YXJnZXRG
dW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIGdsb2JhbE9iamVjdCwgc3RydWN0
dXJlKQpAQCAtNjYsNyArNjYsNyBAQCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcEFyZ3VtZW50
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZWN0KgogICAgIEpTVmFs
dWUgcmVzdWx0ID0gd3JhcFZhbHVlKGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2
YWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJl
c3VsdCkKLSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVl
IHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsK
KyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3Np
bmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsKIH0KIApAQCAtNzcsNyArNzcsNyBA
QCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcFJldHVyblZhbHVlKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZQogICAgIEpTVmFsdWUgcmVzdWx0ID0gd3JhcFZhbHVl
KGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2YWx1ZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgdGhyb3dU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFs
bXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVz
dCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihz
Y29wZSwgcmVzdWx0KTsKIH0KIApAQCAtMjI4LDcgKzIyOCw3IEBAIHZvaWQgSlNSZW1vdGVGdW5j
dGlvbjo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZt
KQogICAgIGF1dG8qIGV4Y2VwdGlvbiA9IHNjb3BlLmV4Y2VwdGlvbigpOwogICAgIGlmIChVTkxJ
S0VMWShleGNlcHRpb24gJiYgIXZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oZXhjZXB0aW9uKSkp
IHsKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24oKTsKLSAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIndyYXBwaW5nIHJldHVybmVkIGZ1bmN0aW9uIHRocm93
cyBhbiBlcnJvciIpOworICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAid3JhcHBpbmcgcmV0dXJuZWQgZnVuY3Rpb24gdGhyb3dzIGFuIGVycm9yIl9zKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY29wZS5jcHAKaW5kZXggNDk1
ZGM2M2M0ZmFiYWE0NTE1NmQ1MzNlYzU3YTU3MjQ0NTA4NjMwNC4uODM0Y2QzMzQwMTZhMjM3YTQ3
ZDYyNmQ5ZjExOTg3MjcxZTU1NDE5OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTY29wZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Njb3BlKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3BlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NvcGUpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTU2NvcGU6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcAppbmRleCA5ZjIxNTFmYjkzYTkz
NTlmNTVkYjY5YjE1NWUxOTVhMWY1NWNlMzU5Li5mZjA2YWZlOGIyYjBlNzBhYmVkNTk0MWMwYjE1
MWEyODBhNzlmZGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzIiwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoUGFyYW1ldGVycykgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoUGFyYW1ldGVyczo6c19pbmZvID0geyAiSlNT
Y3JpcHRGZXRjaFBhcmFtZXRlcnMiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaFBhcmFtZXRlcnM6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hlci5jcHAKaW5kZXggMjZjOWM3
NjZjZjAxNTFmNmIzYWU3MDNmODMyNzNkNzFmMzA0ZTNiNC4uZTQzNGFkZTg0OWMxNmRiNGVkMTRi
ZjljYTViNDI1NTJkMGUxZWEyMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1NjcmlwdEZldGNoZXIuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaGVyOjpzX2luZm8gPSB7ICJKU1Nj
cmlwdEZldGNoZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2NyaXB0RmV0Y2hlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoZXI6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hlciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoZXIpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaGVyOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
aW5kZXggZWJjYTIxZTg5OWVkOTdjOTcxNzllMGQyNDAyZGYzNzIxNTNhYjExNy4uYTc0ODM2NDU0
ZDc1ODM4NTZiZGI0MzRlMjU3ZDcyNjM2MzEzZjEyNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
QEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlZ21l
bnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0KSB9OwogCiBTY29wZU9mZnNldCBKU1NlZ21lbnRlZFZh
cmlhYmxlT2JqZWN0OjpmaW5kVmFyaWFibGVJbmRleCh2b2lkKiB2YXJpYWJsZUFkZHJlc3MpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOTQ0ZTBmYTA5ZWM0
YWNjMmU5MzY2NDY5MDVjYTE4MzkzOGMwZDUzZi4uOWFmM2Q5NDlmMTc2ODEzNDdmNDJiNmMwNTI1
ZTFlOTMyOTY1MmE2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApA
QCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
U2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2lu
Zm8gPSB7ICJTZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNTZXQpIH07CiAKIEpTU2V0KiBKU1NldDo6Y2xvbmUoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKaW5kZXggYmYx
NzlhZWJkZTFkMmUxODdlZjk0ZDJhNWY3OTI4OTAxMzIzMDhkYy4uMTI1ZWI5NjA2MzdlZjBkN2Vm
N2E5ZmQ5M2VlMzBiYzM4OGUxMDIyNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NldEl0ZXJhdG9yOjpzX2luZm8gPSB7ICJTZXQgSXRl
cmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2V0SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19p
bmZvID0geyAiU2V0IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0SXRlcmF0b3IpIH07CiAKIEpTU2V0SXRlcmF0b3Iq
IEpTU2V0SXRlcmF0b3I6OmNyZWF0ZVdpdGhJbml0aWFsVmFsdWVzKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1NvdXJjZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3Vy
Y2VDb2RlLmNwcAppbmRleCA5MTNjNTgxNmQ1NzhmZmYwZmJiOGMyN2E5MDQ4YWExM2VlMzg1MjY3
Li40ZTIwMGU1NmRjZmE0NzMwMzlkYzg5MDliNzg0YmI5ZTQwNjY4ZWExIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU291cmNlQ29kZS5jcHAKQEAgLTMwLDcgKzMwLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NvdXJjZUNvZGU6OnNf
aW5mbyA9IHsgIkpTU291cmNlQ29kZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTb3VyY2VDb2RlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU291cmNl
Q29kZTo6c19pbmZvID0geyAiSlNTb3VyY2VDb2RlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU291cmNlQ29kZSkgfTsKIAogdm9pZCBKU1NvdXJj
ZUNvZGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTdHJpbmcuY3BwCmluZGV4IDU4MjUyMDNiMzIwY2I3M2QzOTc1ZWNlYTZiZmY5NzNh
MTBkMGJiNDguLmI2NzNjZDgyMTAyMzBmODYyZmExN2M3MmNiMDQ2N2Y0ZWMyOTE1NWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNf
aW5mbyA9IHsgInN0cmluZyIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNTdHJpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNfaW5mbyA9
IHsgInN0cmluZyJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmluZykgfTsKIAogU3RydWN0dXJlKiBKU1N0cmluZzo6Y3JlYXRlU3RydWN0dXJl
KFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90bykKIHsK
QEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBKU1N0cmluZzo6ZHVtcFRvU3RyZWFtKGNvbnN0IEpTQ2Vs
bCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKICAgICBWTSYgdm0gPSBjZWxsLT52bSgpOwog
ICAgIGNvbnN0IEpTU3RyaW5nKiB0aGlzT2JqZWN0ID0ganNDYXN0PGNvbnN0IEpTU3RyaW5nKj4o
Y2VsbCk7Ci0gICAgb3V0LnByaW50ZigiPCVwLCAlcywgWyV1XSwgIiwgdGhpc09iamVjdCwgdGhp
c09iamVjdC0+Y2xhc3NOYW1lKHZtKSwgdGhpc09iamVjdC0+bGVuZ3RoKCkpOworICAgIG91dC5w
cmludGYoIjwlcCwgJXMsIFsldV0sICIsIHRoaXNPYmplY3QsIHRoaXNPYmplY3QtPmNsYXNzTmFt
ZSh2bSkuY2hhcmFjdGVycygpLCB0aGlzT2JqZWN0LT5sZW5ndGgoKSk7CiAgICAgdWludHB0cl90
IHBvaW50ZXIgPSB0aGlzT2JqZWN0LT5maWJlckNvbmN1cnJlbnRseSgpOwogICAgIGlmIChwb2lu
dGVyICYgaXNSb3BlSW5Qb2ludGVyKSB7CiAgICAgICAgIGlmIChwb2ludGVyICYgSlNSb3BlU3Ry
aW5nOjppc1N1YnN0cmluZ0luUG9pbnRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKaW5kZXggZDRjMTJlOWI4NGJmYTk4ZWNjYmM0
OTc3NzJhZTI1M2Y1N2ZjZjU1ZC4uMjk1NWI3Y2Y4YzAxZTQ0MTY5NDk3ZmE4NjhmMGE3YzhiMTYy
OTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1N0cmluZ0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3RyaW5nSXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmdJdGVyYXRvcjo6c19p
bmZvID0geyAiU3RyaW5nIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNT
dHJpbmdJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU1N0cmluZyogaXRlcmF0ZWRT
dHJpbmcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5
bWJvbFRhYmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3lt
Ym9sVGFibGVPYmplY3QuY3BwCmluZGV4IDhmMGE5Y2NlYTcxZTVhMTEwNjc0NGUxNjAxMmUwZDlj
YWM1OTI4OTcuLmZiNjBmY2UwMDg1ZTI4ZjBhOWI5ODdiZjUxZTczMGIyZDkzYWQ3NjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmpl
Y3QuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNTeW1ib2xUYWJsZU9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3ltYm9sVGFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNTeW1ib2xUYWJsZU9iamVj
dDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTeW1ib2xUYWJsZU9iamVjdCkgfTsK
IAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNTeW1ib2xUYWJsZU9iamVjdDo6
dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVjdERlc2Ny
aXB0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVj
dERlc2NyaXB0b3IuY3BwCmluZGV4IDQyODk5MGEzYWI0YTRhYmE1Mjg2ODk2OTc3OGUzMWMzMDA2
NTljOTguLjA4ODNlODhiNzAzY2ZhMTljYThiZTNhMjQ1NzE2YTA3ZjZlNWFiMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlw
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1RlbXBsYXRlT2Jq
ZWN0RGVzY3JpcHRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAi
VGVtcGxhdGVPYmplY3REZXNjcmlwdG9yIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAiVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yKSB9OwogCiAKIEpTVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yOjpKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcihWTSYgdm0sIFJlZjxU
ZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I+JiYgZGVzY3JpcHRvciwgaW50IGVuZE9mZnNldCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMuY3BwCmluZGV4IDk1YWJlYzU0MDlhMzFlYTc4MzEzZDNjNWYzOWFkYjQ1ODVi
OGZhZDQuLmJlOWEyNWFiYzNlOWFjODhiOGQ2NmI3YzM3OGQ5ZDRhZTRmMzQyZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Q29u
c3RydWN0b3JzLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogI3VuZGVm
IE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rp
b24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0KKyAgICB0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKSB9
CiAKIE1BS0VfU19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3Rv
dHlwZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJv
dG90eXBlcy5jcHAKaW5kZXggYmE4MThlYTMwODJmZjQwNGM5ZDRhN2YxNDE4MWVjOTc3YjgxOTMw
YS4uOGQxNzZmOTQ0Y2VkZDBiNmI1NTY2YWNkMTg2NDcxMTg3MjhhODM3NyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBlcy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBl
cy5jcHAKQEAgLTMxLDEyICszMSwxMSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OnNfaW5mbyA9IHsiUHJvdG90eXBlIiwg
JkpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKLSAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUpfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7ICJQ
cm90b3R5cGUiX3MsICZKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZSkgfTsKIAogI3VuZGVmIE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUp
IFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpz
X2luZm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1By
b3RvdHlwZSl9CisgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI1Byb3Rv
dHlwZTo6c19pbmZvID0geyAjdHlwZSAiUHJvdG90eXBlIl9zLCAmSlMjI3R5cGUjI1Byb3RvdHlw
ZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
IyN0eXBlIyNQcm90b3R5cGUpIH0KIAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19J
TkZPKEludDE2QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmEzMzM4MmVm
YzgzYzA1ZjE5NWQ1NGJlNmY0NTA4NDNjMTBhZjUyMS4uNDczOGYwZWVmNTc0ZjIyZGY4NDdhNmM0
M2FiODdhMDU3ODJhY2I0NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IuY3BwCkBAIC0zOSw3ICsz
OSw3IEBAIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6SlNUeXBlZEFycmF5Vmlld0NvbnN0
cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0
b3IpIH07CiAKIHZvaWQgSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVHlwZWRBcnJheVZpZXdQ
cm90b3R5cGUqIHByb3RvdHlwZSwgR2V0dGVyU2V0dGVyKiBzcGVjaWVzU3ltYm9sKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1By
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcAppbmRleCA4ODI3YjNkZTk4ZmUwNWZlNThiOTE3MDQyOWUzODY0OTk1
ZTE5ZjU4Li4zZjllYzg0MDBlOWVjZjllYWEwNTkzMjdkNTIwNjU4NzlkNjZhZTliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcApAQCAtMjYzLDcgKzI2Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTih0eXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFs
dWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUoKTsKICAgICBpZiAoIXRoaXNWYWx1
ZS5pc09iamVjdCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJSZWNlaXZlciBzaG91bGQgYmUg
YSB0eXBlZCBhcnJheSB2aWV3IGJ1dCB3YXMgbm90IGFuIG9iamVjdCIpKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiUmVjZWl2ZXIgc2hvdWxkIGJlIGEgdHlwZWQgYXJyYXkgdmlldyBidXQgd2Fz
IG5vdCBhbiBvYmplY3QiX3MpKTsKICAgICBzY29wZS5yZWxlYXNlKCk7CiAgICAgQ0FMTF9HRU5F
UklDX1RZUEVEQVJSQVlfUFJPVE9UWVBFX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0luY2x1ZGVzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5cy5jcHAKaW5kZXggOTBiMzA0NTY3MGFmMGFiZTJmNmQwMjdlZGU5ZDg4NWZm
ZjA0YWYzOS4uZDliMjI2Mjk0NDBjOGM3MGExZDZhM2YyOTE5ZTI3Y2QxNDhkNGQwYiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKQEAgLTQ2
LDcgKzQ2LDcgQEAgY29uc3QgQVNDSUlMaXRlcmFsIHR5cGVkQXJyYXlCdWZmZXJIYXNCZWVuRGV0
YWNoZWRFcnJvck1lc3NhZ2UgeyAiVW5kZXJseWluZyBBcnIKICN1bmRlZiBNQUtFX1NfSU5GTwog
I2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCiAgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlMjI3R5cGUjI0FycmF5OjpzX2luZm8gPSB7IFwKLSAgICAgICAgI3R5cGUgIkFycmF5Iiwg
JkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBcCisgICAg
ICAgICN0eXBlICJBcnJheSJfcywgJkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBcCiAgICAgICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0Fy
cmF5KSBcCiAgICAgfTsgXAogICAgIGNvbnN0IENsYXNzSW5mbyogZ2V0IyN0eXBlIyNBcnJheUNs
YXNzSW5mbygpIHsgcmV0dXJuICZKUyMjdHlwZSMjQXJyYXk6OnNfaW5mbzsgfSBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtNYXAuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNwcAppbmRleCA0MWViZDhmN2VmNTQ3
ZjQxMGYyNjMwYWVmZWM5YzlkZmVkNjE0NDE1Li5jMTIwODU1NGI5MWExZDdkMTM4NWRiODQwOTAy
ZDhkOTgyOGRlNDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01h
cC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha01hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrTWFwKSB9OwogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RS
ZWYuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNw
cAppbmRleCAxNTYxM2QzODkwYThkOTE3YWMyMDJkNjc2MjI3M2RlODY4NmVmYWU2Li4yODNkN2Vm
MjgzN2VlZTUwMDczYmZhYWM5MGY4ZGJiOGM0Njc1MzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHAKQEAgLTMwLDcgKzMwLDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtPYmplY3RSZWY6OnNf
aW5mbyA9IHsgIldlYWtSZWYiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2Vha09iamVjdFJlZikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dl
YWtPYmplY3RSZWY6OnNfaW5mbyA9IHsgIldlYWtSZWYiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrT2JqZWN0UmVmKSB9OwogCiB2
b2lkIEpTV2Vha09iamVjdFJlZjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU09iamVjdCogdmFs
dWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtT
ZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrU2V0LmNwcAppbmRl
eCBiZmRkOTRlZDA5ZGYzOGRhYThiMWY2MmQ4NTQzZWYxYmJiYmZhMmYxLi5hMDFiNzhhNzU0OTJl
OGU4MDc5MjU5MDY5MWZkOWI3MzE4ODcwOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTV2Vha1NldC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha1Nl
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWFrU2V0KSB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dpdGhT
Y29wZS5jcHAKaW5kZXggYWMxZmEyNWZiYjQ4NmIwNGYzZDJkYTQzNzIyYjY5YTU3MDc0NTYxZS4u
MTE5ZThhYzJkODQ2NTk0MmE4YzFkNjhmNGVhZmU3ZTdhM2I2ZDY5ZSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8g
PSB7ICJXaXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3Bl
OjpzX2luZm8gPSB7ICJXaXRoU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXaXRoU2NvcGUpIH07CiAKIEpTV2l0aFNjb3BlKiBK
U1dpdGhTY29wZTo6Y3JlYXRlKAogICAgIFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNTY29wZSogbmV4dCwgSlNPYmplY3QqIG9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAKaW5kZXggNDEyZTI1OGFiMDk1OWYx
OGIzMmRhOTkxZGIzZjk2MDRmMjk4YjdmNC4uYjM5NTFkZWVhN2VkY2EyYTk1MmJmODY5NGRkYjY2
NGVmODU4YmEwMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0
ZXJhbFBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJh
bFBhcnNlci5jcHAKQEAgLTExNjEsNyArMTE2MSw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBM
aXRlcmFsUGFyc2VyPENoYXJUeXBlPjo6cGFyc2VQcmltaXRpdmVWYWx1ZShWTSYgdm0pCiAgICAg
ICAgICAgICBpZiAodG9rZW4tPnN0cmluZ0xlbmd0aCA+IHNob3J0TGVuZ3RoKQogICAgICAgICAg
ICAgICAgIGVycm9yU3RyaW5nID0gdHJ5TWFrZUVycm9yU3RyaW5nKHNob3J0TGVuZ3RoKTsKICAg
ICAgICAgICAgIGlmICghZXJyb3JTdHJpbmcpCi0gICAgICAgICAgICAgICAgZXJyb3JTdHJpbmcg
PSAiVW5leHBlY3RlZCBpZGVudGlmaWVyIjsKKyAgICAgICAgICAgICAgICBlcnJvclN0cmluZyA9
ICJVbmV4cGVjdGVkIGlkZW50aWZpZXIiX3M7CiAgICAgICAgIH0KIAogICAgICAgICBtX3BhcnNl
RXJyb3JNZXNzYWdlID0gZXJyb3JTdHJpbmc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTVhMjg5ODY3NTg0ODI5ZmVhMjE0MWY5
Njg4MjQ5NTA2MDhjYjc4Yi4uMzU0MDEyZGJkNDhmNGM3ODI3YjZiOWQ2ZWE2OWQ5MDVjNDI0YTVj
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9y
LmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIE1hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIE1hcFByb3RvdHlwZSogbWFwUHJvdG90eXBlLCBHZXR0ZXJTZXR0ZXIqIHNwZWNpZXNT
eW1ib2wpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggNmFjNTg3YjVlODY5OTcxM2NjZGNiY2MzZjVhMjEx
MWVjZmJhOTIyNy4uZjczMWM1ZDM0NWUyYjQxZGE1OWM3MjAwNjcwMzIwYjQ3OGE1YjljZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJv
dG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwSXRlcmF0b3JQcm90b3R5cGUpIH07CiAK
IHZvaWQgTWFwSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBQcm90b3R5cGUuY3BwCmluZGV4IDkzZWJlMDAzYzQ3MmJjODk0M2E4NThkYTgzNTM0
ZjJiYjdhMTgwNmUuLmZmY2JkNzhmMTY0OWQ0YWJjYzcyNTY0NDcyMDQ0YjZmMDVlNTM0ODEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcApAQCAt
MzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgJm1hcFByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCJfcywgJkJhc2U6OnNfaW5m
bywgJm1hcFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFBy
b3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBNYXBQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBt
YXBQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTWF0aE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2Jq
ZWN0LmNwcAppbmRleCA1YjBjYTk3N2QwODUxYzRiYjY3YzllNDY0ZTVhMTAzYzIyYzE0YjM3Li5k
ZTY4YWE5NzQ0NmU3MDlhOGY0MTExMDBiY2QyZmIwYjRiYWVjMTk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcApAQCAtNjMsNyArNjMsNyBAQCBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jVGFuKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNUYW5oKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNJTXVsKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hdGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hdGhPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gTWF0aE9iamVjdDo6c19pbmZvID0geyAiTWF0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9OwogCiBNYXRo
T2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBK
U05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggMWQ1
M2JmNWQxMGE2ZjQ0OGQzOTMzY2YxNDFiNzA0OWRkMjYyY2M3NC4uMjQ3ZmFhNjVlYmNlNmVhMzk0
NzZjYzI2ZWY0ZDJlNTI2ZDU5ZTU2OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01vZHVsZVByb2dyYW1FeGVjdXRhYmxlLmNwcApAQCAtMzAsNyArMzAs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1vZHVsZVByb2dyYW1F
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTW9kdWxlUHJvZ3Jh
bUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGU6
OnNfaW5mbyA9IHsgIk1vZHVsZVByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1vZHVsZVByb2dyYW1FeGVjdXRh
YmxlKSB9OwogCiBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZTo6TW9kdWxlUHJvZ3JhbUV4ZWN1dGFi
bGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNl
KQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkubW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGVT
dHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZl
ZENvbnRleHRUeXBlOjpOb25lLCBmYWxzZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwg
Tm9JbnRyaW5zaWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
YXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDIxM2Q5ZmI3YTY4YWIyYWM4Zjk2ZDg2
NzBkOGFlMzQ2ZjEzOWUzZmMuLjcwMmUzNjkwMDYyZjVjYmRlNjZlYzc2ZjM3NDc0ZGNkODRhZDY5
NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2
ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JDb25z
dHJ1Y3RvckJhc2UpOwogCi1jb25zdCBDbGFzc0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJh
c2U6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZTo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFdmFsRXJyb3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0RXZhbEVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKaW5kZXggNjRmOWQxZmQ2Mzg4NjNjZmVm
NTEwZDg0MDFhZmM4OWM3ZDdiOWE2YS4uZTA5NjYzYjJkYTMzN2YyMzMzOGU3ZTliYzYwOTNlNWFk
YzJmMTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBOYXRpdmVFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRh
YmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOYXRpdmVF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRhYmxlIl9zLCAmRXhlY3V0YWJsZUJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OwogCiBOYXRpdmVFeGVjdXRhYmxlKiBOYXRpdmVFeGVjdXRhYmxlOjpjcmVh
dGUoVk0mIHZtLCBSZWY8SklUQ29kZT4mJiBjYWxsVGh1bmssIFRhZ2dlZE5hdGl2ZUZ1bmN0aW9u
IGZ1bmN0aW9uLCBSZWY8SklUQ29kZT4mJiBjb25zdHJ1Y3RUaHVuaywgVGFnZ2VkTmF0aXZlRnVu
Y3Rpb24gY29uc3RydWN0b3IsIGNvbnN0IFN0cmluZyYgbmFtZSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IGFh
ZTIwYTViYzc1OWIwNTJjZjE5Mzk3ODhiNmMwMGMyYWRiMjJjZmIuLjYyNzBkNTM0NzE3MmMyNDI5
Zjg3ZTAxODRhMjVkZjllZDM4MWUzN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE51bGxHZXR0ZXJGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBO
dWxsR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlv
bikgfTsKIAogbmFtZXNwYWNlIE51bGxHZXR0ZXJGdW5jdGlvbkludGVybmFsIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAK
aW5kZXggZjIxOWI5MzI2YmJkYWFlZGZlM2ZhMWM2Yjg2ZjFhYWMzYTUxOGJjMy4uMDk1YzYwNWIx
OTIwZjc1MTA1YWRjMWQ0NGY4ZDMzYjgwNzIyNzBiOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVsbFNldHRlckZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIE51bGxTZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRl
ckZ1bmN0aW9uKSB9OwogCiAKICNpZiBBU1NFUlRfRU5BQkxFRApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyM2ExNmI1
MjM1ZGY4MzlmYjllNWRlZWVmYjY1Mjg1YWNhNjI3ZDAuLmQyYTA1MDVmZDcyNDFmMTdlNjNjOTMw
YTBjYjA3ODY2MzdjMDBmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25z
dHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmbnVtYmVyQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZudW1iZXJDb25zdHJ1Y3RvclRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlckNvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIE51bWJlckNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gbnVtYmVyQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVj
dC5jcHAKaW5kZXggZWZlYmIyOWExM2I5NWQxNzg3NmUwZjFmMmRkYTU3NmE3ZDEwZjJiNy4uNTEy
ZGVmZTc2MTYwMzU1MTA5MTEyNGM0NDA0ZDNmMzI2ZjVhYzViNCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShOdW1iZXJPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyT2JqZWN0Ojpz
X2luZm8gPSB7ICJOdW1iZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyT2JqZWN0KSB9OwogCiBOdW1iZXJPYmplY3Q6Ok51bWJl
ck9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3Rv
dHlwZS5jcHAKaW5kZXggODg4NTkxZGRjMDZmZmFjYWQyZjBhMDk3M2JmMDI1NTRkNjUxODBiNi4u
NjliMzBmZjVlMWU3Yzc2YjBiMTc0NTE3N2NiYjhmZWEwNTYzZjBlYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwCkBAIC01MSw3ICs1
MSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG51bWJlclByb3RvRnVuY1Rv
UHJlY2lzaW9uKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIk51bWJlciIsICZOdW1iZXJPYmplY3Q6OnNfaW5mbywgJm51
bWJlclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsg
Ik51bWJlciJfcywgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRh
YmxlCkBAIC0zNzUsNyArMzc1LDcgQEAgU3RyaW5nIHRvU3RyaW5nV2l0aFJhZGl4KGRvdWJsZSBk
b3VibGVWYWx1ZSwgaW50MzJfdCByYWRpeCkKICAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVy
KGRvdWJsZVZhbHVlKTsKIAogICAgIFJhZGl4QnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gdG9T
dHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCk7CisgICAg
cmV0dXJuIFN0cmluZyB7IHRvU3RyaW5nV2l0aFJhZGl4SW50ZXJuYWwoYnVmZmVyLCBkb3VibGVW
YWx1ZSwgcmFkaXgpIH07CiB9CiAKIC8vIHRvRXhwb25lbnRpYWwgY29udmVydHMgYSBudW1iZXIg
dG8gYSBzdHJpbmcsIGFsd2F5cyBmb3JtYXR0aW5nIGFzIGFuIGV4cG9uZW50aWFsLgpAQCAtNDEy
LDcgKzQxMiw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihudW1iZXJQcm90b0Z1bmNUb0V4
cG9uZW50aWFsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAgICAgIGNvbnZlcnRlci5U
b0V4cG9uZW50aWFsKHgsIC0xLCAmYnVpbGRlcik7CiAgICAgZWxzZQogICAgICAgICBjb252ZXJ0
ZXIuVG9FeHBvbmVudGlhbCh4LCBkZWNpbWFsUGxhY2VzLCAmYnVpbGRlcik7Ci0gICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgYnVpbGRlci5GaW5hbGl6ZSgpKSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nIHsgYnVpbGRlci5GaW5h
bGl6ZSgpIH0pKTsKIH0KIAogLy8gdG9GaXhlZCBjb252ZXJ0cyBhIG51bWJlciB0byBhIHN0cmlu
ZywgYWx3YXlzIGZvcm1hdHRpbmcgYXMgYW4gYSBkZWNpbWFsIGZyYWN0aW9uLgpAQCAtNTEzLDcg
KzUxMyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTU3RyaW5nKiBudW1iZXJUb1N0cmluZ0lu
dGVybmFsKFZNJiB2bSwgZG91YmxlIGRvdWJsZVZhbHVlCiAgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sIFN0cmluZzo6bnVtYmVyKGRvdWJsZVZhbHVlKSk7CiAKICAgICBSYWRp
eEJ1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIGpzU3RyaW5nKHZtLCB0b1N0cmluZ1dpdGhSYWRp
eEludGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4KSk7CisgICAgcmV0dXJuIGpzU3Ry
aW5nKHZtLCBTdHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFsKGJ1ZmZlciwgZG91Ymxl
VmFsdWUsIHJhZGl4KSB9KTsKIH0KIAogSlNTdHJpbmcqIGludDMyVG9TdHJpbmcoVk0mIHZtLCBp
bnQzMl90IHZhbHVlLCBpbnQzMl90IHJhZGl4KQpAQCAtNTQxLDcgKzU0MSw3IEBAIEpTU3RyaW5n
KiBpbnQ1MlRvU3RyaW5nKFZNJiB2bSwgaW50NjRfdCB2YWx1ZSwgaW50MzJfdCByYWRpeCkKICAg
ICBjaGFyKiBzdGFydE9mUmVzdWx0U3RyaW5nID0gZGVjaW1hbFBvaW50OwogICAgICpkZWNpbWFs
UG9pbnQgPSAnXDAnOwogCi0gICAgcmV0dXJuIGpzTm9udHJpdmlhbFN0cmluZyh2bSwgaW50NTJU
b1N0cmluZ1dpdGhSYWRpeChzdGFydE9mUmVzdWx0U3RyaW5nLCB2YWx1ZSwgcmFkaXgpKTsKKyAg
ICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCBTdHJpbmcgeyBpbnQ1MlRvU3RyaW5nV2l0
aFJhZGl4KHN0YXJ0T2ZSZXN1bHRTdHJpbmcsIHZhbHVlLCByYWRpeCkgfSk7CiB9CiAKIEpTU3Ry
aW5nKiBudW1iZXJUb1N0cmluZyhWTSYgdm0sIGRvdWJsZSBkb3VibGVWYWx1ZSwgaW50MzJfdCBy
YWRpeCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0
cnVjdG9yLmNwcAppbmRleCA1ODQwNmVhNzMxYzk0YWViNzQ5MTE5MmViZTZkMTRjOTNhMjM4Yzc3
Li4yNmFmNjE5ZGNhM2QyNmQ4ZWRjNTdiOWM5NTI2YmFlMDVjOWVmMjZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01
Niw3ICs1Niw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxM
WV9ERVNUUlVDVElCTEUoT2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2Jq
ZWN0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm9iamVjdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoT2JqZWN0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZv
LCAmb2JqZWN0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShP
YmplY3RDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBPYmplY3RDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIG9iamVjdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3BwCmluZGV4IDk1YmJhM2NiMzIwZWE1
YzcwZjk4MDQzZmUwZDI2NzAxNzczYTBlMmMuLjU5NWNiNDJhOWM4NzM5YTMxYjIzMWU2MTVjZTEx
ZWY3NDAyZGUwNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09i
amVjdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2Jq
ZWN0UHJvdG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihvYmplY3RQcm90b0Z1bmNUb0xvY2FsZVN0cmluZyk7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShPYmplY3RQcm90b3R5cGUpOwogCi1jb25zdCBD
bGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSlNOb25GaW5h
bE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmplY3RQcm90b3R5cGU6OnNfaW5m
byA9IHsgIk9iamVjdCJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUpIH07CiAKIE9iamVjdFBy
b3RvdHlwZTo6T2JqZWN0UHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHVjdHVyZSkKICAg
ICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvT3BlcmF0aW9ucy5oCmluZGV4IDA5MTllNzIxODZkMzlkNmQ1NmVkZDcxOGE5Y2Zi
OGEzMDRmNTkxNzEuLjJlODE4YmZmYTc5YzRhZjZmMGQzYzEyNTI4ZmFhNTY1NThlYzVmM2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcGVyYXRpb25zLmgKQEAgLTU3Myw3ICs1
NzMsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUganNBZGQoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBE
b3VibGVPcGVyYXRpb24sIHR5cGVuYW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9i
YWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwpAQCAtNzgwLDcgKzc4MCw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBzaGlmdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyCiAgICAgfQogI2Vu
ZGlmCiAKLSAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVmdCA/ICJJbnZhbGlkIG1peCBvZiBC
aWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBvcGVyYXRpb24uIiA6ICJJbnZhbGlk
IG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gc2lnbmVkIHJpZ2h0IHNoaWZ0IG9wZXJh
dGlvbi4iOworICAgIGF1dG8gZXJyb3JNZXNzYWdlID0gaXNMZWZ0ID8gIkludmFsaWQgbWl4IG9m
IEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBsZWZ0IHNoaWZ0IG9wZXJhdGlvbi4iX3MgOiAiSW52
YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGluIHNpZ25lZCByaWdodCBzaGlmdCBv
cGVyYXRpb24uIl9zOwogICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCBlcnJvck1lc3NhZ2UpOwogfQogCkBAIC04MTUsNyArODE1LDcgQEAgQUxXQVlTX0lOTElO
RSBKU1ZhbHVlIGpzVVJTaGlmdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGxlZnQsIEpTVmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgSW50MzJPcGVyYXRpb24sIHR5cGVu
YW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVlIGJpdHdpc2VCaW5hcnlPcChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyLCBJbnQzMk9w
ZXJhdGlvbiYmIGludDMyT3AsIEJpZ0ludE9wJiYgYmlnSW50T3AsIGNvbnN0IGNoYXIqIGVycm9y
TWVzc2FnZSkKK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3aXNlQmluYXJ5T3AoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgSW50MzJPcGVyYXRp
b24mJiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNz
YWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggZWFiZmE4NWFjYTM3ZWYwYWE3
YzdkZjg5NWVhZTQxNzM5ZDE1NDkwZS4uNzMyOWZlMjcwMTg2ODRhYjA1YzZhNDc3NmZhZDI5NmU1
ODI4OWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvZ3Jh
bUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb2dy
YW1FeGVjdXRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhl
Y3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUHJvZ3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1
dGFibGU6OnNfaW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1FeGVjdXRhYmxlKSB9
OwogCiBQcm9ncmFtRXhlY3V0YWJsZTo6UHJvZ3JhbUV4ZWN1dGFibGUoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNlKQogICAgIDogQmFzZShnbG9i
YWxPYmplY3QtPnZtKCkucHJvZ3JhbUV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9i
amVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZlZENvbnRleHRUeXBlOjpOb25lLCBmYWxz
ZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCmluZGV4IGFiNDE2Njk5
ZTk2Mjc3YjJlY2ExMjE4ODkxNjgwMTkxZmIzMzI2ZmEuLjYyMzE0YzdiZTJiYTkzYTg3ZmRiNjVh
ZGRiMTk1ZjU1YzRjZmJjMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBE
RUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKFByb3BlcnR5VGFibGUpOwogCi1j
b25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVydHlUYWJsZSIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlU
YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9w
ZXJ0eVRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFByb3BlcnR5VGFibGUpIH07CiAKIFByb3BlcnR5VGFibGUqIFByb3BlcnR5VGFibGU6OmNy
ZWF0ZShWTSYgdm0sIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjcyZjhm
N2FlZTUzMDkwNzE4NjM5NmMyMzE0NWNiYWJkZmJiMWYzYy4uODhjMTc3NGY4MDgwOWMxNzg1OGI1
ZGMwYzRkMjU0ZjkwMzY2NjdmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eUNvbnN0
cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlByb3h5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShQcm94eUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlByb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5Q29uc3RydWN0b3IpIH07CiAKIFByb3h5Q29uc3Ry
dWN0b3IqIFByb3h5Q29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogewpAQCAtNzYsNyArNzYsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04obWFrZVJl
dm9jYWJsZVByb3h5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogCiB2b2lk
IFByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKIHsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5
IiwgUHJvcGVydHlBZGRpdGlvbk1vZGU6OldpdGhvdXRTdHJ1Y3R1cmVUcmFuc2l0aW9uKTsKKyAg
ICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5Il9zLCBQcm9wZXJ0eUFkZGl0aW9u
TW9kZTo6V2l0aG91dFN0cnVjdHVyZVRyYW5zaXRpb24pOwogICAgIEpTQ19OQVRJVkVfRlVOQ1RJ
T05fV0lUSE9VVF9UUkFOU0lUSU9OKCJyZXZvY2FibGUiLCBtYWtlUmV2b2NhYmxlUHJveHksIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCAyKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3QuY3BwCmluZGV4
IDQ1ZjU4ZDk5ZDM1ZDVhMTNkZGI5OWUwYTY0Y2Y5MWZiNjZkOTM4ZGYuLjFiOWNmNzA2ZGZkN2Zl
NjdjNDU5NGM3ZDdkM2RlMGM5ZTJiMWU2OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Qcm94eU9iamVjdC5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eU9iamVjdCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eU9iamVjdDo6c19pbmZvID0geyAiUHJveHlPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFBy
b3h5T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5T2JqZWN0OjpzX2luZm8gPSB7ICJQ
cm94eU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShQcm94eU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04ocGVyZm9ybVByb3h5Q2FsbCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihwZXJmb3JtUHJveHlDb25zdHJ1Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUHJveHlSZXZva2UuY3BwCmluZGV4IGY1MGNmZTY4MWFjYjk4NGRkODY4MGNmODA2NzlhYjI2
NTFlOTc3ZjAuLjNlNjIxYWI3MzQzMjk3MjkyMTA2NDdiZjhjMTMxNTY1ODQwYWQyNzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5UmV2b2tlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eVJldm9rZS5jcHAKQEAgLTMzLDcg
KzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShQcm94eVJldm9rZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJldm9rZTo6
c19pbmZvID0geyAiUHJveHlSZXZva2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5UmV2b2tlKSB9OworY29uc3QgQ2xhc3NJbmZvIFBy
b3h5UmV2b2tlOjpzX2luZm8gPSB7ICJQcm94eVJldm9rZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJldm9rZSkgfTsKIAogUHJv
eHlSZXZva2UqIFByb3h5UmV2b2tlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgUHJveHlPYmplY3QqIHByb3h5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWZsZWN0T2JqZWN0LmNwcAppbmRleCAwODczN2RhYTc1NjIzN2Y2Y2EyZTA5ZGM4YzFh
ZDc1ZDFkYjhjNTE2Li4yMjdlMDEyMGVlMTk1YzNkOGE3OGFjNGUxYmFiYTQ1MDc2NDY1ZjEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNwcApA
QCAtNTAsNyArNTAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKFJlZmxlY3RPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gUmVm
bGVjdE9iamVjdDo6c19pbmZvID0geyAiUmVmbGVjdCIsICZCYXNlOjpzX2luZm8sICZyZWZsZWN0
T2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVmbGVjdE9iamVjdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSZWZsZWN0T2JqZWN0OjpzX2luZm8gPSB7ICJSZWZsZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVmbGVjdE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFJlZmxlY3RPYmplY3QpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVmbGVjdE9iamVj
dC5sdXQuaAogQGJlZ2luIHJlZmxlY3RPYmplY3RUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cC5jcHAKaW5kZXggNDQ5MDlkMTY5NGJjNTVjNzViMjc3Y2M1MTYwMDAwMjg0
YjRhZDMyZi4uYzhlZjYzZjg5NDdhNzJhNDc3OGFlMzUzZjBiNTk1MjBjODc0NDEyMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHAuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gUmVnRXhwOjpzX2luZm8gPSB7ICJS
ZWdFeHAiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJl
Z0V4cCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCJfcywg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07
CiAKICNpZiBSRUdFWFBfRlVOQ19URVNUX0RBVEFfR0VOCiBjb25zdCBjaGFyKiBjb25zdCBSZWdF
eHBGdW5jdGlvbmFsVGVzdENvbGxlY3Rvcjo6c19maWxlTmFtZSA9ICIvdG1wL1JlZ0V4cFRlc3Rz
RGF0YSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
YWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5jcHAK
aW5kZXggMGY1ZDUwZmVjMGI3NDI0NDRiZDY2ODUxNWQ2YWJhMjM4MmJlNDc3Mi4uNzQ3NzAxZjhh
MGQ0YWJiMzA2NDllZDZmYTJmYTUxMTdlZjRjNmYzZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWdFeHBDYWNo
ZTo6UmVnRXhwQ2FjaGUoVk0qIHZtKQogCiBSZWdFeHAqIFJlZ0V4cENhY2hlOjplbnN1cmVFbXB0
eVJlZ0V4cFNsb3coVk0mIHZtKQogewotICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVh
dGUodm0sICIiLCB7IH0pOworICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVhdGUodm0s
IGVtcHR5U3RyaW5nKCksIHsgfSk7CiAgICAgbV9lbXB0eVJlZ0V4cC5zZXQodm0sIHJlZ0V4cCk7
CiAgICAgcmV0dXJuIHJlZ0V4cDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRleCBmZDRjOTJiMzQxMWM1OWRlYmFhNmZi
ODBiZjkwMmMxOTNmOGM4OGNhLi4xNWYyN2QwYTRiYTI3OWExMmY2YjkzYWVjZDI0MmQ0NGYyMzE2
OTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
U0VUVEVSKHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5lKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZyZWdFeHBDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFJlZ0V4cENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcmVnRXhwQ29uc3RydWN0b3JUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5k
ZXggM2YzNDI2Y2UxZWZkMjQwNmU2MzU5MGUzNTljODI2OTI5ZmRmMzcyZS4uNzhmNWM4YTg1NWNl
OTQ0YmNlMTllNzg5MmJlY2QwNGY3OTQ1NTg2OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBK
U0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUmVnRXhwT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVjdDo6c19pbmZvID0geyAiUmVnRXhw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShS
ZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7
ICJSZWdFeHAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NF
VFRFUihyZWdFeHBPYmplY3RTZXRMYXN0SW5kZXhTdHJpY3QpOwogc3RhdGljIEpTQ19ERUNMQVJF
X0NVU1RPTV9TRVRURVIocmVnRXhwT2JqZWN0U2V0TGFzdEluZGV4Tm9uU3RyaWN0KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4
IDU4MjRhNDJjM2I2YTE1NzNmMDAxNjU1YTY5MmQ2NzlmZGZhMDA5ZjQuLjk3NTcwMTJiNzNkOTU4
ODIyMTlkMDllMjdmMzk2NmM3MjIxNTAyZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihyZWdFeHBQcm90b0dldHRlclVuaWNvZGUpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UpOwog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncyk7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVn
RXhwUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cFByb3RvdHlwZTo6c19pbmZv
ID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFJlZ0V4cFByb3RvdHlwZSkgfTsKIAogUmVnRXhwUHJvdG90eXBlOjpSZWdF
eHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTTm9uRmlu
YWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKQEAgLTEwNSw3ICsxMDUsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9GdW5jRXhlYywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbAogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUo
KTsKICAgICBhdXRvKiByZWdleHAgPSBqc0R5bmFtaWNDYXN0PFJlZ0V4cE9iamVjdCo+KHZtLCB0
aGlzVmFsdWUpOwogICAgIGlmIChVTkxJS0VMWSghcmVnZXhwKSkKLSAgICAgICAgcmV0dXJuIHRo
cm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkJ1aWx0aW4gUmVnRXhwIGV4ZWMg
Y2FuIG9ubHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVjdCIpOworICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQnVpbHRpbiBSZWdFeHAgZXhl
YyBjYW4gb25seSBiZSBjYWxsZWQgb24gYSBSZWdFeHAgb2JqZWN0Il9zKTsKICAgICBKU1N0cmlu
Zyogc3RyaW5nID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b1N0cmluZ09yTnVsbChnbG9iYWxP
YmplY3QpOwogICAgIEVYQ0VQVElPTl9BU1NFUlQoISFzY29wZS5leGNlcHRpb24oKSA9PSAhc3Ry
aW5nKTsKICAgICBpZiAoIXN0cmluZykKQEAgLTM0Myw3ICszNDMsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncywgKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsCiAgICAgYXV0byBmbGFncyA9IGZsYWdzU3RyaW5nKGdsb2JhbE9iamVjdCwgYXNP
YmplY3QodGhpc1ZhbHVlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBm
bGFncy5kYXRhKCkpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBT
dHJpbmcgeyBmbGFncy5kYXRhKCkgfSkpOwogfQogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
cmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXgg
MzkwMjk5MGM3YWVkOTdlNWUwYWFkYWFiNWJhYzRkZTY5MGFlYjdmYS4uM2U2MmU0YzE1MWFkOTQw
NjAyMWQwN2I3NDU0ZWQyOTc2NGVhYTQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNw
cApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFJlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAgU3RyaW5n
IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiUmVnRXhwIFN0cmlu
ZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBSZWdF
eHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKaW5kZXggNjA5MTE4MTA0Mzg3MDUxZDZiNmM1Y2Jh
NTJiOGQ3YWE5ZWNhZTk0My4uZDMxMzFlNmI5M2YxN2M5ZmMwZWYyMThkZmFhMDE2MDA0Njk4Zjhh
NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVu
dHMuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2NvcGVkQXJndW1lbnRzKTsKIAotY29uc3QgQ2xh
c3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVu
dHMpIH07Citjb25zdCBDbGFzc0luZm8gU2NvcGVkQXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1
bWVudHMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU2NvcGVkQXJndW1lbnRzKSB9OwogCiBTY29wZWRBcmd1bWVudHM6OlNjb3BlZEFyZ3Vt
ZW50cyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBXcml0ZUJhcnJpZXI8VW5rbm93bj4q
IHN0b3JhZ2UsIHVuc2lnbmVkIHRvdGFsTGVuZ3RoKQogICAgIDogR2VuZXJpY0FyZ3VtZW50cyh2
bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCmluZGV4IDE0ZmMyZmI2MDRiMzRlZjg5MDUzMzlhNjUx
YzRmZTVlZjA1ZjEwZDkuLmFhMmRmNGNkMTgwYjNiMjVkY2IwN2M4Y2JkYzhmZjdkYmMyOTAwYTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50
c1RhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1
bWVudHNUYWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHNUYWJsZTo6c19pbmZvID0geyAiU2NvcGVkQXJn
dW1lbnRzVGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFNjb3BlZEFyZ3VtZW50c1RhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3Vt
ZW50c1RhYmxlOjpzX2luZm8gPSB7ICJTY29wZWRBcmd1bWVudHNUYWJsZSJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVudHNUYWJs
ZSkgfTsKIAogU2NvcGVkQXJndW1lbnRzVGFibGU6OlNjb3BlZEFyZ3VtZW50c1RhYmxlKFZNJiB2
bSkKICAgICA6IEJhc2Uodm0sIHZtLnNjb3BlZEFyZ3VtZW50c1RhYmxlU3RydWN0dXJlLmdldCgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0
YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxl
LmNwcAppbmRleCA0MjFkNzAwZTQ2YWZiODA4ZTdkNWE1NzBkY2FmNWY1YzdiYTliNDFmLi5jNmE5
ZWFiNjcxNGNlNDJjNDEwODdiZGIwOGZjOTIxNzRhYzhlY2JmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcApAQCAtNDQsNyArNDQs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFi
bGU6OnNfaW5mbyA9IHsgIlNjcmlwdEV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY3JpcHRFeGVjdXRhYmxl
KSB9OworY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlNjcmlw
dEV4ZWN1dGFibGUiX3MsICZFeGVjdXRhYmxlQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjcmlwdEV4ZWN1dGFibGUpIH07CiAKIFNjcmlwdEV4ZWN1
dGFibGU6OlNjcmlwdEV4ZWN1dGFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFZNJiB2bSwgY29u
c3QgU291cmNlQ29kZSYgc291cmNlLCBMZXhpY2FsU2NvcGVGZWF0dXJlcyBsZXhpY2FsU2NvcGVG
ZWF0dXJlcywgRGVyaXZlZENvbnRleHRUeXBlIGRlcml2ZWRDb250ZXh0VHlwZSwgYm9vbCBpc0lu
QXJyb3dGdW5jdGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFs
Q29udGV4dFR5cGUgZXZhbENvbnRleHRUeXBlLCBJbnRyaW5zaWMgaW50cmluc2ljKQogICAgIDog
RXhlY3V0YWJsZUJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAppbmRleCBkNTQ0MzNiZmVlNGZkZGRhNWY0NzA2
NzdhZjQ1N2Y5YmY0Zjc0ZTQ1Li4zMWYzMDdlNjkwNzEyMjBhNzYyYjU5YjIyN2JkYzQwZGViMDBi
MWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTZXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU2V0UHJvdG90eXBlKiBzZXRQcm90b3R5cGUsIEdldHRlclNldHRlciogc3BlY2ll
c1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzZmFiNmUzODY1NTNmMzFkZDk5ZDQ0ZDMzMWFl
ZTZhYzY5NmVjMjM0Li45MDYxNzFiY2ZmNjMwNmFhYTc1YTMwYzgxYjE0ODE1MTdhY2Q4MGQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JQ
cm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvclByb3RvdHlwZSkgfTsK
IAogdm9pZCBTZXRJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldFByb3RvdHlwZS5jcHAKaW5kZXggYTZlZmMyZmJiMzE0NDZlODJhNDYzNDIxMmYy
N2I2ZDBkNGQ1OTJjZS4uNTRjMjJkYzE3NjUyN2I0YmFkZmY1NDRkMGRkNjNiZTdmY2JjMjVmOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRQcm90b3R5cGUuY3BwCkBA
IC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2V0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAmc2V0UHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFNldFByb3RvdHlwZTo6c19pbmZvID0geyAiU2V0Il9zLCAmQmFzZTo6c19p
bmZvLCAmc2V0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFNldEl0ZXJhdG9yUHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gc2V0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYzg4NmJhYzA2
M2I0MmM2NzJmMmZlYzk1MTgxZjEwMTdiNjZhZjFhZi4uNDU2NDg0NDc0NzkxNGQ2MGY4YzNlNTU2
Nzc2Y2IzNjM2ZTZkOWJiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbUNvbnN0cnVjdG9yKSB9OwogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcik7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxt
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtT2Jq
ZWN0LmNwcAppbmRleCAzMzYxNDZjNTJlNGFiODNiYTExZmEyZmI3ODNlMDhjOGQ5MjRmNGE0Li5l
MGZkNGVmNmM5MzliNzJkM2ZmZjAwYjk1MGU4MTdlNTBlNWYyMTNmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1PYmplY3QuY3BwCkBAIC0zOSw3
ICszOSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShTaGFkb3dS
ZWFsbU9iamVjdCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93
UmVhbG1PYmplY3Q6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbU9iamVjdCkgfTsK
K2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbU9iamVjdDo6c19pbmZvID0geyAiU2hhZG93UmVh
bG0iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU2hhZG93UmVhbG1PYmplY3QpIH07CiAKIFNoYWRvd1JlYWxtT2JqZWN0OjpTaGFkb3dSZWFs
bU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwCmluZGV4IDhlODg2NjYzOTgzYWYzYTU3YzYzMTFlN2EwODhmYzY1
ZTdkYTNhNTIuLjc0Y2NhMDY1NzI0YmI0YTZhYjI5OWJhMTcxNTE5M2QwMTNlZDczMDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbVByb3Rv
dHlwZS5jcHAKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1j
b25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1Jl
YWxtIiwgJkJhc2U6OnNfaW5mbywgJnNoYWRvd1JlYWxtUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIl9zLCAm
QmFzZTo6c19pbmZvLCAmc2hhZG93UmVhbG1Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbVByb3RvdHlwZSkgfTsKIAogU2hhZG93UmVhbG1Qcm90
b3R5cGU6OlNoYWRvd1JlYWxtUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IDE2
MTU3Y2YwN2UwZWE2YWMwZjUwODlhNzM1YWFlMzNiZmI2ZDEwZTUuLjhkZDZiZDMzMmZiZDIzMGQ5
MGVhMDU0OTc0NzA3MDliY2ExODRkMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6
c19pbmZvID0geyAiU3BhcnNlQXJyYXlWYWx1ZU1hcCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJyYXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2luZm8gPSB7ICJTcGFyc2VBcnJheVZhbHVl
TWFwIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNw
YXJzZUFycmF5VmFsdWVNYXApIH07CiAKIFNwYXJzZUFycmF5VmFsdWVNYXA6OlNwYXJzZUFycmF5
VmFsdWVNYXAoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0uc3BhcnNlQXJyYXlWYWx1ZU1hcFN0
cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcAppbmRleCA0NGVkZDE1NmFmMDczYTIyMjVjY2U2NTBk
ZTU5ZmJmZjYxYjRjZTdkLi5lZWUzMzU3MDJiMjE1ZjFhMzZhZDQ4ZTEyOTk4MGRkNGZjYTMyYmQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RFdmFsQWN0
aXZhdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZh
bEFjdGl2YXRpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaWN0RXZhbEFjdGl2YXRpb24p
OwogCi1jb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFjdGl2YXRpb246OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RyaWN0RXZhbEFjdGl2YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFj
dGl2YXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RFdmFsQWN0aXZhdGlvbikgfTsKIAog
U3RyaWN0RXZhbEFjdGl2YXRpb246OlN0cmljdEV2YWxBY3RpdmF0aW9uKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29wZSkKICAgICA6IEJhc2Uodm0sIHN0
cnVjdHVyZSwgY3VycmVudFNjb3BlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IDkyZGM5NDY5ZDJhODRjNTQ5MjIwZTIx
ZjVmMTZmNzdhMDA1NWZkODUuLjkyZmUzOTJkNjhjNGYyYTI4MGNmNDkyYTJjYTZjODYyODZkOGVj
YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25z
dHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oc3RyaW5nRnJvbUNvZGVQb2ludCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVy
bmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
U3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAmc3RyaW5nQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTdHJpbmdDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTdHJpbmdD
b25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN0cmluZ0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90
eXBlLmNwcAppbmRleCA2MTQ0YjMxNGRlMGI0MjZhNWMzNmNiYjRlNTYzZDRkM2I4YTNhM2UxLi5h
NmY3MzFmZjZiMTE3MjMwMzVkZTc1NDRkZjQzZDNlOTQxOTMyYWM5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Ry
aW5nSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKaW5kZXggNjFiZTMxOTIxZDA4MjUz
OGVlNTk3N2ZiYzY5OTY1MGYxMDRmNjg0Yi4uNjA1Y2M0ODYyNWUwNDViNmJlYmRhYjc2ZGU2N2Ew
Njk3MDgyYzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3Ry
aW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdP
YmplY3QuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaW5nT2JqZWN0KTsKIAotY29uc3QgQ2xh
c3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAiU3RyaW5nIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2Jq
ZWN0KSB9OwogCiBTdHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKaW5kZXggZjNiMzgzZGNiYTQy
NTNhNGFjOTI1NTg0ZDE5YmM4MDc2Yjk0YTU0YS4uMjRmMWUxNjUzOTMyOGQ4ZjlhODkyYmRkNjA5
NTRmZjUxNDBmYWZjYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdQcm90b3R5cGUuY3BwCkBAIC04NSw3ICs4NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY0l0ZXJhdG9yKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyIs
ICZTdHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0cmluZ1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBT
dHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyJfcywgJlN0cmluZ09iamVjdDo6c19p
bmZvLCAmc3RyaW5nUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RyaW5nUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFN0cmluZ0NvbnN0cnVjdG9yLmx1
dC5oCiBAYmVnaW4gc3RyaW5nUHJvdG90eXBlVGFibGUKQEAgLTE2MjEsNyArMTYyMSw3IEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSB0b0xvY2FsZUNhc2UoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgQ2FsbEZyYW1lKiBjYWxsCiAgICAgYXV0byBjb252ZXJ0Q2FzZSA9IG1vZGUgPT0gQ2Fz
ZUNvbnZlcnNpb25Nb2RlOjpMb3dlciA/IHVfc3RyVG9Mb3dlciA6IHVfc3RyVG9VcHBlcjsKICAg
ICBhdXRvIHN0YXR1cyA9IGNhbGxCdWZmZXJQcm9kdWNpbmdGdW5jdGlvbihjb252ZXJ0Q2FzZSwg
YnVmZmVyLCBTdHJpbmdWaWV3IHsgcyB9LnVwY29udmVydGVkQ2hhcmFjdGVycygpLmdldCgpLCBz
Lmxlbmd0aCgpLCBsb2NhbGUudXRmOCgpLmRhdGEoKSk7CiAgICAgaWYgKFVfRkFJTFVSRShzdGF0
dXMpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCB1X2Vycm9yTmFtZShzdGF0dXMpKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgU3RyaW5nIHsgdV9lcnJvck5hbWUoc3RhdHVzKSB9KTsKIAog
ICAgIC8vIDE4LiBSZXR1cm4gTC4KICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFs
dWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nKGJ1ZmZlcikpKSk7CkBAIC0xNzE4LDcgKzE3
MTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jU3RhcnRzV2l0
aCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVz
c2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhwcmVz
c2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUgYSBS
ZWdFeHAiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUg
YSBSZWdFeHAiX3MpOwogCiAgICAgU3RyaW5nIHNlYXJjaFN0cmluZyA9IGEwLnRvV1RGU3RyaW5n
KGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CkBAIC0xNzUyLDcgKzE3NTIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
c3RyaW5nUHJvdG9GdW5jRW5kc1dpdGgsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAog
ICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3Qs
IGEwKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUu
ZW5kc1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBl
LmVuZHNXaXRoIGNhbm5vdCBiZSBhIFJlZ0V4cCJfcyk7CiAKICAgICBTdHJpbmcgc2VhcmNoU3Ry
aW5nID0gYTAudG9XVEZTdHJpbmcoZ2xvYmFsT2JqZWN0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKQEAgLTE4MDIsNyArMTgwMiw3IEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihzdHJpbmdQcm90b0Z1bmNJbmNsdWRlcywgKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgYm9vbCBpc1JlZ3VsYXJFeHByZXNzaW9uID0gaXNSZWdF
eHAodm0sIGdsb2JhbE9iamVjdCwgYTApOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIGlmIChpc1JlZ3VsYXJFeHByZXNzaW9uKQotICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQXJndW1lbnQg
dG8gU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlcyBjYW5ub3QgYmUgYSBSZWdFeHAiKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50
IHRvIFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90IGJlIGEgUmVnRXhwIl9zKTsKIAog
ICAgIFN0cmluZyBzZWFyY2hTdHJpbmcgPSBhMC50b1dURlN0cmluZyhnbG9iYWxPYmplY3QpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAKaW5kZXggYjYwZTNjYjBlM2Jm
NTYzODczMmY4NWMwZGNiMDdjMzk2ZDNmZDY4Yi4uNzI1ODk3Y2E0ODI4YTUwNDhiNzgwMDA1ZjEy
NmM0ZmM0YzU5NzIxZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1
cmUuY3BwCkBAIC0yMzQsNyArMjM0LDcgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSwgY28KICAgICB2
YWxpZGF0ZUZsYWdzKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZTo6c19pbmZvID0g
eyAiU3RydWN0dXJlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0cnVjdHVyZSkgfTsKIAogU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBDcmVh
dGluZ0Vhcmx5Q2VsbFRhZykKICAgICA6IEpTQ2VsbChDcmVhdGluZ0Vhcmx5Q2VsbCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAppbmRleCBj
YTYwYTJmYmY5YjBlYzJmNTZkNTI5YzZlMDBmMmZlMjM0YjMyZGNhLi5iYmIwYjMxYTA4OTM2NTUx
OGRmOGYwZjhiOThjMjExZjhmOTA0ZGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZUNoYWluOjpzX2luZm8gPSB7
ICJTdHJ1Y3R1cmVDaGFpbiIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RydWN0dXJlQ2hhaW4pIH07Citjb25zdCBDbGFzc0luZm8gU3RydWN0dXJlQ2hh
aW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVD
aGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgU3RydWN0
dXJlSUQqIHZlY3RvcikKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAppbmRleCBjMjJh
YWZiODYzYmVlN2MyNTEzZWEwZWY2ZDZjYTNkZDhmZDJjM2Y0Li43MzYzN2Q4NGNkY2Q2MjY4YTc4
ZGFjM2NmMzNjMDI0MjlhMTNlZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJlUmFyZURhdGE6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZVJhcmVEYXRhIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVSYXJlRGF0YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1
Y3R1cmVSYXJlRGF0YTo6c19pbmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiX3MsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlUmFyZURhdGEp
IH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5jcHAKaW5kZXggYzNkYjE5NmZiOTM0
NmUwNmUwYzVjMWYwZmU0OWI0MWJmMGEzZjdlYi4uMDc1ODk0MTVkOTExOGRiNjVmMjVmZGUwZjU3
MmVhYTEyODZiYzk1ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2wuY3Bw
CkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
U3ltYm9sOjpzX2luZm8gPSB7ICJzeW1ib2wiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2w6OnNf
aW5mbyA9IHsgInN5bWJvbCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTeW1ib2wpIH07CiAKIFN5bWJvbDo6U3ltYm9sKFZNJiB2bSkKICAgICA6IEJh
c2Uodm0sIHZtLnN5bWJvbFN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcAppbmRleCBjNWQwMWI0NDM1YmE3
ZTFiMTk1NDcwMjkwOTk0YmYzODYzOTRiOWM4Li4wNmJmOWQ0YTY1YjVlNTRhZTkzYTVhZGM2YWVl
YWFjMTJhMjFkZmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
eW1ib2xDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3ltYm9sQ29uc3RydWN0
b3IpOwogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnN5bWJvbENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmc3ltYm9sQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTeW1ib2xDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTeW1ib2xDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIHN5bWJvbENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwCmluZGV4IDc0NzY5OGRhMThjMTAwNzMy
NzJlM2EzZjM0N2NhODk0NmI2OWEyMDUuLmM4NTdiYzQxNjcxM2Q3ODE0NmI3OGViMTI5NmM4NGRl
ZjBjMmUyZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJv
bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sT2Jq
ZWN0LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN5bWJvbE9iamVjdCk7CiAKLWNvbnN0IENsYXNz
SW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sT2JqZWN0KSB9OworY29u
c3QgQ2xhc3NJbmZvIFN5bWJvbE9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbE9iamVj
dCkgfTsKIAogU3ltYm9sT2JqZWN0OjpTeW1ib2xPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCmluZGV4IGJjZjE2MzUxNjljMDI0
NzcyNGM3MTAzOTE1NTMxYzEyMGQ4OWMzODguLjM1Y2YwMjc0NzY3M2IxYjQwYTIwNmIwZjIzY2M3
YWVmZGRmYmU1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihzeW1ib2xQcm90b0Z1bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBTeW1ib2xQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZC
YXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJTeW1ib2wiX3MsICZCYXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgU3ltYm9sUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc3ltYm9sUHJv
dG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxl
LmNwcAppbmRleCAxYzI3YWQ0OTZjY2Q3Mzc2MTBmYWEwMmExOTAzMDViNmQ1MTRkZjA2Li5iOGJm
YzcyZjI3ODBiMDMwMjY0NDYzNGUyNTkyZDhhMjc0MjZiNDMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sVGFibGU6OnNfaW5mbyA9IHsg
IlN5bWJvbFRhYmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTeW1ib2xUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZv
ID0geyAiU3ltYm9sVGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIERFRklORV9BTExPQ0FUT1JfV0lUSF9IRUFQ
X0lERU5USUZJRVIoU3ltYm9sVGFibGVFbnRyeUZhdEVudHJ5KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAppbmRleCAwNmRmMjU1
Yjk5ODdiZWZiM2Y0MWU1OTExNTZhYTUyYTFmY2JiZGQyLi4zYTUwM2M4NWQ4NzQyMjkxZjQ3YmRk
ZGM5ZmQzYWZkMWM1YzBiZTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2FsZW5kYXI6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFy
OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKIAogbmFtZXNwYWNlIFRl
bXBvcmFsQ2FsZW5kYXJJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9
IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDk3OTkzMTU2NDZkODc0NzUw
Y2IwNGJmNWVmZDM1ODM3NzcxYWE3MS4uYmU1ZDJjOGY4NTk5ZmQ1OWViNDBkYjFlNTNkYWQzZDI0
YjVkODE2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rv
ckZ1bmNGcm9tKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVu
Y3Rpb246OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmdGVtcG9yYWxDYWxlbmRhckNv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxl
bmRhckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsQ2FsZW5kYXJDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCmluZGV4IDhmYjNhNTM0Y2RlNDhhMzM0M2Y4MTI5NzY0ZjUyZWJj
OGM3YWI5MzUuLjMzNzA0YjBjOWY5M2I3YzMzNTQwMGMyZDZkODM4Njc5MzkwZGEyYjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCkBAIC00Niw3ICs0Niw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9D
VVNUT01fR0VUVEVSKHRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVHZXR0ZXJJZCk7CiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxD
YWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRh
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiX3MsICZCYXNlOjpzX2lu
Zm8sICZ0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBU
ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxDYWxlbmRhclBy
b3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbER1cmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsRHVyYXRpb24uY3BwCmluZGV4IDc3ZDk5YWEzZDBjN2ZkODM5Mzk0MTY2MmQxMjVhMWJiN2Jk
MTlhMGMuLmQ3YmVhNDA2MGNjYzVlNzlkNjc1ODUzZjQwMTA5MWQ4MGMxNDllZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCkBA
IC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBzdGF0aWMgY29uc3RleHByIGRvdWJs
ZSBuYW5vc2Vjb25kc1BlckRheSA9IDI0LjAgKiA2MCAqIDYwICogMTAwMCAqIDEwMDAgKiAxMDAw
OwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbjo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbER1cmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb246OnNf
aW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uKSB9OwogCiBUZW1wb3JhbER1cmF0aW9u
KiBUZW1wb3JhbER1cmF0aW9uOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SVNPODYwMTo6RHVyYXRpb24mJiBkdXJhdGlvbikKIHsKQEAgLTUxNSw3ICs1MTUsNyBAQCBkb3Vi
bGUgVGVtcG9yYWxEdXJhdGlvbjo6dG90YWwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSBvcHRpb25zVmFsdQogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gaW50bEdldE9wdGlv
bnNPYmplY3QoZ2xvYmFsT2JqZWN0LCBvcHRpb25zVmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIDApOwogCi0gICAgU3RyaW5nIHVuaXRTdHJpbmcgPSBpbnRsU3RyaW5nT3B0
aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dW5pdCwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgdW5pdFN0cmluZyA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT51bml0LCB7IH0sIEFT
Q0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgMCk7CiAKICAgICBhdXRvIHVuaXRUeXBlID0gdGVtcG9yYWxVbml0
VHlwZSh1bml0U3RyaW5nKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkM2NlZjEw
NTY2M2I3MzgzZmM5MzhhOGQ0NjhiOTc5NmE1OGM2MGMuLjYxOWJmMjdiOGFkM2U0OWQ3YzVkNTE1
ZTAxMmQwZDliYzg1OTYxMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyAr
NDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbER1cmF0aW9u
Q29uc3RydWN0b3JGdW5jQ29tcGFyZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1
Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiB0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcAppbmRleCAwY2I0NDJlMjkwYmY4ZmExYTJkNmRlODhmOTYxOWQ3NmIyYmFmM2M0Li4y
ODJmODhhYWQxNTgyMDY2N2RjMjY0NzkzZWQ2NDhjODVmZTcwM2IxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcApAQCAtNjIsNyArNjIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRF
Uih0ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlR2V0dGVyQmxhbmspOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlbXBvcmFsLkR1cmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZW1wb3JhbC5EdXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlv
blByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gZHVyYXRpb25Qcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5jcHAKaW5kZXggNmY2OGNmMGZmM2Nk
MmM4NTcxMzc0YWJiM2UwMmM3MTNjMjA1ZmY1MC4uNWE4NTE5ZDNjYjdhMmE3MDg0NzNmNDc5ZTI3
ZDAwYzFlMzg1ZTM3YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxJbnN0YW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbEluc3RhbnQuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50OjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsSW5zdGFudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnQ6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnQpIH07CiAKIFN0cnVjdHVyZSogVGVtcG9yYWxJbnN0
YW50OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcAppbmRleCA4NjFk
ODBjMTg4N2UyNjUwZjBjZDc3MmE3Mzc1Zjk5Y2Q2NGFlNTNmLi4zZDJiMTBmOTY5YWJhNDRmNjRh
Y2MxYzRhZWRiMTQ1OGM1MjEyZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IuY3BwCkBAIC00OCw3
ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsSW5zdGFu
dENvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3Ip
IH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiB0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlLmNwcApp
bmRleCBhNDI2YmUwNmZmZDM5NDEwNjNjMWZmMmI1MTg3Yjk5YzYxNTY1YzMzLi43MzAxYmYzMTQ3
NTNkODEwOWMxYmI1YWVmYmI2ZWE2MDdkZWM3YmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHAKQEAg
LTU1LDcgKzU1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxJ
bnN0YW50UHJvdG90eXBlR2V0dGVyRXBvY2hOYW5vc2Vjb25kcykKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiLCAmQmFzZTo6c19pbmZvLCAmaW5zdGFudFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiX3MsICZCYXNlOjpzX2luZm8sICZpbnN0YW50UHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50UHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5sdXQuaAogQGJl
Z2luIGluc3RhbnRQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwCmluZGV4IDVkYWU5OGNjNjQwZmU5MmM2OGQyYzE1MDEwZjU3NGYy
Yjc2OTRjYjkuLjNlNWY1NGQ2OWRkMjA1MjY3ZDNkZGM5ZjkzMGVmOGU1YjM1ZDJhNWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5vdy5jcHAKQEAgLTQ4LDcg
KzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVt
cG9yYWxOb3c6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLk5vdyIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9
OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2luZm8gPSB7ICJUZW1wb3JhbC5Ob3ci
X3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9OwogCiBUZW1wb3JhbE5vdzo6VGVtcG9yYWxOb3coVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcAppbmRl
eCAzY2QyZmEzNzMzYmE3MDBmYjZhZTcyZGIwOTkyMDRlMTkzODdiYTIwLi42NmI4Yjk2NWM5ZWYy
OWNlMDU1ZmUzZjkxOTVmZTRjZDJhZDMwMjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCkBAIC0xMTYsNyArMTE2LDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNf
aW5mbyA9IHsgIlRlbXBvcmFsIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsT2JqZWN0VGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlbXBvcmFsIl9zLCAmQmFzZTo6
c19pbmZvLCAmdGVtcG9yYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbE9iamVjdCkgfTsKIAogVGVtcG9yYWxPYmplY3Q6OlRlbXBvcmFsT2JqZWN0KFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBA
IC0yMzAsNyArMjMwLDcgQEAgc3RkOjpvcHRpb25hbDxUZW1wb3JhbFVuaXQ+IHRlbXBvcmFsTGFy
Z2VzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RyaW5nIGxhcmdlc3RVbml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxhcmdlc3RVbml0LCB7IH0sIG51bGxw
dHIsIG51bGxwdHIpOworICAgIFN0cmluZyBsYXJnZXN0VW5pdCA9IGludGxTdHJpbmdPcHRpb24o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYXJnZXN0VW5pdCwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVsbG9wdCk7CiAKICAgICBpZiAoIWxhcmdlc3RV
bml0KQpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0ZDo6b3B0aW9uYWw8VGVtcG9yYWxVbml0PiB0ZW1w
b3JhbFNtYWxsZXN0VW5pdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKIAotICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3RyaW5nT3B0aW9u
KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxlc3RVbml0LCB7
IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3Ry
aW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxl
c3RVbml0LCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgc3RkOjpudWxsb3B0KTsKIAogICAgIGlm
ICghc21hbGxlc3RVbml0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpbkRhdGUuY3BwCmluZGV4IGRhMmJiNzQ4MDcwN2VhNDU4OTdkZmJkN2I3ZWEy
NjE4ODZjNzdmMGYuLmJhMmNkYjgyOGM0NGU4NTE1OTZhZTM0NDkzZjYzN2I4ZDMwZmZjMDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0
ZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRlbXBvcmFsUGxhaW5EYXRlSW50ZXJu
YWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxh
aW5EYXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7
ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGUpIH07CiAKIFRlbXBvcmFsUGxhaW5EYXRlKiBUZW1w
b3JhbFBsYWluRGF0ZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIElTTzg2
MDE6OlBsYWluRGF0ZSYmIHBsYWluRGF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzllNjBmMTU3MWNhMTk2YTlmNzA5ZmE3NmYwZmFlOTNiNGJmMGQzZS4uNTRjNWM5NmZh
NWI2OWIyYjgwOTdlZjFjMjkyYWI4MWRlMjk2NGJlMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
dGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRh
dGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcAppbmRleCBjZDg4MzBiYmEyOTRlZTcz
ZWQ4ODM0YjZlYjliODY0N2I2OTNhMDI4Li5iZmVhOTA3NDlmZmY4ZmFjN2MxZWU5MDM3NjZjMzgx
NzY0NzNmMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBl
R2V0dGVyRGF5KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuUGxhaW5EYXRlIiwgJkJh
c2U6OnNfaW5mbywgJnBsYWluRGF0ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5QbGFpbkRh
dGUiX3MsICZCYXNlOjpzX2luZm8sICZwbGFpbkRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBsYWlu
RGF0ZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKaW5kZXggZjMzZjZhZmZiOTA4MGY2MDA4OGRjMTA0YTk0
NTRmMjIzYmViOTZlNS4uYWE1YTU4YzA2NzZmNDAxNDEwMTZmNDJmNTQ5NDg4YzcyMzEzOTVmZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5U
aW1lLmNwcApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2UgVGVtcG9yYWxQbGFpblRpbWVJbnRl
cm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwogfQogCi1jb25z
dCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQ
bGFpblRpbWUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZSkgfTsKIAogVGVtcG9yYWxQbGFpblRpbWUqIFRl
bXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSVNP
ODYwMTo6UGxhaW5UaW1lJiYgcGxhaW5UaW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNw
cAppbmRleCBkNjdjZmM5YTUwYTZmYmZmOTgyZjI4MDY2Y2VhNzcyYTE4YzEzMWE4Li43ZjI4YTgx
MWY5MDI4NDkwNDdlYzk5M2MwNTI0OGZjZjU2NjAyYWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVj
dG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
Tih0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWlu
VGltZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwCmluZGV4IGU0OTY3ZDRmOTQ5NThk
M2NjM2EyYjc1N2M3MDNjMWI4NDg0ZGQ1NDguLmZjODhmNzI4NDFhNmVlOTk5MTQ4NjE0NWNlYzVk
YzI4NDUyODA5YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZS5jcHAKQEAgLTU5LDcgKzU5LDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxQbGFpblRpbWVQcm90b3R5
cGVHZXR0ZXJDYWxlbmRhcik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlBsYWluVGlt
ZSIsICZCYXNlOjpzX2luZm8sICZwbGFpblRpbWVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwu
UGxhaW5UaW1lIl9zLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5UaW1lUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUubHV0LmgKIEBiZWdp
biBwbGFpblRpbWVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcAppbmRleCAxMDFhZDc2ZTc2NjY0MDc2Njk1OTA2
NWFhNWM3NGRlNjk2YWM4MWU0Li4wYzY1YzM4YjE5NGVkNjhiODk1ZjBhNTFjNDczZmMxYTBmZjZi
M2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1l
Wm9uZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lOjpzX2luZm8gPSB7ICJP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVtcG9yYWxUaW1lWm9uZSkgfTsKIAogVGVtcG9yYWxUaW1lWm9uZSogVGVtcG9yYWxU
aW1lWm9uZTo6Y3JlYXRlRnJvbUlEKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFRpbWVa
b25lSUQgaWRlbnRpZmllcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkNzUz
YzAzMWUxY2RiN2RhMjAzMmNlODgwODBhMzM5ZWM0YjQwYWYuLjQzYzdhMDYzZGQyZTM5MTE4Zjg2
ZjI0YWVlYTk5MzEyMGRkZWUyZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbFRpbWVa
b25lQ29uc3RydWN0b3JGdW5jRnJvbSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRlbXBv
cmFsVGltZVpvbmVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3Jh
bFRpbWVab25lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcAppbmRleCA2ZjU3NTU3OWUzZWFmYjYxMzkz
ZjE1MWM2YmZiYjRhM2NhY2Y3YTgxLi5iM2I0MzkzN2NiZTdjNmQzYzU0OWE1YTYzMTk5MDllYjAw
MDhhMGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bFRpbWVab25lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFRpbWVab25lUHJvdG90eXBlR2V0dGVy
SWQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpv
bmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIiwgJkJhc2U6OnNfaW5m
bywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsVGltZVpvbmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIl9z
LCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZVRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUpIH07CiAKIC8q
IFNvdXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHRlbXBv
cmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1R5cGVQcm9maWxlci5jcHAKaW5kZXggN2UxYmNlMjliYWZlZmZiY2E2NGZjNTQ1ZWE0YWI4
OGM4ZWUxZmQ2Mi4uNWZhYjFiODMwNTNjMzgyZWJhMDgyYTk0YWQ4ZTYzZDY5ZjU3NDU5NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwCkBAIC01
Myw5ICs1Myw5IEBAIHZvaWQgVHlwZVByb2ZpbGVyOjpsb2dUeXBlc0ZvclR5cGVMb2NhdGlvbihU
eXBlTG9jYXRpb24qIGxvY2F0aW9uLCBWTSYgdm0pCiAKICAgICBkYXRhTG9nKCJcdFx0IiwgbG9j
YXRpb24tPm1fZ2xvYmFsVmFyaWFibGVJRCA9PSBUeXBlUHJvZmlsZXJSZXR1cm5TdGF0ZW1lbnQg
PyAiW1JldHVybiBTdGF0ZW1lbnRdIiA6ICJbTm9ybWFsIFN0YXRlbWVudF0iLCAiXG4iKTsKIAot
ICAgIGRhdGFMb2coIlx0XHQjTG9jYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1faW5zdHJ1Y3Rpb25U
eXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIsICJcblx0XHQiKSwgIlxuIik7CisgICAg
ZGF0YUxvZygiXHRcdCNMb2NhbCNcblx0XHQiLCBsb2NhdGlvbi0+bV9pbnN0cnVjdGlvblR5cGVT
ZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIl9zLCAiXG5cdFx0Il9zKSwgIlxuIik7CiAgICAg
aWYgKGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQpCi0gICAgICAgIGRhdGFMb2coIlx0XHQjR2xv
YmFsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQtPmR1bXBUeXBlcygpLnJlcGxh
Y2UoIlxuIiwgIlxuXHRcdCIpLCAiXG4iKTsKKyAgICAgICAgZGF0YUxvZygiXHRcdCNHbG9iYWwj
XG5cdFx0IiwgbG9jYXRpb24tPm1fZ2xvYmFsVHlwZVNldC0+ZHVtcFR5cGVzKCkucmVwbGFjZSgi
XG4iX3MsICJcblx0XHQiX3MpLCAiXG4iKTsKIH0KIAogdm9pZCBUeXBlUHJvZmlsZXI6Omluc2Vy
dE5ld0xvY2F0aW9uKFR5cGVMb2NhdGlvbiogbG9jYXRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1R5cGVTZXQuY3BwCmluZGV4IGQ4OGJhMjhjM2YzMDkyNzJlM2RhMmVjNDI2Yjkz
OWVkMWU5OTUxY2YuLjczM2Y5ODEyZjE4ZThmNjE4ZTRlYTkwN2Y5MWNiMjUzZjdjMDhlY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCkBAIC0zNDgsNyArMzQ4
LDcgQEAgU3RyaW5nIFN0cnVjdHVyZVNoYXBlOjpwcm9wZXJ0eUhhc2goKQogICAgIGJ1aWxkZXIu
YXBwZW5kKCc6Jyk7CiAgICAgZm9yIChhdXRvJiBrZXkgOiBtX2ZpZWxkcykgewogICAgICAgICBT
dHJpbmcgcHJvcGVydHkgPSBrZXkuZ2V0KCk7Ci0gICAgICAgIHByb3BlcnR5LnJlcGxhY2UoIjoi
LCAiXFw6Iik7IC8vIEVuc3VyZSB0aGF0IGhhc2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsi
Zm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdyZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3Ig
YW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFjdGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KKyAg
ICAgICAgcHJvcGVydHkucmVwbGFjZSgiOiJfcywgIlxcOiJfcyk7IC8vIEVuc3VyZSB0aGF0IGhh
c2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsiZm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdy
ZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3IgYW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFj
dGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KICAgICAgICAgYnVpbGRlci5hcHBlbmQocHJvcGVy
dHkpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ViMGZlNDU1NDE3OWE1MTRiMzMyOGYzZDJkNzYy
NDRkYmE0ZWU0Zi4uMTc3ZDFlODE3Mzc4YTFjMTgyNjI1YjkwYTljODA0NzM4ZDhmMzNmNyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gV2Vha01hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcENvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2Vha01hcENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIFdlYWtNYXBDb25zdHJ1
Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBXZWFrTWFwUHJvdG90eXBlKiBwcm90b3R5cGUp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5
cGUuY3BwCmluZGV4IGI4NTZkNzYxMzViZjYxYmZhM2QzODM0YjZjZTA1M2Q3YmM0ZjZmODMuLjE0
NDRjZjZjODI1NzgyNzg3ZDliMjBlZGNlZjM2NmI1NWFiNTgyODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBBU0NJSUxpdGVyYWwgV2Vha01hcE5vbk9i
amVjdEtleUVycm9yIHsgIkF0dGVtcHRlZCB0byBzZXQgYSBub24tb2JqZWN0IGtleSBpbiBhIFdl
YWtNYXAiX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYWtNYXBQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrTWFwRGVsZXRlKTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtNYXBHZXQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZD
b25zdHJ1Y3Rvci5jcHAKaW5kZXggZmJmYWYzNWM3OGJmNmU5Njg3MWNjMGQ3NDEwMWZjZmJiMDdk
ZTk4Ni4uZjU0ZGEyNTU5YzdkZWJhYjYzMGIwYmYwMmM5NDA2NzcyMjkzYTZhYiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29u
c3RydWN0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2Vha09iamVjdFJlZkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RS
ZWZDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZkNvbnN0cnVj
dG9yKSB9OwogCiB2b2lkIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBXZWFrT2JqZWN0UmVmUHJvdG90eXBlKiBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUu
Y3BwCmluZGV4IDgzYTIwNDYwOWQ5YWQ3YmFlOGFhODhiMTIyOGMxY2I3NjQ5ZWY4MDguLjgyOTRh
YTUyMWQyYWM2YThhMTRhYmI1NmU1NjI3NTgxNmM2MTYwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCkBA
IC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vh
a09iamVjdFJlZlByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1JlZiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZlByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrT2JqZWN0UmVmUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWFrUmVmIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtSZWZEZXJlZik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCmluZGV4
IGM4ZGFhYjQ2YjAzZGIwM2UwZTdhYWFmNzEwZjkxMzQ4NDE1ZjZhYjAuLjg3NGNhOTZiN2E5ZGQx
ZGU3ZjMzZjc1NDYwNDg1Y2VmNDQ1YzQwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtTZXRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWFrU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBXZWFrU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSwgV2Vha1NldFByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNwcAppbmRleCBjMTdmZmNmMDdiNjgx
ZWM4YWFkZmM4YTE5ZmYzNzUwMDAwOGNlMGQ3Li40MmEyMmFmODAyNjg1YjI1ZjY2YmE0MDk0OWQy
MTIzOGI1ZTE5YzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQVNDSUlMaXRlcmFsIFdlYWtTZXROb25PYmplY3RWYWx1ZUVycm9yIHsgIkF0dGVtcHRl
ZCB0byBhZGQgYSBub24tb2JqZWN0IHZhbHVlIHRvIGEgV2Vha1NldCJfcyB9OwogCi1jb25zdCBD
bGFzc0luZm8gV2Vha1NldFByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1NldCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha1NldFByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrU2V0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWFrU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYWtTZXRQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKHByb3RvRnVuY1dlYWtTZXREZWxldGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04ocHJvdG9GdW5jV2Vha1NldEhhcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4
cC5jcHAKaW5kZXggODRiYzdjZjJkYmE2ZTYxZjM0ZmFlNWM0ZWRlMzNjNzczNTA0YWQxMi4uN2Qy
NmIxNmJmOWYzZmNiZDMwYWVlZmQwNmNmZGQ5OTk4NWMwMTA1NSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0UmVnRXhwLmNwcApAQCAtMTIyLDcgKzEyMiw3IEBAIHByaXZhdGU6CiB9OwogU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoR2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamVj
dCk7CiAKLWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIs
ICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNf
aW5mbyA9IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogCiBHbG9iYWxPYmpl
Y3Q6Okdsb2JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgYXJndW1lbnRzKQogICAgIDogSlNHbG9iYWxPYmplY3Qodm0sIHN0cnVjdHVy
ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93
bGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3Qu
Y3BwCmluZGV4IGFhY2Q3NWRhODdhYjkzYzJkNDBiZjdiZWM1OTE2ZDdjNjcwNjk1NzkuLjI0MmYx
MDc3ODQ0ZDQ3NjFkNDA4ODhkZWFiNGJiMWRhNzgyMTE1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uQWxsb3dsaXN0LmNwcApAQCAtNDQsNyArNDQsNyBA
QCBGdW5jdGlvbkFsbG93bGlzdDo6RnVuY3Rpb25BbGxvd2xpc3QoY29uc3QgY2hhciogZmlsZW5h
bWUpCiAgICAgaWYgKCFmKSB7CiAgICAgICAgIGlmIChlcnJubyA9PSBFTk9FTlQpIHsKICAgICAg
ICAgICAgIG1faGFzQWN0aXZlQWxsb3dsaXN0ID0gdHJ1ZTsKLSAgICAgICAgICAgIG1fZW50cmll
cy5hZGQoZmlsZW5hbWUpOworICAgICAgICAgICAgbV9lbnRyaWVzLmFkZChTdHJpbmcgeyBmaWxl
bmFtZSB9KTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBkYXRhTG9nRigiRmFpbGVkIHRv
IG9wZW4gZmlsZSAlcy4gRGlkIHlvdSBhZGQgdGhlIGZpbGUtcmVhZC1kYXRhIGVudGl0bGVtZW50
IHRvIFdlYlByb2Nlc3Muc2I/IEVycm9yIGNvZGU6ICVzXG4iLCBmaWxlbmFtZSwgc2FmZVN0cmVy
cm9yKGVycm5vKS5kYXRhKCkpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlkZXMuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcAppbmRleCA3YTNiMzc5MjRiZTU2
MDU0N2ZjMmRmZmUzMzJkM2U2NmJmOGE5NWY2Li45NTY4NmJhMTkyMGJiMGViMTI3NDA0ZjEzOTFi
YjAyZjViYjE2MDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVu
Y3Rpb25PdmVycmlkZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5j
dGlvbk92ZXJyaWRlcy5jcHAKQEAgLTEzMCw4ICsxMzAsOCBAQCBzdGF0aWMgdm9pZCBpbml0aWFs
aXplT3ZlcnJpZGVJbmZvKGNvbnN0IFNvdXJjZUNvZGUmIG9yaWdDb2RlLCBjb25zdCBTdHJpbmcm
IG5ldwogICAgIEZ1bmN0aW9uT3ZlcnJpZGVzQXNzZXJ0U2NvcGUgYXNzZXJ0U2NvcGU7CiAgICAg
U3RyaW5nIG9yaWdQcm92aWRlclN0ciA9IG9yaWdDb2RlLnByb3ZpZGVyKCktPnNvdXJjZSgpLnRv
U3RyaW5nKCk7CiAgICAgdW5zaWduZWQgb3JpZ1N0YXJ0ID0gb3JpZ0NvZGUuc3RhcnRPZmZzZXQo
KTsKLSAgICB1bnNpZ25lZCBvcmlnRnVuY3Rpb25TdGFydCA9IG9yaWdQcm92aWRlclN0ci5yZXZl
cnNlRmluZCgiZnVuY3Rpb24iLCBvcmlnU3RhcnQpOwotICAgIHVuc2lnbmVkIG9yaWdCcmFjZVN0
YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLmZpbmQoInsiLCBvcmlnU3RhcnQpOworICAgIHVuc2lnbmVk
IG9yaWdGdW5jdGlvblN0YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLnJldmVyc2VGaW5kKCJmdW5jdGlv
biJfcywgb3JpZ1N0YXJ0KTsKKyAgICB1bnNpZ25lZCBvcmlnQnJhY2VTdGFydCA9IG9yaWdQcm92
aWRlclN0ci5maW5kKCd7Jywgb3JpZ1N0YXJ0KTsKICAgICB1bnNpZ25lZCBoZWFkZXJMZW5ndGgg
PSBvcmlnQnJhY2VTdGFydCAtIG9yaWdGdW5jdGlvblN0YXJ0OwogICAgIFN0cmluZyBvcmlnSGVh
ZGVyID0gb3JpZ1Byb3ZpZGVyU3RyLnN1YnN0cmluZyhvcmlnRnVuY3Rpb25TdGFydCwgaGVhZGVy
TGVuZ3RoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9s
bGFyVk0uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9sbGFyVk0uY3BwCmlu
ZGV4IDNmYzcxMTg2YmUyM2M0Nzg2MTlmMzc4NTA2ZGU0MTJiYmQ1N2FjNjYuLmQxOWIwMTc3OWU4
MGMwYjhlMjlhMTQzNTEyZjJhYTc0NjY5ZGZlOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAKQEAgLTIwMyw3ICsyMDMsNyBAQCBwcml2YXRlOgogICAgIH0K
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNQ2FsbEZyYW1lOjpzX2luZm8gPSB7ICJD
YWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEb2xsYXJW
TUNhbGxGcmFtZTo6c19pbmZvID0geyAiQ2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07
CiAKIGNsYXNzIEVsZW1lbnRIYW5kbGVPd25lcjsKIGNsYXNzIFJvb3Q7CkBAIC0xNzgwLDMyICsx
NzgwLDMyIEBAIHZvaWQgSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1l
bnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEVsZW1lbnQpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkg
fTsKLWNvbnN0IENsYXNzSW5mbyBTaW1wbGVPYmplY3Q6OnNfaW5mbyA9IHsgIlNpbXBsZU9iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2ltcGxlT2JqZWN0KSB9OwotY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0g
eyAiSW1wdXJlR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbXB1cmVHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0
dGVyOjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1c3RvbUdldHRlcikgfTsKLWNvbnN0IENsYXNz
SW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJheSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OworY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1lbnQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSb290OjpzX2luZm8gPSB7ICJSb290Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3QpIH07Citjb25z
dCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8gPSB7ICJTaW1wbGVPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2ltcGxl
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0geyAiSW1w
dXJlR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEltcHVyZUdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXI6
OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0ZXIpIH07Citjb25zdCBDbGFzc0lu
Zm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklUTm9kZTo6c19pbmZvID0g
eyAiRE9NSklUTm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVj
a1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29u
c3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVja1N1YkNsYXNzU25pcHBldCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OwogI2Vsc2UKLWNvbnN0IENsYXNzSW5mbyBE
T01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29uc3QgQ2xh
c3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsK
ICNlbmRpZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlcjo6c19pbmZvID0geyAiRE9NSklU
R2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyTm9FZmZl
Y3RzOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJOb0VmZmVjdHMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0
cykgfTsKLWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJE
T01KSVRHZXR0ZXJDb21wbGV4IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJDb21wbGV4KSB9OwotY29uc3QgQ2xhc3NJbmZv
IERPTUpJVEdldHRlckJhc2VKU09iamVjdDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklU
R2V0dGVyOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIERPTUpJVEdldHRlck5vRWZmZWN0czo6c19pbmZvID0geyAiRE9NSklUR2V0dGVy
Tm9FZmZlY3RzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0cykgfTsKK2NvbnN0IENsYXNzSW5mbyBET01K
SVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJDb21wbGV4Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdl
dHRlckNvbXBsZXgpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0
OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0KSB9OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklURnVuY3Rp
b25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9uT2JqZWN0IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgJkRPTUpJVEZ1bmN0aW9uT2JqZWN0OjpjaGVja1N1YkNsYXNzU25pcHBldCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRGdW5jdGlvbk9iamVjdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBET01KSVRGdW5jdGlvbk9iamVjdDo6c19pbmZvID0geyAiRE9NSklURnVuY3Rpb25PYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVRGdW5jdGlvbk9iamVjdDo6Y2hl
Y2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmpl
Y3QpIH07CiAjZWxzZQotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2lu
Zm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmplY3QpIH07Citjb25z
dCBDbGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0
aW9uT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9OwogI2VuZGlmCi1jb25zdCBDbGFzc0lu
Zm8gRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVENoZWNrSlNDYXN0
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRDaGVja0pTQ2FzdE9iamVjdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
dXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q3VzdG9tR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVENoZWNrSlND
YXN0T2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRDaGVja0pTQ2FzdE9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRDaGVj
a0pTQ2FzdE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDdXN0b21HZXR0
ZXJTZXR0ZXIpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21BY2Nlc3Nvcjo6c19p
bmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3Vz
dG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0
b21BY2Nlc3NvcikgfTsKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21WYWx1ZTo6c19pbmZv
ID0geyAiU3RhdGljQ3VzdG9tVmFsdWUiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tVmFs
dWVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0b21WYWx1ZSkg
fTsKLWNvbnN0IENsYXNzSW5mbyBPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVj
dFNsb3RTdGF0dXM6OnNfaW5mbyA9IHsgIk9iamVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRD
b3JyZWN0U2xvdFN0YXR1cyIsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdERvaW5nU2lkZUVmZmVjdFB1
dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKK2NvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0
b21BY2Nlc3Nvcjo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiX3MsICZCYXNlOjpz
X2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0YXRpY0N1c3RvbUFjY2Vzc29yKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0YXRpY0N1
c3RvbVZhbHVlOjpzX2luZm8gPSB7ICJTdGF0aWNDdXN0b21WYWx1ZSJfcywgJkJhc2U6OnNfaW5m
bywgJnN0YXRpY0N1c3RvbVZhbHVlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RhdGljQ3VzdG9tVmFsdWUpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0RG9pbmdTaWRlRWZm
ZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzOjpzX2luZm8gPSB7ICJPYmplY3REb2luZ1Np
ZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMiX3MsICZCYXNlOjpzX2luZm8sICZz
dGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKIAogRWxl
bWVudEhhbmRsZU93bmVyKiBFbGVtZW50OjpoYW5kbGVPd25lcigpCiB7CkBAIC0xODk1LDcgKzE4
OTUsNyBAQCBwdWJsaWM6CiAgICAgV2FzbTo6U3RyZWFtaW5nUGFyc2VyIG1fc3RyZWFtaW5nUGFy
c2VyOwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdQYXJzZXI6OnNfaW5mbyA9
IHsgIldhc21TdHJlYW1pbmdQYXJzZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdhc21TdHJlYW1pbmdQYXJzZXIpIH07Citjb25zdCBDbGFz
c0luZm8gV2FzbVN0cmVhbWluZ1BhcnNlcjo6c19pbmZvID0geyAiV2FzbVN0cmVhbWluZ1BhcnNl
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXYXNtU3RyZWFtaW5nUGFyc2VyKSB9OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25XYXNtU3RyZWFtaW5nUGFyc2VyQWRkQnl0ZXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCiB7CkBAIC0xOTk2LDcgKzE5OTYsNyBAQCB2
b2lkIFdhc21TdHJlYW1pbmdDb21waWxlcjo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxs
LCBWaXNpdG9yJiB2aXNpdG9yKQogCiBERUZJTkVfVklTSVRfQ0hJTERSRU4oV2FzbVN0cmVhbWlu
Z0NvbXBpbGVyKTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdDb21waWxlcjo6c19p
bmZvID0geyAiV2FzbVN0cmVhbWluZ0NvbXBpbGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nQ29tcGlsZXIpIH07Citj
b25zdCBDbGFzc0luZm8gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpzX2luZm8gPSB7ICJXYXNtU3Ry
ZWFtaW5nQ29tcGlsZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ0NvbXBpbGVyKSB9OwogCiBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25XYXNtU3RyZWFtaW5nQ29tcGlsZXJBZGRCeXRlcywgKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKIHsKQEAgLTIx
NDMsNyArMjE0Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9u
UmVzZXRKSVRTaXplU3RhdGlzdGljcyk7CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uRW5zdXJlQXJyYXlTdG9yYWdlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRG9s
bGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTRG9sbGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk0pIH07CiAKIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBkb1ByaW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbEZyYW1lLCBib29sIGFkZExpbmVGZWVkKQogewpAQCAtMjczMCw3ICsyNzMw
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSGF2ZUFCYWRUaW1lLCAoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2EKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1l
bnQoMCkuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU09iamVjdCogb2JqID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgwKS5nZXRPYmplY3QoKTsKICAgICAgICAgaWYgKCFvYmopCi0gICAgICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiaGF2ZUFCYWRU
aW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiaGF2ZUFCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlm
IHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFyZ2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAg
ICB9CiAKQEAgLTI3NDksNyArMjc0OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5j
dGlvbklzSGF2aW5nQUJhZFRpbWUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAg
aWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNP
YmplY3QqIG9iaiA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkuZ2V0T2JqZWN0KCk7CiAgICAgICAg
IGlmICghb2JqKQotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgImlzSGF2aW5nQUJhZFRpbWUgZXhwZWN0cyBmaXJzdCBhcmd1bWVudCB0byBi
ZSBhbiBvYmplY3QgaWYgcHJvdmlkZWQiKTsKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJpc0hhdmluZ0FCYWRUaW1lIGV4cGVjdHMgZmly
c3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFy
Z2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAgICB9CiAKQEAgLTI3OTgsMjAgKzI3OTgsMjAg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxX
aXRoU3RhY2tTaXplLCBTVVBQUkVTU19BU0EKICNlbmRpZgogCiAgICAgaWYgKCFpc1N1cHBvcnRl
ZEJ5UGxhdGZvcm0pCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCAiTm90IHN1cHBvcnRlZCBmb3IgdGhpcyBwbGF0Zm9ybSIpOworICAgICAgICBy
ZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIk5vdCBzdXBwb3J0
ZWQgZm9yIHRoaXMgcGxhdGZvcm0iX3MpOwogCiAjaWYgRU5BQkxFKEFTU0VNQkxFUikKICAgICBp
ZiAoZ19qc2NDb25maWcuaXNQZXJtYW5lbnRseUZyb3plbigpIHx8ICFnX2pzY0NvbmZpZy5kaXNh
YmxlZEZyZWV6aW5nRm9yVGVzdGluZykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9i
YWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBmcm96ZW4iKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBm
cm96ZW4iX3MpOwogCiAgICAgaWYgKGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpIDwgMikKLSAg
ICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZh
bGlkIG51bWJlciBvZiBhcmd1bWVudHMiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMiX3Mp
OwogICAgIEpTVmFsdWUgYXJnMCA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1
ZSBhcmcxID0gY2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKICAgICBpZiAoIWFyZzAuaXNDYWxsYWJs
ZSh2bSkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Nj
b3BlLCAiYXJnMCBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOworICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzAgc2hvdWxkIGJlIGEgZnVuY3Rp
b24iX3MpOwogICAgIGlmICghYXJnMS5pc051bWJlcigpKQotICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzEgc2hvdWxkIGJlIGEgbnVtYmVy
Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3Bl
LCAiYXJnMSBzaG91bGQgYmUgYSBudW1iZXIiX3MpOwogCiAgICAgSlNGdW5jdGlvbiogZnVuY3Rp
b24gPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KGFyZzApOwogICAgIHNpemVfdCBkZXNpcmVkU3RhY2tT
aXplID0gYXJnMS5hc051bWJlcigpOwpAQCAtMjgyMSw3ICsyODIxLDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxXaXRoU3RhY2tTaXplLCBT
VVBQUkVTU19BU0EKICAgICB1aW50OF90KiBlbmQgPSBiaXR3aXNlX2Nhc3Q8dWludDhfdCo+KGJv
dW5kcy5lbmQoKSk7CiAgICAgdWludDhfdCogZGVzaXJlZFN0YXJ0ID0gZW5kICsgZGVzaXJlZFN0
YWNrU2l6ZTsKICAgICBpZiAoZGVzaXJlZFN0YXJ0ID49IGN1cnJlbnRTdGFja1Bvc2l0aW9uKQot
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIlVu
YWJsZSB0byBzZXR1cCBkZXNpcmVkIHN0YWNrIHNpemUiKTsKKyAgICAgICAgcmV0dXJuIHRocm93
Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJVbmFibGUgdG8gc2V0dXAgZGVzaXJl
ZCBzdGFjayBzaXplIl9zKTsKIAogICAgIEpTRG9sbGFyVk1IZWxwZXIgaGVscGVyKHZtKTsKIApA
QCAtMzAzNSw3ICszMDM1LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uQ3Jl
YXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9yQ29tcGlsZSwgKEpTR2xvYmEKICAgICBhdXRvIGNv
bXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwg
V2FzbTo6Q29tcGlsZXJNb2RlOjpWYWxpZGF0aW9uLCBudWxscHRyKTsKICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsKLSAgICBjYWxsKGds
b2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZb3Ugc2hvdWxkbid0
IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVm
aW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgaWYgKFVO
TElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24o
KTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6ZShnbG9iYWxPYmpl
Y3QpOwpAQCAtMzA2Miw3ICszMDYyLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0
aW9uQ3JlYXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9ySW5zdGFudGlhdGUsIChKU0cKICAgICBh
dXRvIGNvbXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgV2FzbTo6Q29tcGlsZXJNb2RlOjpGdWxsQ29tcGlsZSwgaW1wb3J0T2JqZWN0KTsKICAg
ICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsK
LSAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZ
b3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxi
YWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7
CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xl
YXJFeGNlcHRpb24oKTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6
ZShnbG9iYWxPYmplY3QpOwpAQCAtMzE3MCw3ICszMTcwLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKGZ1bmN0aW9uR2V0UHJpdmF0ZVByb3BlcnR5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamUKIAogICAgIFN5bWJvbEltcGwqIHN5bWJvbCA9IHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0
aW5OYW1lcygpLmxvb2tVcFByaXZhdGVOYW1lKHN0cik7CiAgICAgaWYgKCFzeW1ib2wpCi0gICAg
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVua25vd24gcHJp
dmF0ZSBuYW1lLiIpOworICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJVbmtub3duIHByaXZhdGUgbmFtZS4iX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5nZXQoZ2xv
YmFsT2JqZWN0LCBzeW1ib2wpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAKaW5kZXggZjZhNTliMGI3YWMyMjQxNGZjNjc2
NjRkMTdmZTY3NjAzNmIxNjliYy4uNmQ2OWE0ZGYyZTIzNzEzMDA0ZTUzMDcwMDVjZmQ4MjBlMGQy
MTIyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1NpZ2lsbENyYXNo
QW5hbHl6ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9TaWdpbGxDcmFz
aEFuYWx5emVyLmNwcApAQCAtMjc3LDcgKzI3Nyw3IEBAIGF1dG8gU2lnaWxsQ3Jhc2hBbmFseXpl
cjo6YW5hbHl6ZShTaWduYWxDb250ZXh0JiBjb250ZXh0KSAtPiBDcmFzaFNvdXJjZQogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAotICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkpOworICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkuY2hhcmFjdGVycygpKTsKIAogICAgICAgICBkdW1wQ29k
ZUJsb2NrKGNvZGVCbG9jaywgcGMpOwogICAgIH0gd2hpbGUgKGZhbHNlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwCmluZGV4IDdlM2FlN2Q4OTU4MmYyMWVl
MmQ2NzA0Y2ViN2IwZTRkZmFmZmFiYzMuLmI1NmQ3ZjRhMjEzMzQ5NjRlMmRkY2U3Nzk4ZGU0NWE1
OTM5ZDI4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3Bl
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNw
cApAQCAtNDExLDcgKzQxMSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBSZWdpc3RlcnMoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpCiAgICAgICAgICAgICBKU1ZhbHVlIHYgPSBpdC0+anNWYWx1ZSgp
OwogICAgICAgICAgICAgaW50IHJlZ2lzdGVyTnVtYmVyID0gaXQgLSBjYWxsRnJhbWUtPnJlZ2lz
dGVycygpOwogICAgICAgICAgICAgU3RyaW5nIG5hbWUgPSAoaXQgPiBlbmRPZkNhbGxlZVNhdmVz
KQotICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWciCisgICAgICAgICAgICAgICAgPyAi
Q2FsbGVlU2F2ZVJlZyJfcwogICAgICAgICAgICAgICAgIDogY29kZUJsb2NrLT5uYW1lRm9yUmVn
aXN0ZXIoVmlydHVhbFJlZ2lzdGVyKHJlZ2lzdGVyTnVtYmVyKSk7CiAgICAgICAgICAgICBkYXRh
TG9nRigiW3IlIDNkICUxNHNdICAgICAgfCAlMTBwIHwgMHglLTE2bGx4ICVzXG4iLCByZWdpc3Rl
ck51bWJlciwgbmFtZS5hc2NpaSgpLmRhdGEoKSwgaXQsIChsb25nIGxvbmcpSlNWYWx1ZTo6ZW5j
b2RlKHYpLCB2YWx1ZUFzU3RyaW5nKHYpLmRhdGEoKSk7CiAgICAgICAgICAgICAtLWl0OwpAQCAt
NTE5LDcgKzUxOSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0o
SlNDZWxsKiBjZWxsLCBQcmludFN0cmVhbSYgb3V0KQogICAgICAgICBvdXQucHJpbnQoIlxuIik7
CiAgICAgfTsKIAotICAgIG91dC5wcmludGYoIjwlcCwgJXM+XG4iLCBjZWxsLCBjZWxsLT5jbGFz
c05hbWUodm0pKTsKKyAgICBvdXQucHJpbnRmKCI8JXAsICVzPlxuIiwgY2VsbCwgY2VsbC0+Y2xh
c3NOYW1lKHZtKS5jaGFyYWN0ZXJzKCkpOwogICAgIEluZGVudGF0aW9uU2NvcGUgc2NvcGUoaW5k
ZW50YXRpb24pOwogCiAgICAgSU5ERU5UIGR1bXBTbG90KHNsb3RzLCAwLCAiaGVhZGVyIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4Y2VwdGlvblR5cGUuaAppbmRleCAy
ODVkMzUyNGJlZTJiNWQxOWYxMmI1NTM0ZWJlMzY3NTg1YjRkZTc0Li4zYWYwOGE2MWU0YTI3ODhm
YjdiODc0ZDEwMDFjYTQ5YzMxMWIzNGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21FeGNlcHRpb25UeXBlLmgKQEAgLTMyLDE4ICszMiwxOCBAQCBuYW1lc3BhY2UgSlND
IHsKIG5hbWVzcGFjZSBXYXNtIHsKIAogI2RlZmluZSBGT1JfRUFDSF9FWENFUFRJT04obWFjcm8p
IFwKLSAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFjY2VzcywgICJPdXQgb2YgYm91bmRzIG1l
bW9yeSBhY2Nlc3MiKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUYWJsZUFjY2VzcywgIk91dCBv
ZiBib3VuZHMgdGFibGUgYWNjZXNzIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzQ2FsbEluZGly
ZWN0LCAiT3V0IG9mIGJvdW5kcyBjYWxsX2luZGlyZWN0IikgXAotICAgIG1hY3JvKE51bGxUYWJs
ZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8gYSBudWxsIHRhYmxlIGVudHJ5IikgXAotICAgIG1h
Y3JvKE51bGxSZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8gYSBudWxsIHJlZmVyZW5jZSIpIFwKLSAg
ICBtYWNybyhCYWRTaWduYXR1cmUsICJjYWxsX2luZGlyZWN0IHRvIGEgc2lnbmF0dXJlIHRoYXQg
ZG9lcyBub3QgbWF0Y2giKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBi
b3VuZHMgVHJ1bmMgb3BlcmF0aW9uIikgXAotICAgIG1hY3JvKFVucmVhY2hhYmxlLCAiVW5yZWFj
aGFibGUgY29kZSBzaG91bGQgbm90IGJlIGV4ZWN1dGVkIikgXAotICAgIG1hY3JvKERpdmlzaW9u
QnlaZXJvLCAiRGl2aXNpb24gYnkgemVybyIpIFwKLSAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3cs
ICJJbnRlZ2VyIG92ZXJmbG93IikgXAotICAgIG1hY3JvKFN0YWNrT3ZlcmZsb3csICJTdGFjayBv
dmVyZmxvdyIpIFwKLSAgICBtYWNybyhGdW5jcmVmTm90V2FzbSwgIkZ1bmNyZWYgbXVzdCBiZSBh
biBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikKKyAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFj
Y2VzcywgICJPdXQgb2YgYm91bmRzIG1lbW9yeSBhY2Nlc3MiX3MpIFwKKyAgICBtYWNybyhPdXRP
ZkJvdW5kc1RhYmxlQWNjZXNzLCAiT3V0IG9mIGJvdW5kcyB0YWJsZSBhY2Nlc3MiX3MpIFwKKyAg
ICBtYWNybyhPdXRPZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91dCBvZiBib3VuZHMgY2FsbF9pbmRp
cmVjdCJfcykgXAorICAgIG1hY3JvKE51bGxUYWJsZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8g
YSBudWxsIHRhYmxlIGVudHJ5Il9zKSBcCisgICAgbWFjcm8oTnVsbFJlZmVyZW5jZSwgICJjYWxs
X3JlZiB0byBhIG51bGwgcmVmZXJlbmNlIl9zKSBcCisgICAgbWFjcm8oQmFkU2lnbmF0dXJlLCAi
Y2FsbF9pbmRpcmVjdCB0byBhIHNpZ25hdHVyZSB0aGF0IGRvZXMgbm90IG1hdGNoIl9zKSBcCisg
ICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBib3VuZHMgVHJ1bmMgb3BlcmF0aW9u
Il9zKSBcCisgICAgbWFjcm8oVW5yZWFjaGFibGUsICJVbnJlYWNoYWJsZSBjb2RlIHNob3VsZCBu
b3QgYmUgZXhlY3V0ZWQiX3MpIFwKKyAgICBtYWNybyhEaXZpc2lvbkJ5WmVybywgIkRpdmlzaW9u
IGJ5IHplcm8iX3MpIFwKKyAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3csICJJbnRlZ2VyIG92ZXJm
bG93Il9zKSBcCisgICAgbWFjcm8oU3RhY2tPdmVyZmxvdywgIlN0YWNrIG92ZXJmbG93Il9zKSBc
CisgICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQg
d2FzbSBmdW5jdGlvbiJfcykKIAogZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3Qg
ewogI2RlZmluZSBNQUtFX0VOVU0oZW51bU5hbWUsIGVycm9yKSBlbnVtTmFtZSwKQEAgLTUxLDcg
KzUxLDcgQEAgZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3QgewogI3VuZGVmIE1B
S0VfRU5VTQogfTsKIAotQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2VGb3JF
eGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKK0FMV0FZU19JTkxJTkUgQVNDSUlMaXRl
cmFsIGVycm9yTWVzc2FnZUZvckV4Y2VwdGlvblR5cGUoRXhjZXB0aW9uVHlwZSB0eXBlKQogewog
ICAgIHN3aXRjaCAodHlwZSkgewogI2RlZmluZSBTV0lUQ0hfQ0FTRShlbnVtTmFtZSwgZXJyb3Ip
IFwKQEAgLTYxLDcgKzYxLDcgQEAgQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3Nh
Z2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKICN1bmRlZiBTV0lUQ0hfQ0FT
RQogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gIiI7CisgICAg
cmV0dXJuICIiX3M7CiB9CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpXYXNtCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKaW5kZXggYzc5ZTMzN2M3YTdhY2QxMjgyMGMyZTY5
NDAzNDRmZjRiZGQxMGE5ZS4uOTcwNjNhYWI5ZTZiN2Y1NjBmZTI4ZDU0MjA2MGM1MmI4ODQ2ZTVk
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApAQCAtODQsNyArODQs
NyBAQCBpbmxpbmUgSlNTdHJpbmcqIHR5cGVUb1N0cmluZyhWTSYgdm0sIFR5cGVLaW5kIHR5cGUp
CiB7CiAjZGVmaW5lIFRZUEVfQ0FTRShtYWNyb05hbWUsIHZhbHVlLCBiMywgaW5jLCB3YXNtTmFt
ZSkgXAogICAgIGNhc2UgVHlwZUtpbmQ6Om1hY3JvTmFtZTogXAotICAgICAgICByZXR1cm4ganNO
b250cml2aWFsU3RyaW5nKHZtLCAjd2FzbU5hbWUpOyBcCisgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sICN3YXNtTmFtZSIiX3MpOyBcCiAKICAgICBzd2l0Y2ggKHR5cGUpIHsK
ICAgICAgICAgRk9SX0VBQ0hfV0FTTV9UWVBFKFRZUEVfQ0FTRSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKaW5kZXggY2IzZDE2M2JiZTA4YjZhNTc1OGNkOWRjMjhk
ZTA2OGExZGU1NmYxNy4uZWQxYjBmN2QxNjkyMmU2MmE2ZTc3NmYxOGVhMGE5NWI0M2UzYTQzZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKQEAgLTkwLDcgKzkw
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICBpZiAoaXNFeHRlcm5yZWYobV90eXBlKSkgewogICAgICAg
ICAgICAgUkVMRUFTRV9BU1NFUlQobV9vd25lcik7CiAgICAgICAgICAgICBpZiAoIW1fdHlwZS5p
c051bGxhYmxlKCkgJiYgYXJndW1lbnQuaXNOdWxsKCkpIHsKLSAgICAgICAgICAgICAgICB0aHJv
d0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3Qg
YmUgbnVsbCIpKTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3Qs
IHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0
LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIG1fdmFsdWUubV9leHRl
cm5yZWYuc2V0KG1fb3duZXItPnZtKCksIG1fb3duZXIsIGFyZ3VtZW50KTsKQEAgLTk5LDcgKzk5
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogd2FzbUZ1bmN0
aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKiB3
YXNtV3JhcHBlckZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3Nl
bWJseUhvc3RGdW5jdGlvbih2bSwgYXJndW1lbnQsIHdhc21GdW5jdGlvbiwgd2FzbVdyYXBwZXJG
dW5jdGlvbikgJiYgKCFtX3R5cGUuaXNOdWxsYWJsZSgpIHx8ICFhcmd1bWVudC5pc051bGwoKSkp
IHsKLSAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikpOworICAgICAgICAgICAg
ICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJB
c3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFu
IGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgICAgICB9CiAKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIEdsb2JhbDo6c2V0KEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYXJndW1lbnQpCiAgICAgICAgICAgICAg
ICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggcGFyYW1JbmRleCA9IG1fdHlwZS5pbmRleDsKICAgICAg
ICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBhcmdJbmRleCA9IHdhc21GdW5jdGlvbiA/
IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNp
Z25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAgaWYgKHBhcmFtSW5kZXggIT0gYXJnSW5k
ZXgpIHsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwg
dm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSIp
KTsKKyAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0s
ICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykp
OwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50
UGxhbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApp
bmRleCBhZTE1ZjhkZWRmYmUwMTk5MDE3OWNlZDNjMWQyZjA3NDBkYmM4ZDY2Li5jMjQ5ZjkyY2Yw
NWJiMGM4YzM0NGVhNWFiNzFiMzk2ZjFhZGI5NGMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgTExJbnRQ
bGFuOjpkaWRDb21wbGV0ZUNvbXBpbGF0aW9uKCkKIAogICAgICAgICBMaW5rQnVmZmVyIGxpbmtC
dWZmZXIoaml0LCBHTE9CQUxfVEhVTktfSUQsIExpbmtCdWZmZXI6OlByb2ZpbGU6Oldhc20sIEpJ
VENvbXBpbGF0aW9uQ2FuRmFpbCk7CiAgICAgICAgIGlmIChVTkxJS0VMWShsaW5rQnVmZmVyLmRp
ZEZhaWxUb0FsbG9jYXRlKCkpKSB7Ci0gICAgICAgICAgICBCYXNlOjpmYWlsKCJPdXQgb2YgZXhl
Y3V0YWJsZSBtZW1vcnkgaW4gV2FzbSBMTEludCBlbnRyeSB0aHVua3MiKTsKKyAgICAgICAgICAg
IEJhc2U6OmZhaWwoIk91dCBvZiBleGVjdXRhYmxlIG1lbW9yeSBpbiBXYXNtIExMSW50IGVudHJ5
IHRodW5rcyJfcyk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwCmluZGV4IDEwODA0NDlkYTYz
OGY2NzZlMDdlY2EwZjU4MmUzYjlmYzdiNWU2OTEuLmJiNDZmOGE4MTMyZDFlZDU1ZTFjMzRhZjZh
MDBmMGQyNDlmZjBmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtT3Bl
cmF0aW9ucy5jcHAKQEAgLTUzNywxMiArNTM3LDEyIEBAIEpTQ19ERUZJTkVfSklUX09QRVJBVElP
TihvcGVyYXRpb25JdGVyYXRlUmVzdWx0cywgdm9pZCwgKENhbGxGcmFtZSogY2FsbEZyYW1lLCBJ
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIGlmIChidWZm
ZXIuaGFzT3ZlcmZsb3dlZCgpKSB7Ci0gICAgICAgIHRocm93T3V0T2ZNZW1vcnlFcnJvcihnbG9i
YWxPYmplY3QsIHNjb3BlLCAiSlMgcmVzdWx0cyB0byBXYXNtIGFyZSB0b28gbGFyZ2UiKTsKKyAg
ICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJKUyByZXN1
bHRzIHRvIFdhc20gYXJlIHRvbyBsYXJnZSJfcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
ICAgICBpZiAoaXRlcmF0aW9uQ291bnQgIT0gc2lnbmF0dXJlLT5yZXR1cm5Db3VudCgpKSB7Ci0g
ICAgICAgIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkluY29ycmVjdCBu
dW1iZXIgb2YgdmFsdWVzIHJldHVybmVkIHRvIFdhc20gZnJvbSBKUyIpOworICAgICAgICB0aHJv
d1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbmNvcnJlY3QgbnVtYmVyIG9mIHZh
bHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMiX3MpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlD
Q2FsbGVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxs
ZWUuY3BwCmluZGV4IGI1MDVkZjA1YmM2NmRkZDhiM2RmYWY3ZjFlNzZjN2RlNzQ3ZmUzYjMuLmM5
ODNlYjY0OTdiYjUwZTk4MDBiOTU0NGE3NjUwOWU4NGNhNTYzZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNUb1dhc21JQ0Nh
bGxlZTo6c19pbmZvID0geyAiSlNUb1dhc21JQ0NhbGxlZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUb1dhc21JQ0NhbGxlZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1RvV2FzbUlDQ2FsbGVlOjpzX2luZm8gPSB7ICJKU1RvV2FzbUlDQ2Fs
bGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVG9XYXNtSUNDYWxsZWUpIH07CiAKIEpTVG9XYXNtSUNDYWxsZWUqIEpTVG9XYXNtSUND
YWxsZWU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFdlYkFz
c2VtYmx5RnVuY3Rpb24qIGZ1bmN0aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNwcAppbmRleCA4MmQ2MzE5YzYxNjM1YjU3ZjY0NDgzODk0
OTI2MDQ3Y2IzODMzZmM4Li5jNTQxYjU5NDY2NjhlZGQwOGFhYjhkMzVmYzM4ODViNDVmYzVmZjY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNw
cApAQCAtNzMsNyArNzMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJB
c3NlbWJseVZhbGlkYXRlRnVuYyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkiLCAmQmFzZTo6c19pbmZv
LCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHk6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5Il9zLCAmQmFzZTo6c19pbmZvLCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpT
V2ViQXNzZW1ibHkubHV0LmgKIEBiZWdpbiB3ZWJBc3NlbWJseVRhYmxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3Bw
CmluZGV4IGRlNDE0MTkwNzM5ZDBjODI4ZmUwYjY3N2IxOTc1MWM2ZDg3NmYzMjEuLjAyZjhiYjBk
OGNjNWQ4NDZhYWFlMGQxOTFiM2EzNTAxNDI4NWNlYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCkBAIC0z
Nyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJB
c3NlbWJseUV4Y2VwdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5RXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlFeGNlcHRp
b246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5RXhjZXB0
aW9uKSB9OwogCiBKU1dlYkFzc2VtYmx5RXhjZXB0aW9uOjpKU1dlYkFzc2VtYmx5RXhjZXB0aW9u
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnLCBGaXhl
ZFZlY3Rvcjx1aW50NjRfdD4mJiBwYXlsb2FkKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUds
b2JhbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xv
YmFsLmNwcAppbmRleCA5NzkwODkxMzM4YjQ0OTBjMmE0MDQxN2U2YzFmOWI1ZGY5Nzc5M2NlLi5i
MzNkODg1MTFlM2IxYjA4ZTIyODMxYTRmMDAyMmI3YTE1M2JlMjk1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcApAQCAt
MzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2Vi
QXNzZW1ibHlHbG9iYWw6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJs
eUdsb2JhbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5R2xvYmFsOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUdsb2JhbCkgfTsKIAogSlNXZWJB
c3NlbWJseUdsb2JhbCogSlNXZWJBc3NlbWJseUdsb2JhbDo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNt
OjpHbG9iYWw+JiYgZ2xvYmFsKQogewpAQCAtOTQsMjIgKzk0LDIyIEBAIEpTT2JqZWN0KiBKU1dl
YkFzc2VtYmx5R2xvYmFsOjp0eXBlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAg
SlNTdHJpbmcqIHZhbHVlU3RyaW5nID0gbnVsbHB0cjsKICAgICBzd2l0Y2ggKHZhbHVlVHlwZS5r
aW5kKSB7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6STMyOgotICAgICAgICB2YWx1ZVN0cmlu
ZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiIpOworICAgICAgICB2YWx1ZVN0cmluZyA9
IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgV2FzbTo6VHlwZUtpbmQ6Okk2NDoKLSAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZp
YWxTdHJpbmcodm0sICJpNjQiKTsKKyAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxT
dHJpbmcodm0sICJpNjQiX3MpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFdhc206OlR5cGVL
aW5kOjpGMzI6Ci0gICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAi
ZjMyIik7CisgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZjMy
Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6RjY0OgotICAg
ICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCIpOworICAgICAg
ICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCJfcyk7CiAgICAgICAg
IGJyZWFrOwogICAgIGRlZmF1bHQ6IHsKICAgICAgICAgaWYgKFdhc206OmlzRnVuY3JlZih2YWx1
ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0s
ICJhbnlmdW5jIik7CisgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmlu
Zyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBlbHNlIGlmIChXYXNtOjppc0V4dGVybnJlZih2
YWx1ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmco
dm0sICJleHRlcm5yZWYiKTsKKyAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFs
U3RyaW5nKHZtLCAiZXh0ZXJucmVmIl9zKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVscGVycy5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMuaAppbmRleCA3YzU0ZDM0MGUz
NjdkNzQ2ZTAyMTgyMWVlMGJlMTEyMGIyNmMyYTE0Li44N2U1MGI0NTM1ZmU0NTEzYzgyZGJhZDdm
MTMzZjIwZmRlODAwMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9KU1dlYkFzc2VtYmx5SGVscGVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgKQEAgLTE5MSwxNyArMTkxLDE3IEBAIEFMV0FZU19J
TkxJTkUgdWludDY0X3QgZnJvbUpTVmFsdWUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgV2FzbTo6VHlwCiAgICAgZGVmYXVsdDogewogICAgICAgICBpZiAoV2FzbTo6aXNFeHRl
cm5yZWYodHlwZSkpIHsKICAgICAgICAgICAgIGlmICghdHlwZS5pc051bGxhYmxlKCkgJiYgdmFs
dWUuaXNOdWxsKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xv
YmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxP
YmplY3QsIHZtLCAiTm9uLW51bGwgRXh0ZXJucmVmIGNhbm5vdCBiZSBudWxsIikpOworICAgICAg
ICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNy
ZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxs
IEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICB9IGVsc2UgaWYgKFdhc206
OmlzRnVuY3JlZih0eXBlKSB8fCBpc1JlZldpdGhUeXBlSW5kZXgodHlwZSkpIHsKICAgICAgICAg
ICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAg
ICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2FzbVdyYXBwZXJGdW5jdGlvbiA9IG51
bGxwdHI7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVuY3Rpb24odm0sIHZh
bHVlLCB3YXNtRnVuY3Rpb24sIHdhc21XcmFwcGVyRnVuY3Rpb24pICYmICghdHlwZS5pc051bGxh
YmxlKCkgfHwgIXZhbHVlLmlzTnVsbCgpKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dW
TUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2Fz
bSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJf
cykpOwogICAgICAgICAgICAgaWYgKGlzUmVmV2l0aFR5cGVJbmRleCh0eXBlKSAmJiAhdmFsdWUu
aXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBwYXJhbUlu
ZGV4ID0gdHlwZS5pbmRleDsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBh
cmdJbmRleCA9IHdhc21GdW5jdGlvbiA/IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6
IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAg
aWYgKHBhcmFtSW5kZXggIT0gYXJnSW5kZXgpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0
aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkFyZ3VtZW50IGZ1bmN0aW9uIGRpZCBub3Qg
bWF0Y2ggdGhlIHJlZmVyZW5jZSB0eXBlIikpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5
UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90
IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykpOwogICAgICAgICAgICAgfQogICAgICAgICB9
IGVsc2UKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2Uu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNl
LmNwcAppbmRleCA0OWNkMDA3ZmI3N2RjNzcyMzRlYTRjOTUzZTVlYzczOGMwNzM5MTk2Li45YTVj
MDgzNTMzNzQ5ZjVkODVhMjg0NzVhNmFlZDZkNjYwZDFjODU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKQEAg
LTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dl
YkFzc2VtYmx5SW5zdGFuY2U6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5SW5zdGFuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUluc3RhbmNl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5SW5zdGFuY2Up
IH07CiAKIFN0cnVjdHVyZSogSlNXZWJBc3NlbWJseUluc3RhbmNlOjpjcmVhdGVTdHJ1Y3R1cmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkK
IHsKQEAgLTE1NSw3ICsxNTUsNyBAQCB2b2lkIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxp
emVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogCiBJZGVudGlm
aWVyIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlUHJpdmF0ZU1vZHVsZUtleSgpCiB7Ci0g
ICAgcmV0dXJuIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRl
c2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0YW5jZSIpKTsKKyAgICByZXR1cm4gSWRlbnRpZmll
cjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJXZWJBc3Nl
bWJseUluc3RhbmNlIl9zKSk7CiB9CiAKIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogSlNXZWJBc3Nl
bWJseUluc3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBjb25zdCBJZGVudGlmaWVyJiBtb2R1bGVLZXksIEpTV2ViQXNzZW1ibHlNb2R1bGUqIGpz
TW9kdWxlLCBKU09iamVjdCogaW1wb3J0T2JqZWN0LCBTdHJ1Y3R1cmUqIGluc3RhbmNlU3RydWN0
dXJlLCBSZWY8V2FzbTo6TW9kdWxlPiYmIG1vZHVsZSwgV2FzbTo6Q3JlYXRpb25Nb2RlIGNyZWF0
aW9uTW9kZSkKQEAgLTIwMSw3ICsyMDEsNyBAQCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIEpTV2Vi
QXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqCiAgICAg
ICAgICAgICBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6SW1wb3J0RW50cnlUeXBlOjpTaW5nbGUs
CiAgICAgICAgICAgICBtb2R1bGVOYW1lLAogICAgICAgICAgICAgZmllbGROYW1lLAotICAgICAg
ICAgICAgSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3Jp
cHRpb24sICJXZWJBc3NlbWJseUltcG9ydE5hbWUiKSksCisgICAgICAgICAgICBJZGVudGlmaWVy
Ojpmcm9tVWlkKFByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIldlYkFzc2Vt
Ymx5SW1wb3J0TmFtZSJfcykpLAogICAgICAgICB9KTsKICAgICB9CiAgICAgQVNTRVJUKG1vZHVs
ZVJlY29yZC0+aW1wb3J0RW50cmllcygpLnNpemUoKSA9PSBtb2R1bGVJbmZvcm1hdGlvbi5pbXBv
cnRzLnNpemUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5TWVtb3J5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pT
V2ViQXNzZW1ibHlNZW1vcnkuY3BwCmluZGV4IDM1ZWRlNDE0OTI2ZDYxOTg1OWQyZTg1OGI5Yzhh
NGYyOTkxYWY2MjkuLmY0YTQwMjM2ODY3N2MwNzI5OGQyN2U5NTg3NDgwNTU1OGE0ZjAzYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNZW1v
cnkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlN
ZW1vcnkuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNXZWJBc3NlbWJseU1lbW9yeTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTWVt
b3J5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dlYkFzc2VtYmx5TWVtb3J5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlN
ZW1vcnk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TWVtb3J5
KSB9OwogCiBKU1dlYkFzc2VtYmx5TWVtb3J5KiBKU1dlYkFzc2VtYmx5TWVtb3J5Ojp0cnlDcmVh
dGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlNb2R1bGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseU1vZHVsZS5jcHAKaW5kZXggMGYwYjljYzVhNTJmMGVjNDhjNmY3Y2YzNTFhNzU2N2Y2
YTFjNDIyZi4uYmM0NGExMmE2ZTAwMzczMzYyODcwYzMzNzg4MWQzYTlmMmUxMGI5OCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVs
ZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYkFzc2VtYmx5TW9kdWxlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2ViQXNzZW1ibHlNb2R1bGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseU1vZHVs
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlNb2R1bGUpIH07
CiAKIEpTV2ViQXNzZW1ibHlNb2R1bGUqIEpTV2ViQXNzZW1ibHlNb2R1bGU6OmNyZWF0ZVN0dWIo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgV2FzbTo6TW9kdWxlOjpWYWxpZGF0aW9uUmVzdWx0JiYgcmVzdWx0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAKaW5k
ZXggYzAyMDZlNGQ1Y2Q5N2ExZDIxYThhMmZjZmQxZmY1NzRhZGIxYzMwMC4uMjJkNTIwZGEyMDUz
ODdmN2RkNDVhMDM0ZWNiNzI1MDMzYmY3ZTFmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFibGUuY3BwCkBAIC0zNCw3ICszNCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseVRhYmxl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlUYWJsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHku
VGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OwogCiBKU1dlYkFzc2VtYmx5VGFibGUqIEpTV2Vi
QXNzZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNtOjpUYWJsZT4mJiB0YWJsZSkKIHsK
QEAgLTEyNywxMCArMTI3LDEwIEBAIEpTT2JqZWN0KiBKU1dlYkFzc2VtYmx5VGFibGU6OnR5cGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBKU1N0cmluZyogZWxlbWVudFN0cmlu
ZyA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChlbGVtZW50KSB7CiAgICAgY2FzZSBXYXNtOjpUYWJs
ZUVsZW1lbnRUeXBlOjpGdW5jcmVmOgotICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250cml2
aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyIpOworICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250
cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
V2FzbTo6VGFibGVFbGVtZW50VHlwZTo6RXh0ZXJucmVmOgotICAgICAgICBlbGVtZW50U3RyaW5n
ID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIik7CisgICAgICAgIGVsZW1lbnRT
dHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJleHRlcm5yZWYiX3MpOwogICAgICAgICBi
cmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJs
eVRhZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFn
LmNwcAppbmRleCA2OTQxZmM0Y2I1M2IyMzU1Y2FjNzA1Y2RjNWQxZGZiNmJmMjdiNGE1Li5iZGRj
MTQ5Y2YwYmY0MTVlMTk0YWQ2OTI0ZDU0YzM4N2QzOTU1ZWY1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcApAQCAtMzUsNyArMzUs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlU
YWc6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhZykgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFnOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWci
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNXZWJBc3NlbWJseVRhZykgfTsKIAogSlNXZWJBc3NlbWJseVRhZyogSlNXZWJBc3NlbWJseVRh
Zzo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA4YmI2ZTU0YzJiNWEwMjJjZmI4MjRmNjZhY2U1ODBh
MmQyMTI4ZWJkLi45MDZkYjdkNjM4YmE5YmYzYzM2MTlhNWRkZTA0OTk0MWQ1MDRlOGZjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVy
cm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5
Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29t
cGlsZUVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJy
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IGE1YmUwMTcyYmFlM2IwYmM5ZmExNGM2
YzcxZWI0YmZlZTMzNjZmNWIuLjkyMGI5MmI0MzJhZWIyNmQ2OWFmMjcwNTQzYzdmNTFiOWY2NmE1
ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUNvbXBp
bGVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yIiwg
JkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkNvbXBpbGVFcnJvciJfcywgJkJhc2U6OnNfaW5mbywg
JnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUubHV0LmgKICBAYmVnaW4g
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvcgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNv
bnN0cnVjdG9yLmNwcAppbmRleCAzN2E2ZmEwYmQ2ZmE0NTg3NTI0OGM4MzUwMDcxYTZlNjQyZmYz
MjM5Li5mNGIxZTIzZjljYjk4YjI1MDgxYTY1MDBlMTAzMjQzMTMyOWU0YjdkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVX
ZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
RXhjZXB0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlFeGNl
cHRpb24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1i
bHlFeGNlcHRpb24pOwpAQCAtNTgsNyArNTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y29uc3RydWN0SlNXZWJBc3NlbWJseUV4Y2VwdGlvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQog
CiAgICAgYXV0byB0YWcgPSBqc0R5bmFtaWNDYXN0PEpTV2ViQXNzZW1ibHlUYWcqPih2bSwgdGFn
VmFsdWUpOwogICAgIGlmICghdGFnKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNvbnN0cnVjdG9yIGV4
cGVjdHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgV2ViQXNzZW1ibHkuVGFnIik7CisgICAg
ICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3Nl
bWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0cyB0aGUgZmlyc3QgYXJndW1lbnQgdG8g
YmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgdmFs
dWVzOwogICAgIGZvckVhY2hJbkl0ZXJhYmxlKGdsb2JhbE9iamVjdCwgdGFnUGFyYW1ldGVycywg
WyZdIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBuZXh0VmFsdWUpIHsKQEAgLTY3LDcg
KzY3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlF
eGNlcHRpb24sIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCB7IH0pOwogCiAgICAgaWYgKHZhbHVlcy5zaXplKCkgIT0gdGFnLT5zaWduYXR1cmUo
KS5hcmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0
cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2ViQXNzZW1ibHkuVGFnIHRvIG1hdGNoIHRo
ZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiBjb25zdHJ1Y3Rv
ciBleHBlY3RzIHRoZSBudW1iZXIgb2YgcGFyZW1ldGVycyBpbiBXZWJBc3NlbWJseS5UYWcgdG8g
bWF0Y2ggdGhlIHRhZ3MgcGFyYW1ldGVyIGNvdW50LiJfcyk7CiAKICAgICAvLyBBbnkgR0MnZCB2
YWx1ZXMgaW4gaGVyZSB3aWxsIGJlIG1hcmtlZCBieSB0aGUgTWFya2VkQXJ1Z2VtZW50QnVmZmVy
IHVudGlsIHN0b3JlZCBpbiB0aGUgRXhjZXB0aW9uLgogICAgIEZpeGVkVmVjdG9yPHVpbnQ2NF90
PiBwYXlsb2FkKHZhbHVlcy5zaXplKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwCmlu
ZGV4IDczMTExNTY3MDVjZjJhZmIwMmI4ODUwZGVkMTQxN2MwZWQwYjA5OGIuLjdlMWVmZDY3ZGRh
ODAwYjY3N2FmZTY2ZDYzY2E0ZjU0YTM2MWZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlw
ZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
d2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJcyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhj
ZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlKSB9Owog
CiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmx1dC5oCiAgQGJl
Z2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlFeGNlcHRpb24KQEAgLTE0Myw3ICsxNDMsNyBA
QCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJ
cywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgSlNXZWJBc3NlbWJseVRhZyogdGFnID0g
Z2V0VGFnKHZtLCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKTsKICAgICBpZiAoIXRhZykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBXZWJBc3Nl
bWJseS5UYWciKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50
IG11c3QgYmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJO
KHRocm93U2NvcGUsIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xlYW4oanNFeGNlcHRpb24tPnRhZygp
ID09IHRhZy0+dGFnKCkpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCmluZGV4IGM3ODczNzNmN2M5MmRhYmY0ZDQx
MDNjYWI3ZGNlODNmOGEzMDJkODMuLjg4OTEyMDdkYzEyMDNiNTE5MTM2NDE1ZmQ0MDM4YzVmNzNi
OTBjOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5RnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwCkBAIC01NCw3ICs1NCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxX
ZWJBc3NlbWJseUZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwCmluZGV4IGI1MzA2YjFmYzM4
YmZhMjczMWU5MjJiOTM3Zjc1OGQyOTAxMDYyMWYuLmE5NGJjNDMzYTM3ZTQzYTY3OWQ1OGU1MDZk
NWI5ZWY1NTJhYWQzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0aW9uQmFz
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RnVuY3Rpb25C
YXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RnVuY3Rpb25CYXNlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSkgfTsK
IAogV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2U6OldlYkFzc2VtYmx5RnVuY3Rpb25CYXNlKFZNJiB2
bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb24g
aW1wb3J0YWJsZUZ1bmN0aW9uKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCmluZGV4IDBiOTYzMWVh
NTQ2NTQ1Zjc2YTMyZTg3MmQzOTc4ZTBmNThjODA4ZWMuLjQ5ZWU4YjQ2MTA3MDczYjhhYzNlZDhl
NjBjYWM1MmY2YWExZWUzZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCkBAIC0zOSw3
ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFdlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2Vt
Ymx5R2xvYmFsKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFz
c2VtYmx5R2xvYmFsKTsKQEAgLTE0Miw3ICsxNDIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oY29uc3RydWN0SlNXZWJBc3NlbWJseUdsb2JhbCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YgogICAgICAgICAgICAgaWYgKGFyZ3VtZW50LmlzVW5kZWZpbmVkKCkpCiAgICAgICAgICAgICAg
ICAgYXJndW1lbnQgPSBkZWZhdWx0VmFsdWVGb3JSZWZlcmVuY2VUeXBlKHR5cGUpOwogICAgICAg
ICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9zdEZ1bmN0aW9uKHZtLCBhcmd1bWVudCkgJiYgIWFy
Z3VtZW50LmlzTnVsbCgpKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFs
T2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIp
KTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIl9zKSk7CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIHsgfTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGluaXRpYWxWYWx1
ZSA9IEpTVmFsdWU6OmVuY29kZShhcmd1bWVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAKaW5k
ZXggMThhNGQxZjkxZGZmZTRkNDg1YmM2N2M5OTExYmI4MDRkMjM5Y2RhMS4uYTViZGY5YjYzNjAw
NThlMjE0NWZjMGEyOTdlNjFiODJlZmRjYjk3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlLmNwcApA
QCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3Nl
bWJseUdsb2JhbFByb3RvRnVuY1R5cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eS5HbG9iYWwiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlR2xvYmFsV2ViQXNzZW1ibHlHbG9i
YWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGU6OnNfaW5m
byA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZUds
b2JhbFdlYkFzc2VtYmx5R2xvYmFsLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5R2xvYmFsUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5R2xv
YmFsUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZUdsb2JhbFdlYkFzc2VtYmx5R2xv
YmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUluc3RhbmNlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAppbmRleCA3NTIzMzMzMzJmZmY2Njg3
MGNkYTk1OTNlYWVjNzE0OTExMzVlZDRlLi5lMDBjNTg3YzEwM2IzM2E4NzhjNzNhMDZjNGQ0Y2Y2
OTU2MTI2MjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUlu
c3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
JmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2Us
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dl
YkFzc2VtYmx5SW5zdGFuY2UpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlJbnN0YW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCmluZGV4
IDY5Mzg4OTE1YTdmMDY0ZDRlMmIyNDEwOWQwOTQ4OGZlYzJlOTljNjkuLmFlNGI5MzFlNmNjNmE4
MjM2ZjczNDZiY2FlOWMyMzRlZDA3MTc0NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHdlYkFz
c2VtYmx5SW5zdGFuY2VQcm90b0dldHRlckV4cG9ydHMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2Vi
QXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eUluc3RhbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFu
Y2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIl9zLCAmQmFzZTo6
c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggODMwMzgxNDcxYmZhZGRjOGIzMzRiYmYxNmE1NWE1MGM3NzY3ZmFkYi4uNjQx
ZmE2MGMyM2FjY2EyODA5NzYxYzI3NGUyYjE4M2JlMTI1NGM3YyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJy
b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1i
bHlMaW5rRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlMaW5r
RXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TGlua0Vycm9yKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TGlua0Vy
cm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCAzOGQ4YWNhZjFlYmNhOGQz
MGVjZjgwOGQwODg3YjJmYjYyM2U2ZTJiLi40N2RlN2M1OTBhYjBiNDNiNmEzNjNkNWVhZDgzNjdh
ZDRkNTMzYTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5cGUuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlMaW5r
RXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkxpbmtFcnJvciIsICZCYXNl
OjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWJBc3NlbWJseS5MaW5rRXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TGlu
a0Vycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlM
aW5rRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzI4MjhhYzY3OWFjOWEw
M2I2OTkwMDdhZTIyMTUwZjY1MmRlMGZlMi4uNmU5NDdiNjRhNDEzNmQzNmE0ZDE1MzkxZmQyODE4
NDAzNjhiZjRmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1lbW9y
eUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25z
dHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1vcnksIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5
KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TWVt
b3J5KTsKQEAgLTc5LDcgKzc5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVj
dEpTV2ViQXNzZW1ibHlNZW1vcnksIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2IKICAgICAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAg
ICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1Vu
ZGVmaW5lZCgpKSB7CiAgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVk
LgotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlv
bnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3NlbWJseS5N
ZW1vcnkgJ2luaXRpYWwnIGFuZCAnbWluaW11bScgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGF0IHRo
ZSBzYW1lIHRpbWUiX3MpOwogICAgICAgICB9CiAgICAgICAgIGlmICghaW5pdFNpemVWYWx1ZS5p
c1VuZGVmaW5lZCgpKQogICAgICAgICAgICAgbWluU2l6ZVZhbHVlID0gaW5pdFNpemVWYWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVt
b3J5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlLmNwcAppbmRleCA3ZWNjYzNlMDhmY2Y5NDRkYTcwNWEzYTQzOWZh
ZDM1OGQzZjhiMzlhLi5hNzI2ZWVmMDIyYWI3NmE0OGZiYmE3MzBlNDk3YTY0MjQwMDc4ZWVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9y
eVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5TWVtb3J5UHJvdG9GdW5jVHlwZSk7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSIsICZCYXNlOjpzX2luZm8sICZwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcHJvdG90
eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAppbmRl
eCBkMzE3NTY1MGYzZDMzYjQxMThkMzRkNzg0NDhmYjE0MjZiN2I1ZTY5Li4xMWFjMTZhNzE5MDRj
NzUzZDkyNDhjYWRhOWI4M2RjYzUwZGEzNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNw
cApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RKU1dlYkFzc2VtYmx5TW9kdWxlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3Nl
bWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TW9kdWxlQ29uc3Ry
dWN0b3IubHV0LmgKICBAYmVnaW4gY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TW9kdWxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZS5jcHAKaW5kZXggYjA4OWU2NmJkZWM4ZTg4NmIyZWE2MjMxZjJmOTU0
NjMyZmU3NjMwMS4uOTZjZWI1ZjNmN2U3MTgxYTA1MmQyNmE3MzNlMDBiOTM1ZTJkY2EyMiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TW9kdWxlUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVX
ZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZv
LCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBX
ZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TW9kdWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAKaW5kZXggN2ZhODFlNzk3MzJiMjI1NTYz
MmE3NDhmNjkyZWJhYWI5ODNkNWY3Yi4uMjVlMDg5ZmEyMDcxYjNmNDdmNDU5ZWM2MzY4MThlYmRi
MTEzYTk5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNb2R1bGVSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcApAQCAtNDQsNyArNDQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQpIH07
Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5TW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkKSB9OwogCiBTdHJ1
Y3R1cmUqIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKQEAgLTQ2
Nyw3ICs0NjcsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXplRXhw
b3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgICAgICAgICAgLy8gV2UgY3Jl
YXRlIGEgVGFibGUgd2hlbiBpdCdzIGEgVGFibGUgZGVmaW5pdGlvbi4KICAgICAgICAgICAgIFJl
ZlB0cjxXYXNtOjpUYWJsZT4gd2FzbVRhYmxlID0gV2FzbTo6VGFibGU6OnRyeUNyZWF0ZShtb2R1
bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0uaW5pdGlhbCgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJs
ZXNbaV0ubWF4aW11bSgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0udHlwZSgpKTsKICAg
ICAgICAgICAgIGlmICghd2FzbVRhYmxlKQotICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRp
b24oY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRu
J3QgY3JlYXRlIFRhYmxlIikpOworICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRpb24oY3Jl
YXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRuJ3QgY3Jl
YXRlIFRhYmxlIl9zKSk7CiAgICAgICAgICAgICBKU1dlYkFzc2VtYmx5VGFibGUqIHRhYmxlID0g
SlNXZWJBc3NlbWJseVRhYmxlOjp0cnlDcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgZ2xvYmFsT2Jq
ZWN0LT53ZWJBc3NlbWJseVRhYmxlU3RydWN0dXJlKCksIHdhc21UYWJsZS5yZWxlYXNlTm9uTnVs
bCgpKTsKICAgICAgICAgICAgIC8vIFdlIHNob3VsZCBhbHdheXMgYmUgYWJsZSB0byBhbGxvY2F0
ZSBhIEpTV2ViQXNzZW1ibHlUYWJsZSB3ZSd2ZSBkZWZpbmVkLgogICAgICAgICAgICAgLy8gSWYg
aXQncyBkZWZpbmVkIHRvIGJlIHRvbyBsYXJnZSwgd2Ugc2hvdWxkIGhhdmUgdGhyb3duIGEgdmFs
aWRhdGlvbiBlcnJvci4KQEAgLTY2MSw3ICs2NjEsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxl
UmVjb3JkOjppbml0aWFsaXplRXhwb3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgV2FzbTo6Q2FsbGVlJiBlbWJlZGRlckVudHJ5
cG9pbnRDYWxsZWUgPSBjYWxsZWVHcm91cC0+ZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7CiAgICAgICAgICAgICBX
YXNtOjpXYXNtVG9XYXNtSW1wb3J0YWJsZUZ1bmN0aW9uOjpMb2FkTG9jYXRpb24gZW50cnlwb2lu
dExvYWRMb2NhdGlvbiA9IGNhbGxlZUdyb3VwLT5lbnRyeXBvaW50TG9hZExvY2F0aW9uRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7Ci0gICAgICAgICAgICBX
ZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1
Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291bnQoKSwgInN0YXJ0IiwgbV9pbnN0YW5jZS5n
ZXQoKSwgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBlbnRyeXBvaW50TG9hZExvY2F0aW9uLCBz
aWduYXR1cmVJbmRleCk7CisgICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlv
biA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50
Q291bnQoKSwgInN0YXJ0Il9zLCBtX2luc3RhbmNlLmdldCgpLCBlbWJlZGRlckVudHJ5cG9pbnRD
YWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9jYXRpb24sIHNpZ25hdHVyZUluZGV4KTsKICAgICAgICAg
ICAgIG1fc3RhcnRGdW5jdGlvbi5zZXQodm0sIHRoaXMsIGZ1bmN0aW9uKTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDRmYTVl
MzhkMWIxYjI5YmYwY2ZlOGJmNzgyNWE3NmQ4NjZkNGQzNy4uYWE3ZDhkYTUwZDRhOGRlYmFmZmNj
NjQyMjBiZmU3MDdkNWUxYTA0ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlSdW50aW1lRXJy
b3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcAppbmRl
eCAyMGMzNTk5N2Y2YjFlODk1MjkzNTU4MWI3MjE3YWRhMWMxZTZhOTRlLi5lYjc2MTNhZmI3OGQw
ZTc5ZmViYzYxMDFlZjNlMWQ1NWE4MmE3MGNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90
b3R5cGUuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5LlJ1bnRpbWVFcnJvciIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5UnVudGltZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5SdW50aW1l
RXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5UnVudGlt
ZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5UnVudGltZUVy
cm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5UnVudGltZUVycm9y
UHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCmluZGV4IDU5ZDliNzNhMDM2YjZlZWMyMzk4
NjMzZmE1NDhjZjQ1OTZkYTVkOTUuLmRhYWYwZmYwMTY4ZjEzNjM4ZTA4ZTIyZTdkZmM1NjYxZjRj
YmQ0NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcApAQCAtNDAsNyArNDAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFibGVDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JU
YWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFi
bGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZj
b25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5VGFibGUpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseVRhYmxlKTsKQEAgLTg5LDcg
Kzg5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlU
YWJsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAgICBKU1ZhbHVlIG1pblNpemVWYWx1
ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIG1pbmltdW1JZGVudCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICBpZiAoIWluaXRpYWxTaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhbWluU2l6ZVZhbHVlLmlz
VW5kZWZpbmVkKCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0n
IG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5
LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0
aGUgc2FtZSB0aW1lIl9zKTsKIAogICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkp
CiAgICAgICAgIGluaXRpYWxTaXplVmFsdWUgPSBtaW5TaXplVmFsdWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCmluZGV4IDRjYzUzYjdhYWMzM2Y2NWE2OGJkZmUzZDFhNGIzZGRmZGI5MGYwZDguLjNm
OWQwYWIwMjE4MTI2N2FhZGNhYzI5MzdiNDM0YzhjZjc1MmY2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHdlYkFzc2VtYmx5VGFibGVQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJB
c3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZVByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRh
YmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5VGFibGVQ
cm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0Nv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCmluZGV4IDc0ZGEwNWYyNzE3NWRlMjg5MGM1OWNmYmEwNTg2YmE5
ZTVhOTAwMzguLmQ2NzFlMGM0MjNjM2NhNjUwZDBlYWRhMmI3ZDU4ZmU1NDFkN2QzNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlU
YWdDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlUYWcpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c3RydWN0SlNXZWJBc3NlbWJseVRhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAKaW5kZXggZTRhNDYwN2Ew
MDVlMDg5OWMzNzVlN2YwZGViMzNhY2EzZTVlYTFhYy4uMjliNWYyZGRiZDMzNDRkZWY2ZGY5N2Qw
YTQwOTRiNzBjZDYwZjQyZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseVRhZ1Byb3RvRnVuY1R5
cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFn
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWciLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJs
eVRhZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIl9zLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJB
c3NlbWJseVRhZ1Byb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2Vt
Ymx5VGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVdyYXBwZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKaW5kZXggMmZiNmE0ZWM3YmI2MjdhOGNiODdl
ZDhkZjRiZTQ1OTU3ZDFmYzliZi4uYjVkNzhjZTQ4ZGE3MGQyNjljM2U1OTlkYTdmMzlkY2Y5MDA2
ZmI5ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlXcmFwcGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9u
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlXcmFwcGVy
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb246
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5V3JhcHBl
ckZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsV2Vi
QXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24pOwogCkBAIC00NSw3ICs0NSw3IEBAIFdlYkFzc2VtYmx5
V3JhcHBlckZ1bmN0aW9uOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbihWTSYgdm0sIE5hdGl2
ZUV4ZWN1dGFibGUqCiBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb246OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCogZnVuY3Rpb24sIHVuc2lnbmVkIGltcG9y
dEluZGV4LCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3RhbmNlLCBXYXNtOjpTaWduYXR1cmVJ
bmRleCBzaWduYXR1cmVJbmRleCkKIHsKICAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKCFmdW5jdGlv
bi0+aW5oZXJpdHM8V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24+KHZtKSwgIldlIHNob3VsZCBu
ZXZlciBkb3VibGUgd3JhcCBhIHdyYXBwZXIgZnVuY3Rpb24uIik7Ci0gICAgU3RyaW5nIG5hbWUg
PSAiIjsKKyAgICBTdHJpbmcgbmFtZSA9IGVtcHR5U3RyaW5nKCk7CiAgICAgTmF0aXZlRXhlY3V0
YWJsZSogZXhlY3V0YWJsZSA9IHZtLmdldEhvc3RGdW5jdGlvbihjYWxsV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24sIE5vSW50cmluc2ljLCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3Rvciwg
bnVsbHB0ciwgbmFtZSk7CiAgICAgV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHJlc3VsdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uPih2
bSkpIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmpl
Y3QsIHN0cnVjdHVyZSwgV2FzbTo6V2FzbVRvV2FzbUltcG9ydGFibGVGdW5jdGlvbiB7IHNpZ25h
dHVyZUluZGV4LCAmaW5zdGFuY2UtPmluc3RhbmNlKCkuaW1wb3J0RnVuY3Rpb25JbmZvKGltcG9y
dEluZGV4KS0+d2FzbVRvRW1iZWRkZXJTdHViIH0gKTsKICAgICBjb25zdCBXYXNtOjpTaWduYXR1
cmUmIHNpZ25hdHVyZSA9IFdhc206OlNpZ25hdHVyZUluZm9ybWF0aW9uOjpnZXQoc2lnbmF0dXJl
SW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4
cHJlc3Npb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Np
b24uY3BwCmluZGV4IGVlNGY1OGJkNDIwZDM5YTE0YWQ4MWVmY2FlN2QzNzhkN2YzOGNkZDcuLjM3
OTAzNmViMzZiODZiOGI3Yjc4NjIwMmUyNmJiOGYxNjc5NDMzMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKQEAgLTY0LDcgKzY0LDcg
QEAgcHJpdmF0ZToKIAogICAgICAgICBKU0M6OllhcnI6OllhcnJQYXR0ZXJuIHBhdHRlcm4ocGF0
dGVyblN0cmluZywgZmxhZ3MsIG1fY29uc3RydWN0aW9uRXJyb3JDb2RlKTsKICAgICAgICAgaWYg
KEpTQzo6WWFycjo6aGFzRXJyb3IobV9jb25zdHJ1Y3Rpb25FcnJvckNvZGUpKSB7Ci0gICAgICAg
ICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBpbGUgZmFpbGVkIHdp
dGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0aW9uRXJyb3JDb2Rl
KSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBp
bGUgZmFpbGVkIHdpdGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0
aW9uRXJyb3JDb2RlKS5jaGFyYWN0ZXJzKCkpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckVycm9yQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2Rl
LmNwcAppbmRleCA0ZjAzZTA3NDYyNDAwYjVjMTZlNGNmOWE2OGEzMjM4OTg0MWQxMTQ5Li41OTU3
OTQ0YmU3Y2E1MGVmMGYyYWJhZWY2NzNkOWNiZDMyZmMzZWUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcApAQCAtMzAsMzggKzMwLDM4IEBACiAKIG5h
bWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgWWFyciB7CiAKLWNvbnN0IGNoYXIqIGVycm9yTWVzc2Fn
ZShFcnJvckNvZGUgZXJyb3IpCitBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKEVycm9yQ29kZSBl
cnJvcikKIHsKICNkZWZpbmUgUkVHRVhQX0VSUk9SX1BSRUZJWCAiSW52YWxpZCByZWd1bGFyIGV4
cHJlc3Npb246ICIKICAgICAvLyBUaGUgb3JkZXIgb2YgdGhpcyBhcnJheSBtdXN0IG1hdGNoIHRo
ZSBFcnJvckNvZGUgZW51bS4KLSAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZXJyb3JNZXNz
YWdlc1tdID0gewotICAgICAgICBudWxscHRyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm9FcnJvcgotICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJyZWd1bGFyIGV4cHJlc3Npb24gdG9vIGxhcmdlIiwgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiLCAgICAg
ICAgICAgICAgICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJub3RoaW5nIHRvIHJlcGVhdCIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gUXVhbnRpZmllcldpdGhvdXRBdG9tCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggIm51bWJlciB0b28gbGFyZ2UgaW4ge30gcXVhbnRpZmllciIsICAgICAgICAgICAgICAgICAg
ICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW5j
b21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIFF1
YW50aWZpZXJJbmNvbXBsZXRlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm1pc3Npbmcg
KSIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNaXNzaW5n
UGFyZW50aGVzZXMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIF0gb3Ig
fSBicmFja2V0IGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIEJyYWNrZXRVbm1hdGNo
ZWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVudGhlc2VzIiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhcmVudGhlc2VzVW5tYXRjaGVkCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIg
KD8iLCAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRoZXNlc1R5cGVJbnZhbGlkCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZ3JvdXAgc3BlY2lmaWVyIG5hbWUiLCAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1lCi0gICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIgbmFtZSIsICAgICAgICAg
ICAgICAgICAgICAgICAvLyBEdXBsaWNhdGVHcm91cE5hbWUKLSAgICAgICAgUkVHRVhQX0VSUk9S
X1BSRUZJWCAibWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBjaGFyYWN0ZXIgY2xhc3MiLCAgICAg
ICAgICAgIC8vIENoYXJhY3RlckNsYXNzVW5tYXRjaGVkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggInJhbmdlIG91dCBvZiBvcmRlciBpbiBjaGFyYWN0ZXIgY2xhc3MiLCAgICAgICAgICAg
ICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJS
T1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3RlciBjbGFzcyBmb3IgVW5pY29kZSBw
YXR0ZXJuIiwgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZUludmFsaWQKLSAgICAgICAgUkVHRVhQX0VS
Uk9SX1BSRUZJWCAiXFwgYXQgZW5kIG9mIHBhdHRlcm4iLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIEVzY2FwZVVudGVybWluYXRlZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJpbnZhbGlkIFVuaWNvZGUgXFx1IGVzY2FwZSIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1e30gZXNjYXBlIiwgICAgICAgICAgICAgIC8v
IEludmFsaWRVbmljb2RlQ29kZVBvaW50RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggImludmFsaWQgYmFja3JlZmVyZW5jZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAg
ICAvLyBJbnZhbGlkQmFja3JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIFxcazw+IG5hbWVkIGJhY2tyZWZlcmVuY2UiLCAgICAgICAgICAgICAgICAgICAgLy8g
SW52YWxpZE5hbWVkQmFja1JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgLy8g
SW52YWxpZElkZW50aXR5RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFs
aWQgb2N0YWwgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAvLyBJbnZh
bGlkT2N0YWxFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGMg
ZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250
cm9sTGV0dGVyRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJv
cGVydHkgZXhwcmVzc2lvbiIsICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5p
Y29kZVByb3BlcnR5RXhwcmVzc2lvbgotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ0b28g
bWFueSBuZXN0ZWQgZGlzanVuY3Rpb25zIiwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVG9v
TWFueURpc2p1bmN0aW9ucwotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJwYXR0ZXJuIGV4
Y2VlZHMgc3RyaW5nIGxlbmd0aCBsaW1pdHMiLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9v
TGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRSZWd1bGFyRXhwcmVz
c2lvbkZsYWdzCisgICAgc3RhdGljIGNvbnN0IEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2VzW10g
PSB7CisgICAgICAgIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vRXJyb3IKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9uIHRvbyBsYXJnZSJfcywgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCisgICAgICAgIFJFR0VYUF9FUlJP
Ul9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAg
ICAgICAgICAgIC8vIFF1YW50aWZpZXJPdXRPZk9yZGVyCisgICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggIm5vdGhpbmcgdG8gcmVwZWF0Il9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vIFF1YW50aWZpZXJXaXRob3V0QXRvbQorICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAgICAgICAgICAg
ICAgICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW5jb21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iX3MgICAgICAgICAg
Ly8gUXVhbnRpZmllckluY29tcGxldGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibWlz
c2luZyApIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g
TWlzc2luZ1BhcmVudGhlc2VzCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hl
ZCBdIG9yIH0gYnJhY2tldCBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgIC8vIEJyYWNr
ZXRVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVu
dGhlc2VzIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNV
bm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5yZWNvZ25pemVkIGNoYXJh
Y3RlciBhZnRlciAoPyJfcywgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNUeXBl
SW52YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGdyb3VwIHNwZWNp
ZmllciBuYW1lIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1l
CisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIg
bmFtZSJfcywgICAgICAgICAgICAgICAgICAgICAgIC8vIER1cGxpY2F0ZUdyb3VwTmFtZQorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJtaXNzaW5nIHRlcm1pbmF0aW5nIF0gZm9yIGNoYXJh
Y3RlciBjbGFzcyJfcywgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1VubWF0Y2hlZAorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJyYW5nZSBvdXQgb2Ygb3JkZXIgaW4gY2hhcmFjdGVy
IGNsYXNzIl9zLCAgICAgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRl
cgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3Rl
ciBjbGFzcyBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlSW52
YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJcXCBhdCBlbmQgb2YgcGF0dGVybiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFc2NhcGVVbnRlcm1pbmF0ZWQK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIFxcdSBlc2NhcGUi
X3MsICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKKyAg
ICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1
e30gZXNjYXBlIl9zLCAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVDb2RlUG9pbnRFc2Nh
cGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBiYWNrcmVmZXJlbmNlIGZv
ciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAgICAgLy8gSW52YWxpZEJhY2tyZWZlcmVuY2UK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGs8PiBuYW1lZCBiYWNrcmVm
ZXJlbmNlIl9zLCAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZE5hbWVkQmFja1JlZmVyZW5j
ZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVy
IGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAvLyBJbnZhbGlkSWRlbnRpdHlFc2NhcGUK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBvY3RhbCBlc2NhcGUgZm9yIFVu
aWNvZGUgcGF0dGVybiJfcywgICAgICAgICAgICAgLy8gSW52YWxpZE9jdGFsRXNjYXBlCisgICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxjIGVzY2FwZSBmb3IgVW5pY29kZSBw
YXR0ZXJuIl9zLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250cm9sTGV0dGVyRXNjYXBlCisg
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJvcGVydHkgZXhwcmVzc2lvbiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlUHJvcGVydHlFeHBy
ZXNzaW9uCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInRvbyBtYW55IG5lc3RlZCBkaXNq
dW5jdGlvbnMiX3MsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvb01hbnlEaXNqdW5jdGlv
bnMKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicGF0dGVybiBleGNlZWRzIHN0cmluZyBs
ZW5ndGggbGltaXRzIl9zLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9vTGFyZ2UKKyAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyJfcyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MK
ICAgICB9OwogCiAgICAgcmV0dXJuIGVycm9yTWVzc2FnZXNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGVycm9yKV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJy
b3JDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmgKaW5k
ZXggZDI3N2ZjYmM0ZGNhODNiZDg4MzA5N2M3YzAwM2FkMzY3OWJiNTVmOS4uZWJmZjU5NmU1ZTQx
ZjViOWE0MjJjZjcyNGZkMWRjNzRiNTAyMTIzNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95
YXJyL1lhcnJFcnJvckNvZGUuaApAQCAtMjUsNiArMjUsOCBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKIG5hbWVzcGFjZSBKU0MgewogCiBjbGFzcyBDYWxs
RnJhbWU7CkBAIC02Myw3ICs2NSw3IEBAIGVudW0gY2xhc3MgRXJyb3JDb2RlIDogdWludDhfdCB7
CiAgICAgSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MsCiB9OwogCi1KU19FWFBPUlRfUFJJ
VkFURSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKK0pTX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKIGlubGluZSBib29sIGhh
c0Vycm9yKEVycm9yQ29kZSBlcnJvckNvZGUpCiB7CiAgICAgcmV0dXJuIGVycm9yQ29kZSAhPSBF
cnJvckNvZGU6Ok5vRXJyb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVz
YWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmgKaW5kZXggODNkMmE2ZGI5ODUw
NTk4MDhlNTg5ZjE4NmZkZWIwOTgyZGY1MTU4Ni4uZWU1MWZiYjhkZGUwZDYyNzRiZmQ2YmJjYWMx
YjhiMjhmMTYwMTlhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1Jlc291cmNlVXNhZ2UuaApAQCAtMjYsNiArMjYsNyBAQAog
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzksNyArNDAsNyBAQCBzdHJ1Y3QgVGFnSW5mbyB7
CiAgICAgc2l6ZV90IHJlc2VydmVkIHsgMCB9OwogfTsKIAotV1RGX0VYUE9SVF9QUklWQVRFIGNv
bnN0IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQpOworV1RGX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkKTsKIFdURl9FWFBP
UlRfUFJJVkFURSBzaXplX3Qgdm1QYWdlU2l6ZSgpOwogV1RGX0VYUE9SVF9QUklWQVRFIHN0ZDo6
YXJyYXk8VGFnSW5mbywgMjU2PiBwYWdlc1BlclZNVGFnKCk7CiBXVEZfRVhQT1JUX1BSSVZBVEUg
dm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2
PiYsIGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2Nv
Y29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAKaW5kZXggMzE0MDdiYWFkNTQwNzQ2Yjg1OTc2ZGQ4
OTNhYzQ4OTk0YmIxNzcwMy4uNDhjZmI2NDdjNTY5MzhlNjY0NGZkMTIwYzE0NjU3YzI4OGYxMTM5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNw
cAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwCkBAIC02
OSwzNiArNjksMzYgQEAgdm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJy
YXk8VGFnSW5mbywgMjU2PiYgYmVmb3JlLCBjb25zdCBzdGQ6OmEKICAgICB9CiB9CiAKLWNvbnN0
IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQorQVNDSUlMaXRlcmFsIGRp
c3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQogewogICAgIHN3aXRjaCAodGFnKSB7Ci0g
ICAgY2FzZSBWTV9NRU1PUllfQ0dJTUFHRTogcmV0dXJuICJDRyBpbWFnZSI7Ci0gICAgY2FzZSBW
TV9NRU1PUllfQ09SRUdSQVBISUNTX0RBVEE6IHJldHVybiAiQ0cgcmFzdGVyIGRhdGEiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJWSUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0RZTElCOiByZXR1cm4gImR5bGliIjsKLSAgICBjYXNlIFZNX01FTU9S
WV9GT1VOREFUSU9OOiByZXR1cm4gIkZvdW5kYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0lN
QUdFSU86IHJldHVybiAiSW1hZ2VJTyI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSU9BQ0NFTEVSQVRP
UjogcmV0dXJuICJJT0FjY2VsZXJhdG9yIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT1NVUkZBQ0U6
IHJldHVybiAiSU9TdXJmYWNlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJ
T0tpdCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9DT1JFOiByZXR1cm4gIkdpZ2Fj
YWdlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9FWEVDVVRBQkxFX0FMTE9D
QVRPUjogcmV0dXJuICJKU0MgSklUIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJ
VF9SRUdJU1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiOwotICAgIGNhc2UgVk1fTUVNT1JZX0xB
WUVSS0lUOiByZXR1cm4gIkNvcmVBbmltYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0xJQkRJ
U1BBVENIOiByZXR1cm4gImxpYmRpc3BhdGNoIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfSFVHRTogcmV0dXJu
ICJtYWxsb2MgKGh1Z2UpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTEFSR0U6IHJldHVy
biAibWFsbG9jIChsYXJnZSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJVU06IHJl
dHVybiAibWFsbG9jIChtZWRpdW0pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTkFOTzog
cmV0dXJuICJtYWxsb2MgKG5hbm8pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfU01BTEw6
IHJldHVybiAibWFsbG9jIChzbWFsbCkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19USU5Z
OiByZXR1cm4gIm1hbGxvYyAodGlueSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX09TX0FMTE9DX09O
Q0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1FMSVRFOiBy
ZXR1cm4gIlNRTGl0ZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1RBQ0s6IHJldHVybiAiU3RhY2si
OwotICAgIGNhc2UgVk1fTUVNT1JZX1RDTUFMTE9DOiByZXR1cm4gImJtYWxsb2MiOwotICAgIGNh
c2UgVk1fTUVNT1JZX1VOU0hBUkVEX1BNQVA6IHJldHVybiAicG1hcCAodW5zaGFyZWQpIjsKLSAg
ICBkZWZhdWx0OiByZXR1cm4gbnVsbHB0cjsKKyAgICBjYXNlIFZNX01FTU9SWV9DR0lNQUdFOiBy
ZXR1cm4gIkNHIGltYWdlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVHUkFQSElDU19EQVRB
OiByZXR1cm4gIkNHIHJhc3RlciBkYXRhIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJW
SUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRFlMSUI6
IHJldHVybiAiZHlsaWIiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRk9VTkRBVElPTjogcmV0dXJu
ICJGb3VuZGF0aW9uIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0lNQUdFSU86IHJldHVybiAiSW1h
Z2VJTyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0FDQ0VMRVJBVE9SOiByZXR1cm4gIklPQWNj
ZWxlcmF0b3IiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9TVVJGQUNFOiByZXR1cm4gIklPU3Vy
ZmFjZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJT0tpdCJfczsKKyAg
ICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0NPUkU6IHJldHVybiAiR2lnYWNhZ2UiX3M7Cisg
ICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfRVhFQ1VUQUJMRV9BTExPQ0FUT1I6IHJl
dHVybiAiSlNDIEpJVCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9SRUdJ
U1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTEFZRVJL
SVQ6IHJldHVybiAiQ29yZUFuaW1hdGlvbiJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9MSUJESVNQ
QVRDSDogcmV0dXJuICJsaWJkaXNwYXRjaCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19IVUdFOiByZXR1
cm4gIm1hbGxvYyAoaHVnZSkiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX0xBUkdFOiBy
ZXR1cm4gIm1hbGxvYyAobGFyZ2UpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJ
VU06IHJldHVybiAibWFsbG9jIChtZWRpdW0pIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExP
Q19OQU5POiByZXR1cm4gIm1hbGxvYyAobmFubykiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFM
TE9DX1NNQUxMOiByZXR1cm4gIm1hbGxvYyAoc21hbGwpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X01BTExPQ19USU5ZOiByZXR1cm4gIm1hbGxvYyAodGlueSkiX3M7CisgICAgY2FzZSBWTV9NRU1P
UllfT1NfQUxMT0NfT05DRTogcmV0dXJuICJvc19hbGxvY19vbmNlIl9zOworICAgIGNhc2UgVk1f
TUVNT1JZX1NRTElURTogcmV0dXJuICJTUUxpdGUiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfU1RB
Q0s6IHJldHVybiAiU3RhY2siX3M7CisgICAgY2FzZSBWTV9NRU1PUllfVENNQUxMT0M6IHJldHVy
biAiYm1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9VTlNIQVJFRF9QTUFQOiByZXR1cm4g
InBtYXAgKHVuc2hhcmVkKSJfczsKKyAgICBkZWZhdWx0OiByZXR1cm4gQVNDSUlMaXRlcmFsOjpu
dWxsKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmlu
Z0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmluZGV4IGM3NmNkNTIz
Njc2MTFjOTQyZDM0MmJmMDkxYjE2MmEwYTY3NzQ0ZTAuLjhkODBmNzg3NzgzZDQzYzU2MmY4ZTBj
ZDNlMzY3NWI5NzZiYTgyNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC00MzEsNyAr
NDMxLDcgQEAgcHVibGljOgogICAgIHNpemVfdCBmaW5kKGNoYXIgY2hhcmFjdGVyLCB1bnNpZ25l
ZCBzdGFydCA9IDApOwogICAgIHNpemVfdCBmaW5kKFVDaGFyIGNoYXJhY3RlciwgdW5zaWduZWQg
c3RhcnQgPSAwKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZpbmQoQ29kZVVuaXRN
YXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBpbmRleCA9IDApOwotICAgIHNpemVfdCBmaW5kKGNvbnN0
IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAwKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6
ZV90IGZpbmQoY29uc3QgTENoYXIqLCB1bnNpZ25lZCBpbmRleCA9IDApOwogICAgIEFMV0FZU19J
TkxJTkUgc2l6ZV90IGZpbmQoY29uc3QgY2hhciogc3RyaW5nLCB1bnNpZ25lZCBpbmRleCA9IDAp
IHsgcmV0dXJuIGZpbmQocmVpbnRlcnByZXRfY2FzdDxjb25zdCBMQ2hhcio+KHN0cmluZyksIGlu
ZGV4KTsgfQogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzaXplX3QgZmluZChTdHJpbmdJbXBsKik7
CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5kKFN0cmluZ0ltcGwqLCB1bnNpZ25l
ZCBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKaW5kZXggM2E5MWE2NzdkNWMwMzhl
MDNiN2M1ZWIzMmYzNzMzYmVmYzA4Y2E1NS4uYjQyMjYxNzhmNTliNTBlMjg3NzM0ODEzNmE5Y2E4
NzE5ZDc2NmU0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcApAQCAtODAsNyArODAsNyBA
QCBTdHJpbmc6OlN0cmluZyhjb25zdCBjaGFyKiBudWxsVGVybWluYXRlZFN0cmluZykKIH0KIAog
U3RyaW5nOjpTdHJpbmcoQVNDSUlMaXRlcmFsIGNoYXJhY3RlcnMpCi0gICAgOiBtX2ltcGwoU3Ry
aW5nSW1wbDo6Y3JlYXRlRnJvbUxpdGVyYWwoY2hhcmFjdGVycykpCisgICAgOiBtX2ltcGwoY2hh
cmFjdGVycy5pc051bGwoKSA/IG51bGxwdHIgOiBTdHJpbmdJbXBsOjpjcmVhdGVGcm9tTGl0ZXJh
bChjaGFyYWN0ZXJzKSkKIHsKIH0KIApAQCAtNDY1LDMxICs0NjUsMzEgQEAgU3RyaW5nIFN0cmlu
Zzo6bnVtYmVyKHVuc2lnbmVkIGxvbmcgbG9uZyBudW1iZXIpCiBTdHJpbmcgU3RyaW5nOjpudW1i
ZXJUb1N0cmluZ0ZpeGVkUHJlY2lzaW9uKGZsb2F0IG51bWJlciwgdW5zaWduZWQgcHJlY2lzaW9u
LCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1Bv
bGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51
bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwgdHJh
aWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsKKyAg
ICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHBy
ZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0
ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4
ZWRQcmVjaXNpb24oZG91YmxlIG51bWJlciwgdW5zaWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1pl
cm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAg
ICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvRml4ZWRQ
cmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwgdHJhaWxpbmdaZXJvc1Ry
dW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsKKyAgICByZXR1cm4gU3Ry
aW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVm
ZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVy
b3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlcihmbG9hdCBudW1iZXIpCiB7CiAgICAg
TnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwotICAgIHJldHVybiBudW1iZXJUb1N0cmluZyhu
dW1iZXIsIGJ1ZmZlcik7CisgICAgcmV0dXJuIFN0cmluZyB7IG51bWJlclRvU3RyaW5nKG51bWJl
ciwgYnVmZmVyKSB9OwogfQogCiBTdHJpbmcgU3RyaW5nOjpudW1iZXIoZG91YmxlIG51bWJlcikK
IHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRv
U3RyaW5nKG51bWJlciwgYnVmZmVyKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9TdHJp
bmcobnVtYmVyLCBidWZmZXIpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5n
Rml4ZWRXaWR0aChkb3VibGUgbnVtYmVyLCB1bnNpZ25lZCBkZWNpbWFsUGxhY2VzKQogewogICAg
IE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFdp
ZHRoU3RyaW5nKG51bWJlciwgZGVjaW1hbFBsYWNlcywgYnVmZmVyKTsKKyAgICByZXR1cm4gU3Ry
aW5nIHsgbnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwgZGVjaW1hbFBsYWNlcywgYnVm
ZmVyKSB9OwogfQogCiBkb3VibGUgU3RyaW5nOjp0b0RvdWJsZShib29sKiBvaykgY29uc3QKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmggYi9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L1dURlN0cmluZy5oCmluZGV4IDUxMWI5YzE2NGExYTU4YzExZDRjZmQ1MzIxZTMyZjUy
N2I0YzllZDYuLjQxZWQzNWNjYTZlOWY3MWYyNmVkZGJkMzVhNzhhZTZhZTY0NzgwODEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKKysrIGIvU291cmNlL1dURi93
dGYvdGV4dC9XVEZTdHJpbmcuaApAQCAtMTcxLDYgKzE3MSw3IEBAIHB1YmxpYzoKIAogICAgIHNp
emVfdCBmaW5kKENvZGVVbml0TWF0Y2hGdW5jdGlvbiBtYXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBz
dGFydCA9IDApIGNvbnN0IHsgcmV0dXJuIG1faW1wbCA/IG1faW1wbC0+ZmluZChtYXRjaEZ1bmN0
aW9uLCBzdGFydCkgOiBub3RGb3VuZDsgfQogICAgIHNpemVfdCBmaW5kKGNvbnN0IExDaGFyKiBz
dHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBs
LT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91bmQ7IH0KKyAgICBzaXplX3QgZmluZChjb25z
dCBjaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBs
ID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91bmQ7IH0KIAogICAgIC8vIEZp
bmQgdGhlIGxhc3QgaW5zdGFuY2Ugb2YgYSBzaW5nbGUgY2hhcmFjdGVyIG9yIHN0cmluZy4KICAg
ICBzaXplX3QgcmV2ZXJzZUZpbmQoVUNoYXIgY2hhcmFjdGVyLCB1bnNpZ25lZCBzdGFydCA9IE1h
eExlbmd0aCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5yZXZlcnNlRmluZChjaGFy
YWN0ZXIsIHN0YXJ0KSA6IG5vdEZvdW5kOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvV29ya2xldEdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IGFj
MDUwNWQ1NDk2NDIzZmM1ZmRlZTY2MzBlYjdmOTUzODAyMTMzNTguLmZmOTM3MTBmMjA5NzQ2YmFh
ZWY5YTY2YzU3Y2QwMjRjMDk1M2NiMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCkBAIC0xNDYs
NyArMTQ2LDcgQEAgUmVmUHRyPEF1ZGlvV29ya2xldFByb2Nlc3Nvcj4gQXVkaW9Xb3JrbGV0R2xv
YmFsU2NvcGU6OmNyZWF0ZVByb2Nlc3Nvcihjb25zdCBTdHIKICAgICBhcmdzLmFwcGVuZChhcmcp
OwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwogCi0gICAgYXV0byogb2JqZWN0
ID0gSlNDOjpjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBqc0NvbnN0cnVjdG9yLCBhcmdzLCAiRmFp
bGVkIHRvIGNvbnN0cnVjdCBBdWRpb1dvcmtsZXRQcm9jZXNzb3IiKTsKKyAgICBhdXRvKiBvYmpl
Y3QgPSBKU0M6OmNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGpzQ29uc3RydWN0b3IsIGFyZ3MsICJG
YWlsZWQgdG8gY29uc3RydWN0IEF1ZGlvV29ya2xldFByb2Nlc3NvciJfcyk7CiAgICAgQVNTRVJU
KCEhc2NvcGUuZXhjZXB0aW9uKCkgPT0gIW9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgbnVsbHB0cik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCmluZGV4IGY1NTNjMjVkZTc5ZjczMWMwNzlmNWFl
MGZlMWUxOGEwYzcwYzVkNjUuLjI0YTQxYWI4N2ZmNTkxOTFiOGVhYmU4ZmNlMThlZTY0YmIyOTBm
ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNv
bnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGlu
Q29uc3RydWN0b3IuaApAQCAtOTgsNyArOTgsNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNz
PiBpbmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSgog
ICAgICAgICByZXR1cm4geyB9OwogCiAgICAgYXV0byoganNPYmplY3QgPSBKU0NsYXNzOjpjcmVh
dGUoc3RydWN0dXJlLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSk7Ci0gICAgSlNDOjpjYWxs
KGxleGljYWxHbG9iYWxPYmplY3QsIGNhc3RlZFRoaXMtPmluaXRpYWxpemVGdW5jdGlvbigpLCBq
c09iamVjdCwgSlNDOjpBcmdMaXN0KGNhbGxGcmFtZSksICJUaGlzIGVycm9yIHNob3VsZCBuZXZl
ciBvY2N1cjogaW5pdGlhbGl6ZSBmdW5jdGlvbiBpcyBndWFyYW50ZWVkIHRvIGJlIGNhbGxhYmxl
LiIpOworICAgIEpTQzo6Y2FsbChsZXhpY2FsR2xvYmFsT2JqZWN0LCBjYXN0ZWRUaGlzLT5pbml0
aWFsaXplRnVuY3Rpb24oKSwganNPYmplY3QsIEpTQzo6QXJnTGlzdChjYWxsRnJhbWUpLCAiVGhp
cyBlcnJvciBzaG91bGQgbmV2ZXIgb2NjdXI6IGluaXRpYWxpemUgZnVuY3Rpb24gaXMgZ3VhcmFu
dGVlZCB0byBiZSBjYWxsYWJsZS4iX3MpOwogICAgIHJldHVybiBKU0M6OkpTVmFsdWU6OmVuY29k
ZShqc09iamVjdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
R2xvYmFsT2JqZWN0LmNwcAppbmRleCBiMjYyNmZlYjRhMDUzNzM4ZWE3ZGVkMTgyNzc4NjVjNGY4
MTM0YjU4Li43MWFiMTJiMTUwZjBlNzJmZGE5NTdjOTk0MWEwNDA3YmI0YjRlY2JkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCkBAIC04
Miw3ICs4Miw3IEBAIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZ2V0SW50ZXJuYWxXcml0YWJs
ZVN0cmVhbSk7CiBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdoZW5TaWduYWxBYm9ydGVkKTsK
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaXNBYm9ydFNpZ25hbCk7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpT
R2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNET01HbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01HbG9iYWxPYmpl
Y3Q6OnNfaW5mbyA9IHsgIkRPTUdsb2JhbE9iamVjdCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmpl
Y3QpIH07CiAKIEpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUdsb2JhbE9iamVjdChWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV3JhcHBlcldvcmxkPiYmIHdvcmxkLCBjb25zdCBH
bG9iYWxPYmplY3RNZXRob2RUYWJsZSogZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCiAgICAgOiBK
U0dsb2JhbE9iamVjdCh2bSwgc3RydWN0dXJlLCBnbG9iYWxPYmplY3RNZXRob2RUYWJsZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCmluZGV4IGVk
MGUyNzRhNzg0NTY4MGE4OTUzOTBkNjBkMTJjYWIyNjQ3YWY1ZGUuLjU3ZDBiNjQ5OTg1ZmUwNmMy
NzQ4NWJhN2JmNmJmNzgxZjI0Mjg3ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtNjgsNyArNjgsNyBAQAogbmFtZXNwYWNlIFdlYkNv
cmUgewogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93
QmFzZTo6c19pbmZvID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dCYXNlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93Il9zLCAm
SlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0RPTVdpbmRvd0Jhc2UpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRh
YmxlIEpTRE9NV2luZG93QmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAm
c3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwCmluZGV4IDUxMjVhYzhjOTBkYWQzMjNkMDY2
MDJlYTEwZDdlZjBkM2Q1Zjc5ZDguLjI4N2JmYjA2NTBlZDUwMjBjYzYzYmY4ZDJlNjc4OWE3ZGVh
MjY0OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93
UHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5k
b3dQcm9wZXJ0aWVzLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3Bl
cnRpZXM6OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93UHJvcGVydGllcykg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3BlcnRpZXM6OnNfaW5mbyA9IHsgIldp
bmRvd1Byb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm9wZXJ0aWVzKSB9OwogCiAvLyBodHRwczovL2h0
bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93aW5kb3ctb2JqZWN0Lmh0bWwjZG9tLXdpbmRv
dy1uYW1lZGl0ZW0KIHN0YXRpYyBib29sIGpzRE9NV2luZG93UHJvcGVydGllc0dldE93blByb3Bl
cnR5U2xvdE5hbWVkSXRlbUdldHRlcihKU0RPTVdpbmRvd1Byb3BlcnRpZXMqIHRoaXNPYmplY3Qs
IERPTVdpbmRvdyYgd2luZG93LCBKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwg
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
SXRlcmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwCmluZGV4IGI1MDE5MDU5YzEzNWVlNzZhYmVhMzNhOTUz
ZjI1MDMzYTE1N2VkODguLjZlYmFkYjUxOGNkZDJhOWYyZjRkY2ZiNWE3YjIwYTE0NjAyMmMyNDkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAKQEAgLTQzLDExICs0MywxMSBA
QCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGVJdGVyYXRvcl9vblByb21pc2VSZQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5cGVOZXh0LCBKU0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4K
LWNvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
QmFzZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGly
ZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIkRpcmVjdG9yeSBIYW5k
bGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yKSB9OworY29uc3Qg
SlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlOjpz
X2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0
ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVy
YXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBKU0M6OkNs
YXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGVJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogR0NDbGllbnQ6Oklzb1N1YnNwYWNlKiBKU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjo6c3Vic3BhY2VGb3JJbXBsKFZNJiB2bSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXph
dGlvbkdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNl
cmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCmluZGV4IDQxNGY2ZDNkNTM0NmQ2YzI4NGVlMmM4
YTc4NTQ0YzYxYzgwYTM5NzAuLmEwN2E3NTRiODE2YmM5Mzk5YjliNDZmZWU0YjQzMGY1Mzc3ZmQ0
MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXph
dGlvbkdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkpTSURCU2VyaWFsaXph
dGlvbkdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVj
dCkgfTsKIAogaW5saW5lIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6SlNJREJTZXJp
YWxpemF0aW9uR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxE
T01XcmFwcGVyV29ybGQ+JiYgaW1wbCkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3Rl
RE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlbW90ZURP
TVdpbmRvd0Jhc2UuY3BwCmluZGV4IGE0ZDcxNWY3MDhjNjBjMDI4NjU3OWNmMTU5MDM1NzcwMGI3
ZDU0YWQuLjNlMTEwNDBkOWUxYWVmYzJiMzVmNWU1ZGQ5NzcxYzgxZDhhMjA0MzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZW1vdGVET01XaW5kb3dCYXNlLmNw
cApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9
IHsgIldpbmRvdyIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUmVtb3RlRE9NV2luZG93QmFzZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyJfcywgJkpT
RE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNSZW1vdGVET01XaW5kb3dCYXNlKSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUg
PSB7CiAgICAgbnVsbHB0ciwgLy8gc2hlbGxTdXBwb3J0c1JpY2hTb3VyY2VJbmZvCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVC
YXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZUJhc2UuY3BwCmluZGV4IDgzZjk0ZTMxMDhmOGU0NThkNmQyNDdhMzlmMDJiOTU1YTNhNjFh
MTEuLjMzMDRiN2I4ODhlOWNhM2I1ZTRmZTNlMzdmODNhYTllY2IyYjQ0N2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZUJhc2UuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNp
bmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAmSlNET01HbG9i
YWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2hhZG93
UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUi
X3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UpIH07CiAKIGNvbnN0IEds
b2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfZ2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dpbmRvd1Byb3h5LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCmluZGV4IDQ2OTlk
OGVkYjUxZjIzZDE4OTM3ZGI4N2JmYTZiODhmYWIxNDgwYTYuLjI3MjFiNzc2YWU2N2FiNjZmZDM1
YmVjYzQxZjE3YzE0N2YyYTM1ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTV2luZG93UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
V2luZG93UHJveHkuY3BwCkBAIC01MCw3ICs1MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
dXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2luZG93UHJveHk6OnNf
aW5mbyA9IHsgIkpTV2luZG93UHJveHkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2luZG93UHJveHkpIH07Citjb25zdCBDbGFzc0luZm8g
SlNXaW5kb3dQcm94eTo6c19pbmZvID0geyAiSlNXaW5kb3dQcm94eSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dpbmRvd1Byb3h5KSB9
OwogCiBpbmxpbmUgSlNXaW5kb3dQcm94eTo6SlNXaW5kb3dQcm94eShWTSYgdm0sIFN0cnVjdHVy
ZSYgc3RydWN0dXJlLCBET01XcmFwcGVyV29ybGQmIHdvcmxkKQogICAgIDogQmFzZSh2bSwgJnN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2Vy
R2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2Vy
R2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCA5NmNkZjZlMDA3YjQyMDYxNWY0YTUzNjRhN2I5YThj
ZGZjNjIzMDQwLi5iNDFlZDNlODQyNDAzY2Y1YTJkNTE2ZjYzMDFhMDEwZjc2M2Y1ZTAwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFz
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29w
ZUJhc2UuY3BwCkBAIC00Myw3ICs0Myw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBu
YW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6
OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxT
Y29wZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNf
aW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9zLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNj
b3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrZXJHbG9i
YWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRz
UmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCAwOThiZjYzYjYwY2QzYzY2ZDg2NjQ1
ZDVmNTU4MmIwNjM1ODZmYTEwLi5iNjRjMmFhZWFkYTgxNDE3MjliNjkzYWYxMWE1NDFjNzc3ZjM0
NTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9i
YWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2xl
dEdsb2JhbFNjb3BlQmFzZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xv
YmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmSlNET01HbG9i
YWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1dvcmtsZXRHbG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xv
YmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiX3MsICZKU0RPTUds
b2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9k
VGFibGUgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxl
ID0gewogICAgICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA0NmEwYTVhZDFlMTVh
YTZiM2QwMTY1MGFiZWY1ZDAxMTNhZjRkMWRhLi4wNzNlMTU4ZTMxYTUzMmMyYjMzODU3ODdhOTc5
MmM0MzIzMDY0YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtNDU1NCw3ICs0NTU0LDcgQEAgc3ViIEdlbmVyYXRlSW1w
bGVtZW50YXRpb24KICAgICAgICAgJG9iamVjdC0+R2VuZXJhdGVIYXNoVGFibGUoJGNsYXNzTmFt
ZSwgJGhhc2hOYW1lLCAkaGFzaFNpemUsIFxAaGFzaEtleXMsIFxAaGFzaFNwZWNpYWxzLCBcQGhh
c2hWYWx1ZTEsIFxAaGFzaFZhbHVlMiwgXCVjb25kaXRpb25hbHMsIFwlcmVhZFdyaXRlQ29uZGl0
aW9uYWxzLCAkanVzdEdlbmVyYXRlVmFsdWVBcnJheSk7CiAKICAgICAgICAgbXkgJHByb3RvdHlw
ZUhhc2hUYWJsZSA9ICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5ID8gIm51bGxwdHIiIDogIiYke2Ns
YXNzTmFtZX1Qcm90b3R5cGVUYWJsZSI7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiY29u
c3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlzaWJs
ZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sICR7cHJvdG90eXBlSGFzaFRhYmxlfSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5c
biIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNvbnN0IENsYXNzSW5mbyAke2NsYXNz
TmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVwiX3Ms
ICZCYXNlOjpzX2luZm8sICR7cHJvdG90eXBlSGFzaFRhYmxlfSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5cbiIpOwogCiAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAidm9pZCAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSlcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwpAQCAt
NDY0OCw3ICs0NjQ4LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICB9CiAKICAg
ICAjIC0gSW5pdGlhbGl6ZSBzdGF0aWMgQ2xhc3NJbmZvIG9iamVjdAotICAgIHB1c2goQGltcGxD
b250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUiIC4gIjo6c19pbmZvID0geyBcIiR7
dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sICIpOworICAgIHB1c2goQGlt
cGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUiIC4gIjo6c19pbmZvID0geyBc
IiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5mbywgIik7CiAKICAgICBp
ZiAoJG51bUluc3RhbmNlUHJvcGVydGllcyA+IDApIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICImJHtjbGFzc05hbWV9VGFibGUiKTsKQEAgLTY4MzAsMTEgKzY4MzAsMTEgQEAgdXNpbmcg
JHtpdGVyYXRvclByb3RvdHlwZU5hbWV9ID0gSlNET01JdGVyYXRvclByb3RvdHlwZTwke2NsYXNz
TmFtZX0sICR7aXRlcmF0b3IKIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKCR7aXRlcmF0b3JQ
cm90b3R5cGVOYW1lfU5leHQsICR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfTo6bmV4dCk7CiAKIHRl
bXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JOYW1lfUJhc2U6OnNfaW5m
byA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yTmFtZX1CYXNl
KSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9OjpzX2luZm8gPSB7ICIk
e3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9KSB9OworY29uc3Qg
SlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9QmFzZTo6c19pbmZvID0geyAiJHt2aXNpYmxl
SW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9QmFzZSkgfTsKK2NvbnN0IEpT
Qzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJm
YWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9KSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25z
dCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX06OnNfaW5mbyA9IHsgIiR7
dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX0pIH07
Citjb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX06OnNfaW5mbyA9
IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7aXRlcmF0b3JQcm90b3R5cGVO
YW1lfSkgfTsKIAogRU5ECiAKQEAgLTc4MzEsNyArNzgzMSw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0
cnVjdG9ySGVscGVyTWV0aG9kcwogICAgICAgICAkbGVhc3RDb25zdHJ1Y3Rvckxlbmd0aCA9IDA7
CiAgICAgfQogCi0gICAgcHVzaChAJG91dHB1dEFycmF5LCAidGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRl
cmZhY2VOYW1lfVwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKCR7Y29uc3RydWN0b3JDbGFzc05hbWV9KSB9O1xuXG4iKTsKKyAgICBwdXNoKEAk
b3V0cHV0QXJyYXksICJ0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyAke2NvbnN0cnVjdG9yQ2xh
c3NOYW1lfTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NvbnN0cnVj
dG9yQ2xhc3NOYW1lfSkgfTtcblxuIik7CiAKICAgICAjIElmIHRoZSBpbnRlcmZhY2UgaGFzIGEg
cGFyZW50IGludGVyZmFjZSB3aGljaCBkb2VzIG5vdCBoYXZlIFtMZWdhY3lOb0ludGVyZmFjZU9i
amVjdF0sIHRoZW4gdXNlIGl0cyBpbnRlcmZhY2Ugb2JqZWN0IGFzIHByb3RvdHlwZSwKICAgICAj
IG90aGVyd2lzZSB1c2UgRnVuY3Rpb25Qcm90b3R5cGU6IGh0dHA6Ly9oZXljYW0uZ2l0aHViLmlv
L3dlYmlkbC8jaW50ZXJmYWNlLW9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5jcHAKaW5kZXggNzc4N2UxZGYwN2Q4
YjUzNTVhNzg4MjU4Yzg4OGNmNTA1OTIzODU4Mi4uMGZlYTAyNTk1NmIwMTU5OWU3YjU2MDM4NTQz
ODYxMzZhMmEwMTExMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuY3BwCkBAIC0xNDcsNyArMTQ3LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTRE9NV2luZG93VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRE9NV2luZG93VGFibGUgPSB7IDEyLCAzMSwgdHJ1ZSwg
SlNET01XaW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dUYWJsZVZhbHVlcywgSlNET01XaW5kb3dU
YWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0RPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01XaW5kb3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTE3Nyw3ICsxNzcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNET01XaW5kb3dQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNET01X
aW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNET01XaW5k
b3dQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRv
d1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1Byb3RvdHlw
ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93UHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTRE9NV2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC0xODYsNyArMTg2LDcgQEAgdm9pZCBKU0RPTVdpbmRvd1Byb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3c6OnNfaW5mbyA9IHsgIkRPTVdp
bmRvdyIsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1RhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRE9NV2luZG93KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93
OjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1Rh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93KSB9OwogCiBKU0RP
TVdpbmRvdzo6SlNET01XaW5kb3coVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERP
TVdpbmRvdz4mJiBpbXBsLCBKU1dpbmRvd1Byb3h5KiBwcm94eSkKICAgICA6IEpTRXZlbnRUYXJn
ZXQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSwgcHJveHkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggMmRjYmE5ZjY0MGZhMTAwODRlOGNi
NWRhMGI4MDUzZjVkMWI4ODk5OS4uOTI4NjhkNTc3NzU2YWNjNzA0YmMyMmU4MTcyMmZiYjJlMWUw
Yjg1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcApA
QCAtNzQsNyArNzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNEZWRpY2F0ZWRX
b3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hU
YWJsZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpT
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVJbmRl
eCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTEwNCw3ICsxMDQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAog
c3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6Omlu
Zm8oKSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBK
U0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3Qg
Q2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHZvaWQgSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFs
U2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6c19p
bmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZK
U0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKIAogSlNEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZTo6SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlLCBSZWY8RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU+JiYgaW1wbCkK
ICAgICA6IEpTV29ya2VyR2xvYmFsU2NvcGUodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4
cG9zZWRTdGFyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U0V4cG9zZWRTdGFyLmNwcAppbmRleCBlNWZjMzVjOGFlOWMzMWIwZDE4NzI2NmZmMTk3YjkzMDAw
MzYyNzJiLi40NjlhMTIxZjI0OTVlNmI0MjhhZWVmNjIwODhhZDA1ZmU1NGNhNzA4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rh
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhw
b3NlZFN0YXIuY3BwCkBAIC05MSw3ICs5MSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUsIEpTRXhwb3NlZFN0YXJQcm90b3R5CiAK
IHVzaW5nIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RD
b25zdHJ1Y3RhYmxlPEpTRXhwb3NlZFN0YXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4
cG9zZWRTdGFyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhw
b3NlZFN0YXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRXhwb3Nl
ZFN0YXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRTdGFyUHJvdG90eXBlVGFi
bGVWYWx1ZXNbXSA9CiAgICAgeyAib3BlcmF0aW9uSnVzdEZvcldvcmtlckNvbnRleHRzIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc0V4
cG9zZWRTdGFyUHJvdG90eXBlRnVuY3Rpb25fb3BlcmF0aW9uSnVzdEZvcldvcmtlckNvbnRleHRz
KSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0
YXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IkV4cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNFeHBvc2Vk
U3RhclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQzLDcgKzE0Myw3
IEBAIHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0
YXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6c19pbmZvID0geyAiRXhwb3Nl
ZFN0YXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNFeHBvc2VkU3RhcikgfTsKIAogSlNFeHBvc2VkU3Rhcjo6SlNFeHBvc2VkU3RhcihT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PEV4cG9zZWRTdGFyPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFu
ZFdpbmRvdy5jcHAKaW5kZXggZWI4N2Q2Yzg3ZmI1ZTA4ZDMwYTg4N2U3NzMzNTFkYWU2ZjU4OGE3
NC4uZmYxMTQ4NWM1ZTY4ZGM1N2JhYmYyYWVhNGM2NTY1NTkwNDMxN2FiZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3BwCkBAIC0xNTEsNyArMTUxLDcgQEAgdGVt
cGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNFeHBvc2Vk
VG9Xb3JrZXJBbmRXaW5kb3dET00KIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTRXhw
b3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTRXhwb3NlZFRv
V29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRX
aW5kb3dET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhw
b3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRU
b1dvcmtlckFuZFdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTc2LDcgKzE3Niw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlw
ZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRvU29tZXRoaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc0V4cG9zZWRUb1dvcmtlckFu
ZFdpbmRvd1Byb3RvdHlwZUZ1bmN0aW9uX2RvU29tZXRoaW5nKSwgKGludHB0cl90KSAoMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ciLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ci
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNFeHBvc2Vk
VG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTE4NSw3ICsxODUsNyBAQCB2b2lkIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvdzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtl
ckFuZFdpbmRvdykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRv
dzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93KSB9OwogCiBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdzo6SlNFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3coU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwCmluZGV4IDdhNTZhNzliNmJhMWZmOWU1NmI0YTI3MWMyMjE4ZDRkNGY2ODI2YTUuLjM1
YjYzOGVmNjRkNDE0M2JhNzI0OTFmOTY1NjAzMDAwMGUxM2NkNDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNj
b3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQ
YWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTczLDcgKzczLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0K
IH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRh
YmxlID0geyAyLCAzLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNQYWludFdvcmtsZXRHbG9iYWxT
Y29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xv
YmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xMDMsNyArMTAzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25z
dCBIYXNoVGFibGUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAx
LCAxLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNQYWludFdvcmtsZXRHbG9iYWxT
Y29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1BhaW50V29ya2xl
dEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29w
ZSIsICZCYXNlOjpzX2luZm8sICZKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1BhaW50V29ya2xldEdsb2JhbFNjb3Bl
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6
OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2b2lkIEpTUGFpbnRXb3JrbGV0
R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNj
b3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlBh
aW50V29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGUpIH07CiAKIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OkpTUGFpbnRX
b3JrbGV0R2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFBhaW50
V29ya2xldEdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtsZXRHbG9iYWxTY29wZSh2
bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZS5jcHAKaW5kZXggOTk4NjVkMWUwYmZiYjQ1OWVhM2QyYjJmMTcwZTA0ODBmMGEx
ZTgzNC4uZmVhZjE3OTFhOGI1ZTBjYzJkNzY3ZmMxMTJkZmZhNWU3MDFlNmMwZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03Myw3ICs3Myw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxl
VmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1NlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTAzLDcgKzEwMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFs
dWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNv
bnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZv
ID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTExMiw3ICsxMTIsNyBAQCB2b2lkIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5m
bywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGUpIH07CiAKIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpKU1NlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8U2VydmljZVdvcmtlckds
b2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtlckdsb2JhbFNjb3BlKHZtLCBzdHJ1Y3R1
cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3Bw
CmluZGV4IDg5MWEyMzJkYTllN2ViZGI5ZjMzMWNlOTIxN2RkZDBiYzM3NTkzYWEuLmI1OTk0MjU3
ZTI4MGQ0ZjQwZDI5NzAzMmE1YTlkYTljMGI4MjE5MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGUuY3BwCkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0
YXRpYyBjb25zdCBIYXNoVGFibGUgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlVGFibGUgPSB7IDIs
IDMsIHRydWUsIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYWRvd1JlYWxt
R2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlVGFibGVJbmRl
eCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3Bl
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93
UmVhbG1HbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtOTIsNyArOTIsNyBAQCB0ZW1w
bGF0ZTw+IHZvaWQgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OmluaXRp
YWxpemVQcm9wZXJ0aWVzKFZNJgogICAgIHB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+
cHJvdG90eXBlLCBnbG9iYWxPYmplY3QuZ2V0UHJvdG90eXBlRGlyZWN0KHZtKSwgSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51
bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbUds
b2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsg
IlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1NoYWRvd1JlYWxt
R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGUpIH07CiAKIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6SlNTaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8U2hhZG93UmVhbG1H
bG9iYWxTY29wZT4odm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2Jh
bFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBhMDI0OTQwNjJkZDdkZDYyMzJkMWViYTQw
MjU2YjMwZGEzNTBjYjBjLi43YTM1ZTQ5YjQ0MDJmODQzN2Q2ZmNiYzZiYTBhYjVkMTA2ZjkzYmFk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03NCw3ICs3
NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNTaGFyZWRXb3JrZXJHbG9i
YWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpT
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNj
b3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTA0LDcgKzEwNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZTo6
aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpT
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFz
c0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTaGFyZWRXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNTaGFy
ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xv
YmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJH
bG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTMsNyArMTEzLDcgQEAg
dm9pZCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdvcmtlckds
b2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3Jr
ZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5m
bywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKSB9OwogCiBKU1NoYXJlZFdvcmtlckds
b2JhbFNjb3BlOjpKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFJlZjxTaGFyZWRXb3JrZXJHbG9iYWxTY29wZT4mJiBpbXBsKQogICAgIDogSlNX
b3JrZXJHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rp
b25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
RVJlYWN0aW9ucy5jcHAKaW5kZXggMWI4ZjYxYTZmYTBiNWYwOTg4YjQxZDU4YjAxYTUyYzc2ODM0
YjFlMi4uZDY0OWYxZDMzMDJmMmE4NGYzODQwYTI2Mjg0NWI3ZjVkN2EyMWExYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rp
b25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q0VSZWFjdGlvbnMuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5cGUsIEpTVGVzdENFUmVh
Y3Rpb24KIAogdXNpbmcgSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25zPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNDMsNyArMTQzLDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAibWV0aG9kV2l0aENFUmVhY3Rpb25zTm90TmVlZGVkIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RDRVJlYWN0
aW9uc1Byb3RvdHlwZUZ1bmN0aW9uX21ldGhvZFdpdGhDRVJlYWN0aW9uc05vdE5lZWRlZCksIChp
bnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9u
c1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1By
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xNTIsNyArMTUyLDcgQEAgdm9pZCBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnM6OnNf
aW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnMpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9ucyJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RDRVJlYWN0aW9ucykgfTsKIAogSlNUZXN0Q0VSZWFjdGlvbnM6OkpTVGVzdENFUmVhY3Rpb25z
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdENFUmVhY3Rpb25zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENFUmVh
Y3Rpb25zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0
aW9uc1N0cmluZ2lmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcAppbmRleCBkMDMzZWY4M2Y5MWMy
OTQ5NzZjMWZjN2Q5ZGY1NDBlMzUxNGU4ZGQ1Li40MTBmNjE5MjYxNzY1NmQyN2MzYWU5NjRmOTJh
MTAyMzI0Y2Q5NDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGUsIEpTVGVzCiAKIHVzaW5n
IEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RD
RVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3Ry
aW5naWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTIyLDcgKzEyMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDRVJl
YWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9TdHJp
bmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGVGdW5jdGlvbl90b1N0cmlu
ZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJl
YWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnNT
dHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMSw3ICsxMzEsNyBAQCB2b2lk
IEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OnNfaW5mbyA9IHsg
IlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXIpIH07CiAKIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OkpTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QsIFJlZjxUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcj4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNwcAppbmRleCA4Nzcz
ZjQxNDkxNmI1YmYwZWZjYTVjYWJkMmY5NmE5Y2M5YzA2OWFlLi43MTZjMDdlZGZhZDQ1MWZhMTlk
ZmYzZmM4OWJiNDk5OTZiMjlmNThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuY3BwCkBAIC0xMjYs
NyArMTI2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxUcmFjZXJD
b25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogCiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsVHJhY2Vy
Ojp0ZXN0Q29uc3RWYWx1ZSA9PSBmYWxzZSwgInRlc3RDb25zdFZhbHVlIGluIFRlc3RDYWxsVHJh
Y2VyIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dENhbGxUcmFjZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdENhbGxUcmFjZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5
cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0ZXN0
Q29uc3RWYWx1ZSIsIEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0
YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZykoZmFsc2UpIH0gfSwKIH07CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0Q2FsbFRyYWNlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENhbGxUcmFjZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE3Myw3ICsxNzMsNyBAQCB2b2lk
IEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENhbGxUcmFjZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxs
VHJhY2VyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXI6OnNfaW5mbyA9IHsg
IlRlc3RDYWxsVHJhY2VyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXIpIH07CiAKIEpTVGVzdENhbGxUcmFjZXI6
OkpTVGVzdENhbGxUcmFjZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q2FsbFRyYWNlcj4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3RDYWxsVHJhY2VyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2UuY3BwCmluZGV4IGNmMjdjNjYz
OTc0NTdhNDQ2NTM5MDQ5ODUyNDJmMGVkMGQzNmM4NzguLjQ4YjRjMmY3ODE3YTc0NzNjMGNhMzU1
NGFkNmM0OGVmOGY2ZjIzZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrSW50ZXJmYWNlLmNw
cApAQCAtMTUzLDcgKzE1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RD
YWxsYmFja0ludGVyZmFjZUNvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiBzdGF0aWNfYXNzZXJ0
KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RBTlQxID09IDEsICJDT05TVEFOVDEgaW4gVGVz
dENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiBzdGF0
aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RBTlQyID09IDIsICJDT05TVEFO
VDIgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURM
Iik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNl
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFja0ludGVyZmFjZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2Fs
bGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RDYWxsYmFja0ludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsYmFja0ludGVyZmFjZURPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYTMyYjJkOGI4OTU0YWExNmQy
NGFlYWU5ZjgwYjQ0NDgxMTk2ZTBlZS4uODIxMTBkMzQ2Njg5YTUzZDUwYzAyN2Q1MzcyZDkwNTNm
MjJjMGM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3IuY3BwCkBAIC04NCw3ICs4NCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBl
CiAKIHVzaW5nIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25z
dHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpT
QnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNz
V2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25z
dHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRhYmxlVmFsCiAgICAgeyAi
Y29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9y
Q29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0
VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRo
SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIyLDcgKzEyMiw3IEBAIHZvaWQgSlNUZXN0Q2xhc3NX
aXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IpIH07CiAKIEpTVGVzdENsYXNz
V2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9u
YWxJbmNsdWRlcy5jcHAKaW5kZXggMDQ2ZjczYzY0ZTg5OTgyYjQ4ZmIxYjdjNTI2OTQzYWUzMTQw
OTU5Zi4uZGFiNWNlMjEyOWViMmNmOGQwN2ZhNDU5MGVlMjMyZTM5Yzk1OWQ4OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlv
bmFsSW5jbHVkZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNwcApAQCAtMTc4LDcgKzE3OCw3IEBAIHN0
YXRpY19hc3NlcnQoVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OkNPTlNUX0lNUEwgPT0gMiwgIkNP
TlNUX0lNUEwgaW4gVGVzdENvbmRpCiBzdGF0aWNfYXNzZXJ0KFRlc3RDb25kaXRpb25hbEluY2x1
ZGVzOjpQQVJUSUFMX01JWElOX0NPTlNUQU5UX0ZST01fUEFSVElBTCA9PSA1LCAiUEFSVElBTF9N
SVhJTl9DT05TVEFOVF9GUk9NX1BBUlRJQUwgaW4gVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMgZG9l
cyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKICNlbmRpZgogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRp
b25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbElu
Y2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMzAzLDcgKzMwMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1
ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29u
ZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25k
aXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxJbmNs
dWRlcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTQ1MCw3ICs0NTAsNyBAQCB2b2lkIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5j
bHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25h
bEluY2x1ZGVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6
OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5j
bHVkZXMpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OkpTVGVzdENvbmRpdGlvbmFs
SW5jbHVkZXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcz4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3RDb25kaXRpb25hbEluY2x1ZGVzPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRl
LmNwcAppbmRleCBjNWM3YjZiYTk4MmQyNDlkODliYjczZTk2Mjk3MWQ5Y2Q0ZjY0OGJmLi5kYTYx
ZDY5MzY3OTM5Nzg0MWEwMzA1MmQxMjRkZTExMTUyNzA4MjYwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwCkBAIC0xMzksNyArMTM5LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZVZh
bHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZVRhYmxlID0geyAyLCA3LCB0cnVlLCBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlOjppbmZvKCksIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZVZhbHVlcywgSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xODEsNyArMTgxLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3Jp
dGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJzZXR0aW5nc0NvbmRpdGlvbmFsbHlS
ZWFkV3JpdGVBdHRyaWJ1dGVQcm9taXNlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RDb25kaXRpb25h
bGx5UmVhZFdyaXRlX3NldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVByb21p
c2UpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PihzZXRKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRpbmdzQ29uZGl0aW9uYWxseVJl
YWRXcml0ZUF0dHJpYnV0ZVByb21pc2UpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0
aW9uYWxseVJlYWRXcml0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5
UmVhZFdyaXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3Jp
dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzMyw3ICsyMzMsNyBA
QCB2b2lkIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OnNfaW5m
byA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVh
ZFdyaXRlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGUpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OkpTVGVzdENvbmRpdGlv
bmFsbHlSZWFkV3JpdGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZT4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKaW5kZXggNzNlNDQ0M2Mx
ZTA2NzBkMTkwZjI0MmI5OTY3ODRmNDA5ZjdiZjc4ZS4uOGI5YzM0NWU0NWUzN2JmZWU5ZmI0NWU1
YTVjZDNmY2E1NjZhNjIxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKQEAgLTUwMSw3ICs1MDEsNyBAQCBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RET01KSVRQcm90b3R5cGUs
IEpTVGVzdERPTUpJVFByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3RET01KSVRET01Db25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERPTUpJVD47CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTU2NCw3ICs1NjQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RE9N
SklUUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZ2V0RWxlbWVudHNCeU5hbWUiLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24gfCBK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01KSVRGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChp
bnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RE9NSklUUHJvdG90
eXBlRnVuY3Rpb25fZ2V0RWxlbWVudHNCeU5hbWUpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PGNv
bnN0IEpTQzo6RE9NSklUOjpTaWduYXR1cmUqPigmRE9NSklUU2lnbmF0dXJlRm9yVGVzdERPTUpJ
VEdldEVsZW1lbnRzQnlOYW1lKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RE9N
SklUUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVRQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdERPTUpJVFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RET01KSVRQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTU3Myw3ICs1NzMsNyBAQCB2
b2lkIEpTVGVzdERPTUpJVFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVQpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERPTUpJVCkgfTsKIAogSlNUZXN0RE9NSklUOjpKU1Rlc3RET01KSVQoU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RE9NSklUPiYm
IGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1w
bCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAKaW5kZXggZWE1YTI1NGRhODFlYzRkNGVi
MmRkZjUyNWI2MmE4YjBjZjQzY2RkYS4uM2QzYzQzYzg1ODk2MGM5ZDdmZjg0MmM5NGNjZGFmMjZk
NWNiNmIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmNwcApAQCAtMTQ0LDcgKzE0NCw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pT
T05Qcm90b3R5cGUsIEpTVGVzdERlZmF1bHRUCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05E
T01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERl
ZmF1bHRUb0pTT04+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0
VG9KU09ORE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
ZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZh
dWx0VG9KU09OIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTkwLDcgKzE5MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9K
U09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0
cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Q
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09O
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Qcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMjE2LDcgKzIxNiw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRv
SlNPTlByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVm
YXVsdFRvSlNPTjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pT
T04pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTjo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT04iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTikgfTsKIAogSlNUZXN0RGVmYXVs
dFRvSlNPTjo6SlNUZXN0RGVmYXVsdFRvSlNPTihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OPiYmIGltcGwp
CiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcAppbmRleCA5NTg1NzRiYzZkODcwNjk5NDk3YTAx
OWQ2Mjg0NTI1NzdiNmEzODMxLi5jZDM2NzVjNmM3OWIxOTczNGU5ZjhmYTkzMDA0MmJmYWRhYTgz
MmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVk
QnlFeHBvc2VkLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cAog
CiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT05G
aWx0ZXJlZEJ5RXhwb3NlZD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVy
ZWRCeUV4cG9zZWRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRU
b0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMyw3ICsxMjMsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBl
VGFibGVWYQogICAgIHsgInRvSlNPTiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRv
SlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4
cG9zZWRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pT
T05GaWx0ZXJlZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6
c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZh
dWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZDo6SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD4mJiBpbXBsKQogICAgIDogSlNET01XcmFw
cGVyPFRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQ+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5jcHAKaW5kZXggMzIzZWYwODJjMWJjN2YxNWY2
ZTJkNmQxMmM4NWM1MjYwM2UyMWQ0ZS4uZGY5ZjJkOGRmNDZlZmJlMGNiZTJmOWExZDZhN2JiODIy
ZGQwZjc2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTklu
ZGlyZWN0SW5oZXJpdGFuY2UuY3BwCkBAIC04Miw3ICs4Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
UHJvdG90CiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZURPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA1LDcg
KzEwNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09O
SW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZVRhYmxlCiAgICAgeyAiY29uc3RydWN0b3IiLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlQ29uc3RydWN0b3Ip
LCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJl
Y3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJp
dGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE0LDcgKzExNCw3IEBAIHZvaWQgSlNU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRh
bmNlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlOjpzX2luZm8gPSB7ICJUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2UpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
OjpKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZShTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9K
U09OSW5kaXJlY3RJbmhlcml0YW5jZT4mJiBpbXBsKQogICAgIDogSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmNwcAppbmRleCBkZTk3ZDIzZGRjNTgzYzA5
YTM2NDc3YjVmZTdiMjAwZTA0YWRlNWZlLi4zNDk0NjU4ODY1ZDQxMzRhNjVkYTBkZGY1ZTNlYjdm
YTUwNDAxNjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5jcHAK
QEAgLTEwOSw3ICsxMDksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZSwgSlNUZXN0RAogCiB1c2luZyBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9N
Q29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNCw3ICsxMzQsNyBAQCBzdGF0
aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5
cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b0pTT04iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0UHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0Myw3ICsx
NDMsNyBAQCB2b2lkIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6c19p
bmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6c19pbmZv
ID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
KSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6SlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+JiYgaW1wbCkKICAgICA6IEpTVGVzdERl
ZmF1bHRUb0pTT04oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAKaW5kZXggNzgz
YzlkYjk0ZDM2M2UxYzExYTk4NmYzZjgzOGE4MDZlZjRmN2FkNi4uNTg0MzE3Y2Y3ZGEyNjFmNDM2
NTliZTA1Y2EyYWYyYTRiZWY5ZWIxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsLmNwcApAQCAtMTExLDcgKzExMSw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90
b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0RmluYWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM3LDcgKzEz
Nyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdEZpbmFsUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZh
dWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90
KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZp
bmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ2LDcgKzE0Niw3
IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5h
bDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0RmluYWwpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCkgfTsKIAogSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRGaW5hbDo6SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbChTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZh
dWx0VG9KU09OSW5oZXJpdEZpbmFsPiYmIGltcGwpCiAgICAgOiBKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0
ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRl
LmNwcAppbmRleCA4ZTZmZTM5MWJlMTAwZjM2MmRmMzIwZmY5NjUwODQyMTQ4NjlkNjU4Li44ZDgw
OGQwYTQ5NjgzYzdkY2ViMzZhZjU1NDliY2VlNmJlZjE3MDllIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuY3BwCkBA
IC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90CiAKIHVzaW5nIEpTVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNB
dHRyaWJ1dGU+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRv
U2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsK
IAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRy
aWJ1dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE5LDcgKzExOSw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlUHJvdG90eXBlVGFiCiAgICAgeyAicHJvcGVydHk1Iiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yIHwgSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RE9NQXR0cmlidXRlKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3REZWxlZ2F0
ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0dHJpYnV0ZTIpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPihzZXRKU1Rlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0dHJpYnV0ZTIpIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lk
IEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OnNfaW5m
byA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVn
YXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUpIH07CiAKIEpTVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGU6OkpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRy
aWJ1dGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZT4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRl
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0
eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9t
YWluU2VjdXJpdHkuY3BwCmluZGV4IDVjNTA0MGNlNjNlY2EyZmYwOTNiYTkyMGU4ZjRkMzczMTM1
MzkwMDIuLmQzY2NmNjAwY2Q1ZDhhYThmNDdjNmJlNGNiNGVhNDk2OGYwNTk0YWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5T
ZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcApAQCAtMTE0LDcgKzExNCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlVmFsdWVzW10gPQogfTsK
IAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlID0geyAx
LCAxLCB0cnVlLCBKU1Rlc3REb21haW5TZWN1cml0eTo6aW5mbygpLCBKU1Rlc3REb21haW5TZWN1
cml0eVRhYmxlVmFsdWVzLCBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlSW5kZXggfTsKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3Vy
aXR5RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
b21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTQxLDcgKzE0MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REb21haW5T
ZWN1cml0eVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIm92ZXJsb2FkZWRNZXRob2Qi
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlRnVuY3Rpb25fb3ZlcmxvYWRlZE1ldGhvZCks
IChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REb21haW5T
ZWN1cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REb21h
aW5TZWN1cml0eVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REb21haW5TZWN1
cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFp
blNlY3VyaXR5UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBK
U1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHk6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0
eSIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5KSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERvbWFpblNlY3VyaXR5OjpzX2luZm8gPSB7ICJUZXN0RG9tYWluU2VjdXJpdHki
X3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5KSB9OwogCiBKU1Rlc3REb21h
aW5TZWN1cml0eTo6SlNUZXN0RG9tYWluU2VjdXJpdHkoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RG9tYWluU2VjdXJpdHk+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RG9tYWluU2VjdXJpdHk+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRp
bmcuY3BwCmluZGV4IDlmMjY4ODk3ODQ0MTQ0ZTBkMThkNTljMTJkMmZjZjk4ZjIwNmEyZmIuLjA1
Y2EyOThiYjY0OWVlNmQ1NWQwMjFiNTRlZTc0YmU3YzAzMzI5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5n
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RW5hYmxlZEJ5U2V0dGluZy5jcHAKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVjdG9yVGFibGVWYWx1ZXNb
XSA9CiAKIHN0YXRpY19hc3NlcnQoVGVzdEVuYWJsZWRCeVNldHRpbmc6OmVuYWJsZWRCeVNldHRp
bmdDb25zdGFudCA9PSAwLCAiZW5hYmxlZEJ5U2V0dGluZ0NvbnN0YW50IGluIFRlc3RFbmFibGVk
QnlTZXR0aW5nIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNl
dHRpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xODMsNyArMTgzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVz
dEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJlbmFibGVk
QnlTZXR0aW5nQ29uc3RhbnQiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcpKDApIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1Byb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzNiw3ICsyMzYsNyBAQCB2b2lkIEpTVGVzdEVuYWJs
ZWRCeVNldHRpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0aW5nIiwg
JkJhc2U6OnNfaW5mbywgJkpTVGVzdEVuYWJsZWRCeVNldHRpbmdUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0
aW5nIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1RhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmcpIH07CiAKIEpT
VGVzdEVuYWJsZWRCeVNldHRpbmc6OkpTVGVzdEVuYWJsZWRCeVNldHRpbmcoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RW5hYmxl
ZEJ5U2V0dGluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RFbmFibGVkQnlTZXR0
aW5nPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9y
Q29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHQuY3BwCmluZGV4IDNhZjdkYjM0MzE5NzFiZjY0NThiNWEzZTdm
MjZiYjgyMTI3NTAzNzguLmUxOTUxMDY5ZTlmMWJjMDk0ODRkNGM0MGYzMTA3NDcyMDk1Yjc2ZGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFbmFibGVkRm9yQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNwcApAQCAtODYsNyArODYsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dFByb3RvdHlwZSwgSlNUZXN0RW5hYgogCiB1c2luZyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4
dERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0
RW5hYmxlZEZvckNvbnRleHQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RF
bmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZv
ckNvbnRleHQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEVuYWJsZWRG
b3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsx
MTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4o
anNUZXN0RW5hYmxlZEZvckNvbnRleHRDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEVuYWJsZWRGb3JDb250ZXh0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3RFbmFibGVkRm9y
Q29udGV4dFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RW5hYmxlZEZvckNvbnRleHQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEZvckNv
bnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9y
Q29udGV4dCkgfTsKIAogSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OkpTVGVzdEVuYWJsZWRGb3JD
b250ZXh0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdEVuYWJsZWRGb3JDb250ZXh0PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdEVuYWJsZWRGb3JDb250ZXh0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAppbmRleCBjODhlZDIx
Y2NmOWEwOTZhMzM2YmI0MzBjNzA3YzMyZmQzZWFiOWI2Li5kZTg3YzkxOTg1YzdjZGViMTAyOWJl
MzkzNTAyMzJmOTg5ZjkwNDlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3Bw
CkBAIC0xOTQsNyArMTk0LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMX0FUVFJJQlVURVMgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnMKIH0KIEpTQ19BTk5P
VEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvckNv
bnN0cnVjdCwgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3Qp
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENv
bnN0cnVjdG9yRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVu
dENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjI0LDcgKzIyNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRDb25zdHJ1
Y3RvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9y
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3RvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENv
bnN0cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lk
IEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENv
bnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEV2ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEV2ZW50Q29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OkpTVGVzdEV2
ZW50Q29uc3RydWN0b3IoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0RXZlbnRDb25zdHJ1Y3Rvcj4mJiBpbXBsKQogICAgIDogSlNF
dmVudChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdl
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZl
bnRUYXJnZXQuY3BwCmluZGV4IDdiZmQxZTkyMDQxODg1ZTJhZjZjMmQ1MGJjMDMyMGM0NmM5OTNl
MjAuLjVhY2NmMGU2NTIxODhlOWM5YzQwODRlYzA2N2MwNjg3MjkwZjlkNmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdl
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEV2ZW50VGFyZ2V0LmNwcApAQCAtOTMsNyArOTMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSwgSlNUZXN0RXZlbnRUYXJn
ZQogCiB1c2luZyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RXZlbnRUYXJnZXQ+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXRET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0K
ICAgICB7ICJpdGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05h
dGl2ZUZ1bmN0aW9uPihqc1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZUZ1bmN0aW9uX2l0ZW0pLCAo
aW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJn
ZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXRQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0Ojpz
X2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0KSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RXZlbnRUYXJnZXQpIH07CiAKIEpTVGVzdEV2ZW50VGFyZ2V0OjpKU1Rlc3RFdmVudFRhcmdl
dChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RFdmVudFRhcmdldD4mJiBpbXBsKQogICAgIDogSlNFdmVudFRhcmdldChzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKaW5k
ZXggMTFkYzVlYWVmZjczZTVmM2YwZGYwODFiZGM2ZDE1OWNiMDE5MDczZi4uOTdjZjhkMzViMTUy
Y2QxMDVlOWQyYjAyODRjMmMwOWJiMzRkYmE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKQEAg
LTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0
RXhjZXB0aW9uUHJvdG90eXBlLCBKU1Rlc3RFeGNlcHRpb25Qcm8KIAogdXNpbmcgSlNUZXN0RXhj
ZXB0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxK
U1Rlc3RFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNl
cHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4Y2VwdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXhjZXB0
aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RF
eGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4Y2VwdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RF
eGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV4
Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyArMTEx
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEV4Y2VwdGlvblByb3RvdHlw
ZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIm5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpD
dXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5v
SW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVl
RnVuYz4oanNUZXN0RXhjZXB0aW9uX25hbWUpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RF
eGNlcHRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvblByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEV4Y2VwdGlvblByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uOjpzX2lu
Zm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlv
bikgfTsKIAogSlNUZXN0RXhjZXB0aW9uOjpKU1Rlc3RFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RXhjZXB0aW9u
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEV4Y2VwdGlvbj4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3QuY3BwCmluZGV4IGVlM2FmMWYxZjU5Mjg5Nzg3YTlkZTUwYWYxNzk4NDFlYTEx
ZWJiNjQuLjhlZDZjNDhmMGM1YjAzNjUzOTJlZGVjNTBhOTUwZThlNDJlOGEzYmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0
ZUFkZE9wYXF1ZVJvb3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCkBAIC04Niw3ICs4Niw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdFByb3RvdHlwZSwgSlNUZXN0CiAKIHVzaW5nIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVl
Um9vdERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRP
cGFxdWVSb290RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUFkZE9wYXF1
ZVJvb3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTExLDcgKzExMSw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICAgICB7ICJzb21lQXR0cmlidXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdF9zb21lQXR0cmlidXRlKSwgKGludHB0
cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRP
cGFxdWVSb290UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2Vu
ZXJhdGVBZGRPcGFxdWVSb290KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RH
ZW5lcmF0ZUFkZE9wYXF1ZVJvb3QpIH07CiAKIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6
SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdD4m
JiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3Q+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFi
bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUuY3BwCmluZGV4IDVmNTk1ODU4ZWRkYzljYjg4ZWY3ZTE0MWY1MTcx
NzQ1MDkzOWQwM2QuLmM4NDk1NGE4YzA2OGI0OTk4OWE3MjFlZWI2YjQ3NmUyMjc3ZDU3YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RH
ZW5lcmF0ZUlzUmVhY2hhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAKQEAgLTg2LDcgKzg2LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0R2VuZXJhdGVJc1Jl
YWNoYWJsZVByb3RvdHlwZSwgSlNUZXN0R2UKIAogdXNpbmcgSlNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJh
U2VjcmV0QXR0cmlidXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3Ig
fCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGVfYVNlY3JldEF0dHJpYnV0ZSksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIEpT
VGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5l
cmF0ZUlzUmVhY2hhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlz
UmVhY2hhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUpIH07CiAKIEpTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGU6OkpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2VuZXJhdGVJc1Jl
YWNoYWJsZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmpl
Y3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEds
b2JhbE9iamVjdC5jcHAKaW5kZXggNGYxNGE2OWEyMGYwYTMwMTM5OTQwN2RjMDBiYzgwNjVlZDJk
YjkwZC4uOTQyMzQ3MzhlNDAwMjI5NTNjOWU5ODIxOGY2MDNiY2Q1M2NiMDkzMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9i
amVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEdsb2JhbE9iamVjdC5jcHAKQEAgLTYyMSw3ICs2MjEsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0R2xvYmFsT2JqZWN0Q29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0K
ICNlbmRpZgogfTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2Jq
ZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdsb2Jh
bE9iamVjdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtNjUzLDcgKzY1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RH
bG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUs
IEpTVGVzdEdsb2JhbE9iamVjdDo6aW5mbygpLCBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVU
YWJsZVZhbHVlcywgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGVJbmRleCB9OwotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxPYmplY3RQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0
R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEdsb2JhbE9iamVj
dFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtNjYxLDcgKzY2MSw3IEBA
IHZvaWQgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCJfcywgJkJh
c2U6OnNfaW5mbywgJkpTVGVzdEdsb2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdCkgfTsKIAogSlNUZXN0R2xvYmFsT2JqZWN0OjpK
U1Rlc3RHbG9iYWxPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2xvYmFsT2JqZWN0PiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdEdsb2JhbE9iamVjdD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmll
ci5jcHAKaW5kZXggYTc2NGM4ZjI3NDU1MjZhODlkMjM4OGFhMjViYWY0OGVlMGNlOGMyNy4uZGQ3
NjU5MGEyYzI4ZDI1NjllOGEwZDVhYmU2NmQ3ZjU1ZTJhNjRkOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODUsNyArODUsNyBAQCBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5v
SWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzWwogICAgIHsgImNvbnN0
cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xv
dDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0
b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRl
bnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRl
bnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcg
QEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
OjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyOjpKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24uY3BwCmluZGV4IDg4MmZmMDQ3YjhiZDI4MGM2Yzg2NTYxMWRkMWY1NWVmOTM3NzZi
MGIuLmFkZGM1NDhkNzljY2Y5ODc2YWY5NzNkOTQyNzMxNWIwOGFkY2MxYTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCkBA
IC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwCiAKIHVzaW5nIEpTVGVzdElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGVUYWJsZVZhCiAgICAgeyAi
Y29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1
dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rl
c3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6
c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07
CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0SW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRleCAy
YWM2ZDcxZDU2MzI3ZDlhNmNjZDgwNjIwNWE1MjVhM2ZjZmM2NDM1Li4xOTk1YmY4MDAyNTliOWVk
ZmFhYTFhYjI0MjY3ZDhiMGZlZDBlYTI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTMsNyArOTMsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXJQcm90b3R5cGUsCiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlCiAgICAg
eyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxS
YXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZv
aWQgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6
OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
cihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggZWNiMDU0
ODQwNmYxZGU0ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uZGZkMWQ0ZmM3NmZkNmMzM2U0YTEz
NzkyOTFlYWQ1YmY5NzQxOTRmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTI5Myw3ICsy
OTMsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRF
UyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3RvcgogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVO
Q1RJT04oSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdEludGVy
ZmFjZURPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEludGVy
ZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdElu
dGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC00NTcsNyArNDU3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdElu
dGVyZmFjZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2VuZGlmCiB9OwogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNl
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJm
YWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZVBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTQ3OSw3ICs0NzksNyBAQCB2b2lkIEpTVGVzdEludGVyZmFjZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNl
OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2UpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdElu
dGVyZmFjZSkgfTsKIAogSlNUZXN0SW50ZXJmYWNlOjpKU1Rlc3RJbnRlcmZhY2UoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW50
ZXJmYWNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZT4oc3RydWN0
dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBAIC0xMTMyLDExICsxMTMyLDExIEBA
IHVzaW5nIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSA9IEpTRE9NSXRlcmF0b3JQcm90
b3R5cGU8SlNUZXN0SW50ZXJmYWNlLCBUCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihUZXN0
SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGVOZXh0LCBUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90
b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50
ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0
SW50ZXJmYWNlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEludGVy
ZmFjZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJm
YWNlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0
b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJ
dGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0
b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJh
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNl
SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJ
bnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJ
bnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSBJdGVy
YXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBpbmxpbmUg
RW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVuY3Rpb25fZW50cmllc0Nh
bGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSosIEpTVGVzdEludGVyZmFjZSogdGhpc09i
amVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmUuY3BwCmluZGV4IGE4MzNjODQ0ZGEwMDIzZGQ1MWViNzc3Yzk4NWU1NjJiZjUxYThjYjIuLjU1
NmIwNjJkM2U3N2IyYmNhODhhZjU5OTUwNzlhNDM3YjQxZjk5YmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNwcApAQCAtODYsNyArODYsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFk
aW5nVW5kZXJzY29yZVByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFj
ZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGVUYWJsZVZhbHVlcwog
ICAgIHsgInJlYWRvbmx5Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3Ig
fCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlX3JlYWRvbmx5KSwgKGludHB0cl90KSBzdGF0aWNfY2Fz
dDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdV
bmRlcnNjb3JlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxl
YWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGlu
Z1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEludGVy
ZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6c19pbmZvID0geyAiVGVz
dEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6
c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFj
ZUxlYWRpbmdVbmRlcnNjb3JlKSB9OwogCiBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZTo6SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW50ZXJmYWNlTGVhZGlu
Z1VuZGVyc2NvcmU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW50ZXJmYWNlTGVh
ZGluZ1VuZGVyc2NvcmU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEl0ZXJhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJdGVyYWJsZS5jcHAKaW5kZXggNWY0ZmE2OWZhOGQxYjAxMTkxZDdhNDg0MjFiZWM5MzFh
ODk1NmFmMi4uNTMxMjk1NmI3YmFkMDRiZTMxMDkyZmFmZGEzYjdiNWYxMzE2MTViZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJh
YmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SXRlcmFibGUuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlLCBKU1Rlc3RJdGVyYWJsZVByb3Rv
CiAKIHVzaW5nIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJdGVyYWJsZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVy
YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVy
YWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RJdGVyYWJsZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJdGVyYWJs
ZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdEl0ZXJhYmxl
UHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0
ZXJhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
dGVyYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxl
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMzMsNyArMTMzLDcgQEAgdm9pZCBKU1Rlc3RJdGVyYWJsZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGU6
OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJs
ZSkgfTsKIAogSlNUZXN0SXRlcmFibGU6OkpTVGVzdEl0ZXJhYmxlKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEl0ZXJhYmxlPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEl0ZXJhYmxlPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKQEAgLTIyNywxMSArMjI3LDExIEBAIHVzaW5nIFRlc3RJ
dGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3RJ
dGVyYWJsZSwgVGVzCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihUZXN0SXRlcmFibGVJdGVy
YXRvclByb3RvdHlwZU5leHQsIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlOjpuZXh0KTsK
IAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JC
YXNlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9y
QmFzZSkgfTsKLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJdGVyYWJsZUl0ZXJhdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9yKSB9OworY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJU
ZXN0SXRlcmFibGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlKSB9OworY29uc3Qg
SlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVy
YWJsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShUZXN0SXRlcmFibGVJdGVyYXRvcikgfTsKIAogdGVtcGxhdGU8PgotY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90
eXBlKSB9OwogCiBzdGF0aWMgaW5saW5lIEVuY29kZWRKU1ZhbHVlIGpzVGVzdEl0ZXJhYmxlUHJv
dG90eXBlRnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSos
IEpTVGVzdEl0ZXJhYmxlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0
aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggNzFmNjFjMmE2MGZhOTg2MmMxMzg3Y2U2YmJlMTZmNjk0
MjNkMzZlOS4uMGIyMmFhMzRiMjgzMzU4NmEzZjlhNjcwMTZlOGQyNGFhNmU3MjY0ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBAIC04OSw3ICs4OSw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0
cnVjdG9yUHJvdG90eXBlLCBKU1Rlc3RKCiAKIHVzaW5nIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RKU0J1aWx0
aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5D
b25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1
aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInRl
c3RDdXN0b21GdW5jdGlvbiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxS
YXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGVGdW5j
dGlvbl90ZXN0Q3VzdG9tRnVuY3Rpb24pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0
aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1
Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTMyLDcgKzEzMiw3
IEBAIHZvaWQgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IpIH07
CiAKIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
cihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
ICAgICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKaW5kZXggYmI2ODhmY2I0YThmNzIz
N2VlOTc5NmFkMTkzYTk4Njc0NGFkZGQ1MC4uOGM3NDYwMmYzNWM2NDY4ZWUyOWU1ZDhkZjRjMGYy
NDQ0NzM0NzE4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5j
cHAKQEAgLTg4LDcgKzg4LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlLCBKU1Rlc3QKIHVzaW5nIEpTVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uPjsKIHVzaW5nIEpTVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbiA9IEpTRE9NTGVnYWN5
RmFjdG9yeUZ1bmN0aW9uPEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbj47CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lGYWN0
b3J5RnVuY3Rpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAs
NyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBK
U1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZQogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJ
T04oSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uQ29uc3Ry
dWN0LCBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVuY3Rpb246OmNv
bnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiQXVkaW8iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExl
Z2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlG
dW5jdGlvbjo6c19pbmZvID0geyAiQXVkaW8iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVn
YWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TGVnYWN5
RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdExl
Z2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0
cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xv
dDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Db25zdHJ1Y3Rvciks
IChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Q
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2Fj
eUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0
aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVu
Y3Rpb246OkpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RMZWdhY3lGYWN0b3J5RnVu
Y3Rpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0
aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0lu
dGVyZmFjZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuY3BwCmluZGV4IDFjODM0OTBiNjdhMTFj
Yzg4YjNhNWViODJiOTE3MjhiNWRmODM1MTIuLmZhNzYwOTE2MjE0ZjZhYjY4MjM5ODI3ZWJlYTUy
YjZkMDRmY2M3Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2Jq
ZWN0LmNwcApAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7
ICJDT05TVEFOVDIiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDb25z
dGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcpKDIpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFj
ZU9iamVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVy
ZmFjZU9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2Jq
ZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9i
amVjdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TGVn
YWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lOb0ludGVyZmFjZU9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lOb0ludGVy
ZmFjZU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCkgfTsKIAogSlNUZXN0TGVn
YWN5Tm9JbnRlcmZhY2VPYmplY3Q6OkpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0KFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVz
dExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcApp
bmRleCBlMmIxZjgwNDk2OTAxZTZlODcyYTA2YmNkYmVhMDBkNDk4OTlhNGEyLi41MzEyNDA1Mzlm
ODc5NGUxMmIyOTBmMWQzNDVhMzcwZWE2MmI4NTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCkBAIC05Myw3ICs5Myw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5
cGUsIEpTVGVzCiAKIHVzaW5nIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAibmFtZWRJdGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90
eXBlRnVuY3Rpb25fbmFtZWRJdGVtKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5
T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJpZGVC
dWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJp
ZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElu
czo6SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2Uu
Y3BwCmluZGV4IGQ1ZWExNGMxMjk2MzUwY2FmNWNlODE3OWJhYjliMzRhNTUxZGIzMTUuLmUxYjZl
OTAzNGU4M2YzYzQwZGVlNWEyNDk3NDBjYzQ4YjM0ZTczZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAK
QEAgLTEwMiw3ICsxMDIsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3RNYXBMaWtlUHJvdG90eXBlLCBKU1Rlc3RNYXBMaWtlUHJvdG90eQogCiB1c2luZyBKU1Rl
c3RNYXBMaWtlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3RNYXBMaWtlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFw
TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlr
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RNYXBMaWtlRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNiw3ICsxMzYsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rl
c3RNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExp
a2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSlNUZXN0TWFwTGlrZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZTo6
c19pbmZvID0geyAiVGVzdE1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2UpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZSkgfTsK
IAogSlNUZXN0TWFwTGlrZTo6SlNUZXN0TWFwTGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RNYXBMaWtlPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnMuY3BwCmluZGV4IDIwODBlN2U2ZGUxNjM5MDk5ZGZiOGE1YTNhZDJl
MmJmZDcwZWM5YTcuLmM3MzdhOWRmZWNhNDFjOTkyOTFjMGFiNjQ1Yjk5YjVkM2IyZmJmMDcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RN
YXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eQogCiB1
c2luZyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RNYXBMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1By
b3RvdHlwZVRhYmxlVgogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1
bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1
bmN0aW9uPihqc1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlRnVu
Y3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1h
cExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RN
YXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTUw
LDcgKzE1MCw3IEBAIHZvaWQgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1By
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6c19p
bmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlr
ZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsKIAogSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uczo6SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyhTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRp
Zmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCAyNDcwMmVmMTU4ZmRm
Y2U4MWRiYjRmY2ExNThhZTYzNjg3YThlNGYxLi5jYWMzMzY4YTViN2M1YWExNjU3OGY1NTU1NDYy
ODRmMzFjYzhmY2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXJQcm90bwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50
aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRp
ZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlVGFibAogICAgIHsg
ImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3Bl
cnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50
aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTE5LDcgKzExOSw3IEBAIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRp
ZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24uY3BwCmluZGV4IDFjZTIzMzYxYjM3OGQ3YjE3NzJhOTk3ZGY3ZWJmYTk5NjA4
NTg3NjYuLmJmOWE1YWIwYjQwZjk2OWQwOTc5MzMxNGRjMzlmMjljMzBmZTZiZDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bgogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwg
KGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdgog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDhmMjRiYTE2YjZiM2I1YWMyMDNkMmY2NDE2NDUw
NGUyNjIwZjU1YzkuLjNhZTJjOTMzNWFmZWEyNWQ0ZmYwZmFhNzM3OGRjNmVmZTE4ZGY1ODkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBy
bwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElk
ZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYQog
ICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyAr
MTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRl
bnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAog
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5j
cHAKaW5kZXggZjRjZTBlNDFlNWUzYTAyNmJjYzViM2UwNDcwZWYxNDMxYzg3YTRlYy4uNTg3Yzk1
YmVmMDMxMDUzNzIwYjMxMjM4NjFjOTkyNjJhYTEzNTkwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRp
Zmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlLCBKU1QKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RO
YW1lZERlbGV0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVk
RGVsZXRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVu
Yz4oanNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVy
Tm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsK
IAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkRGVs
ZXRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
cikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpKU1Rlc3ROYW1lZERlbGV0
ZXJOb0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRleCA3OTFjZGEyMWVmNTMzZDFk
NWM2YzE0MDQ5MDVjMjg4ZmZkOTJmNWFlLi4xZDIxMTMyMWUyZTU1OWIyNWIzZjI2NjVhZmQ1YjEy
MjYzMDFkMTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VC
U1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRl
clRocm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRl
clRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlVGFibGVW
YWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxldGVyVGhyb3dp
bmdFeGNlcHRpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVy
dHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJU
aHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRo
cm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBK
U1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAog
SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVkRGVsZXRlclRo
cm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJX
aXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDNhOThkNTlkMzhi
NzFiMDE2NWMxYjJhZWYyM2JlZjgwOWFkZWM3NDYuLjg1MWVkOWNiODkzMmNjODM1NGY1OWZjOTFl
NTI0YjQ3Y2M0MTc4ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldp
dGhJZGVudGlmaWVyLmNwcApAQCAtOTIsNyArOTIsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwg
SgogCiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERl
bGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRE
ZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxl
dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsx
MTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlcwogICAgIHsgIm5hbWVkRGVsZXRlciIsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5v
SW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9uYW1lZERlbGV0
ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERl
bGV0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RO
YW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50
aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZp
ZXIpIH07CiAKIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpKU1Rlc3ROYW1lZERl
bGV0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj4o
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmNwcAppbmRleCAyZWFjMTZm
NDk5NmNkYWQ3NmNmYzFjYWYwN2FmOGEyNmIyMDdmZTE5Li4xMzM4NmIyZjMxNzg5OTRhYTdkYTEx
OGRlNzRlOTFkNjQyMGQ3M2VmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERl
bGV0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0
ZXJQcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJE
T01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTAsNyArMTEwLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90
eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxl
dGVyV2l0aEluZGV4ZWRHZXR0ZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJX
aXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0
dGVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0
dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcg
QEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJ
VElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4
ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERl
bGV0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
cikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OkpTVGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0
dGVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZEdldHRlckNhbGxXaXRoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNwcAppbmRleCBjYzEwMjBjM2RjY2ZhMmRi
ZGU2MGNkNjc5NTQyYzdjZWQ3ZWMzYzA1Li5mNjBiNGY2Y2Y4YWE0ODlkMThkOWYyOGRkM2NiYjhm
MjU1MjNkMjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguY3BwCkBA
IC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGUsIEpTVGVzdE5hCiAKIHVzaW5nIEpTVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25z
dHJ1Y3RhYmxlPEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNh
bGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0
aCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRH
ZXR0ZXJDYWxsV2l0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
R2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZEdldHRlckNhbGxXaXRoKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVy
Q2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
R2V0dGVyQ2FsbFdpdGgpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OkpTVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGgoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aD4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlckNhbGxXaXRoPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJO
b0lkZW50aWZpZXIuY3BwCmluZGV4IGExOWRmOWRlZWQ4ODk2ODExYWQ1ZjJkMmQzNTliZmI3N2Vj
Y2IxZmEuLjg0YjY2MDk5M2Q4ZTNjMzM0NWM2YzI0YTE0OTBkYzBiMjZjMjJhYzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdl
dHRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODUsNyArODUs
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEdldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZSwgSlNUZQogCiB1c2luZyBKU1Rlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyTm9J
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsx
MDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJOb0lk
ZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJO
b0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0
ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRl
bnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJOb0lk
ZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RS
SU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lk
ZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0
ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIpIH07CiAKIEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcihT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRp
Zmllci5jcHAKaW5kZXggOGIzNDhhYzRlMmU3YjZkZTgzNGNkNzUxOTk3ODRjZTcxODY2MzZmYi4u
NTcwNzE0NDJlNzg1OTI3OTY3ODg2ZDI3ZTc2ZWNiNmI4YjY5NWFkNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0
aElkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTAsNyArOTAsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEdldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJX
aXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RO
YW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTExNSw3ICsxMTUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzWwogICAgIHsgImdl
dHRlck5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZl
RnVuY3Rpb24+KGpzVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlv
bl9nZXR0ZXJOYW1lKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTI0LDcgKzEyNCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0
aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcikg
fTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRHZXR0ZXJX
aXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXI+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggZWEyZWRlZTlhYjg0NWIwNTNhYWNmMDhmZWI1
NzcxNzI5MWQxNmJkOS4uNGNiZjY2ZTNkOGI1MmQwNTMzZGFjYzBlYTkxZmMyNDg1ZDY2MzQ1OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCkBAIC04
NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1RlCiAKIHVzaW5nIEpTVGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0
ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRp
ZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRT
ZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJjb25zdHJ1Y3Rv
ciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51
bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6Okdl
dFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0
dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcikgfTsK
IAogSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
clRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRleCA4Mjk0MmRiNTI5NzE3YzIwMGE1YWM1MmIyNmUx
NDI3YTMzOGU3MWY0Li5iNDk1MjM5ZTNhYzg3ZjAyYjViZmQ2ZjIyOGYyN2M4NjQ3MWIwZWZkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24u
Y3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUsCiAKIHVzaW5nIEpT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93
aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRl
clRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5
LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRl
clRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWx1CiAgICAgeyAiY29uc3RydWN0b3Ii
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Db25zdHJ1Y3Rvciks
IChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93
aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OkpT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRl
eCBjN2Q3MmE3Y2E4MjU4MGFhZjY2M2E5MTk2NWEyZjhkMjAxM2RmOTE0Li43ODFhYjA1NWI0Y2Uz
MDA1ZGYyMWMzOWUwZmU4YmE5ZWU5NzM3NmJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01D
b25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVk
U2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcg
KzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAibmFtZWRTZXR0ZXIiLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpz
VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9uYW1lZFNldHRl
ciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTEyNiw3ICsxMjYsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZp
ZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qs
IFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyLmNwcAppbmRleCA3ZDM0NWZmNDYyYjkyZjFkZjBlNjlmNDM3NGNm
MjIwNDFlMWFhNDQzLi42ZjdhNWI2MmI4OWFhNDNkOTg3OTgzMmY2MWU2Yzg4NDY1ZWM0ODUzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIu
Y3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUsCiAKIHVzaW5nIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIx
LDcgKzEyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWx1CiAgICAgeyAiaW5kZXhlZFNldHRl
ciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlv
biksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlv
bj4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZUZ1bmN0aW9uX2lu
ZGV4ZWRTZXR0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4
ZWRHZXR0ZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcj4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ckFuZFNldHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAKaW5kZXggNDc5
NjY4MDM2NGMyZTYzMjg1MzRmMDlkNDQxMTZhYTQ1ZjQ2YjFmNS4uZGM2YzY2MmNlMDRkNWJmZmIx
MTQxMmFlYmE3MzY0NGUwNWJmZTM4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRT
ZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmNwcApAQCAtOTUsNyAr
OTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUAogCiB1c2luZyBKU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5k
U2V0dGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
SW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ckFuZFNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZQogICAgIHsgImlu
ZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQ
cm90b3R5cGVGdW5jdGlvbl9pbmRleGVkU2V0dGVyKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRT
ZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJv
dG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJB
bmRTZXR0ZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTMwLDcgKzEzMCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlckFuZFNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5k
U2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcj4oc3Ry
dWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5T3ZlcnJpZGVCdWlsdElucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAK
aW5kZXggZTAxYzcwNTQxNmE4MzM4ZTI2NjlhYjE3NDU1YzFlY2Y2YWEwNDU1Ny4uMzhiODU4MjE2
NjRkNTYzYjFmMmYwODUwZTNmZGJhMzk3YzI0MTg3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92
ZXJyaWRlQnVpbHRJbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcApA
QCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUAogCiB1c2luZyBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVC
dWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZQog
ICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9p
ZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0KICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07CiAK
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OkpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKaW5kZXggZjg1
OWRlZGI2YmQxNDI5ZmFkYWVkM2Q0ZDNkOGQ5ZTE0ZGIxODdjNy4uYTZkYzY2YThjODMxNmY3MWMx
NzVkZmJmMTAzNDMzOTA0MzJjYTE3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAK
QEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzVGFibAogfTsKIAogc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjppbmZvKCksIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlVmFsdWVzLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNE
T01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xMzUsNyArMTM1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3QKICAg
ICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQ
cm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1
dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
VgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcykgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXMiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMpIH07CiAKIEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllczo6SlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCmluZGV4
IDZmYWQ3NWI3MzRlOWY5MTJmOTMyZTk4MzY5MWY3MDEwM2NkYmI2Y2EuLmJmYmNkZTYzMzBlZjY3
NDE4YWU2YmNlNTczNjY1Y2NiZTM0OTU5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKQEAg
LTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTAogfTsKIAogc3RhdGljIGNv
bnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnM6OmluZm8oKSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxlVmFsdWVzLCBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTAogICAgIHsgImNvbnN0cnVj
dG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6
R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDQsNyArMTQ0LDcgQEAgdm9pZCBK
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zUHIKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9z
LCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OkpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92
ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBsKQogICAgIDogSlNET01XcmFw
cGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlQ29uc3QuY3BwCmluZGV4IDZjMmY5ZWU0YjY0NjhlNzBk
ODViY2NiZThjMTVjMWExM2I5OTIxNmIuLjQ1MmRkYzU0MzI4YWVmYTFjYWUxMDliYjM3ZGNmMDM0
NjY1NDczNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZUNvbnN0LmNwcApAQCAtNTYsNyArNTYs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZXNwYWNlQ29uc3RDb25z
dHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogc3RhdGljX2Fzc2VydChUZXN0TmFtZXNwYWNlQ29uc3Q6
OlRFU1RfRkxBRyA9PSBmYWxzZSwgIlRFU1RfRkxBRyBpbiBUZXN0TmFtZXNwYWNlQ29uc3QgZG9l
cyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIHN0YXRpY19hc3NlcnQoVGVzdE5hbWVzcGFj
ZUNvbnN0OjpURVNUX0JJVF9NQVNLID09IDB4MDAwMGZjMDAsICJURVNUX0JJVF9NQVNLIGluIFRl
c3ROYW1lc3BhY2VDb25zdCBkb2VzIG5vdCBtYXRjaCB2YWx1ZSBmcm9tIElETCIpOwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VD
b25zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTcxLDcgKzcxLDcgQEAgdGVtcGxhdGU8PiB2b2lkIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29u
c3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZNJiB2bSwKICAgICBVTlVTRURfUEFSQU0o
Z2xvYmFsT2JqZWN0KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0
OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZUNvbnN0KSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0OjpzX2luZm8gPSB7ICJUZXN0TmFt
ZXNwYWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3QpIH07CiAKIEpTVGVzdE5hbWVzcGFjZUNv
bnN0OjpKU1Rlc3ROYW1lc3BhY2VDb25zdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5jcHAKaW5kZXggMDc2
ZDYzNDI2NmE1YTJiM2Q0MmFkZTczN2Q2MWE3NDc1MDdjMGVkMi4uZGU5MGU5YTA2NjI4MzBkZjFj
YzYyMjkzNmI1NjgxMWMwZDczODc4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5j
cHAKQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5h
bWVzcGFjZU9iamVjdENvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFtZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0RE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3Bh
Y2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTMxLDcgKzEzMSw3IEBAIHRlbXBsYXRlPD4gdm9pZCBKU1Rlc3ROYW1lc3BhY2VPYmpl
Y3RET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRpZXMoVk0mIHZtCiAjZW5kaWYKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdDo6c19pbmZvID0geyAiVGVz
dEludGVyZmFjZU5hbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lc3BhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VOYW1lIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVzcGFjZU9iamVjdCkgfTsKIAogSlNUZXN0TmFtZXNwYWNlT2JqZWN0OjpKU1Rlc3ROYW1l
c3BhY2VPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiAgICAgOiBKU0RPTU9iamVjdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkgeyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Tm9kZS5jcHAKaW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0MTNmY2MxZTQ2M2MxNWJi
Yy4uYjkwNGRmNmIzMDc3YWIyZGRhNzdkMjlmZjQ1ZjVjZDRmZTFmNjI1YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNw
cApAQCAtMTM0LDcgKzEzNCw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTF9BVFRSSUJVVEVTIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6Y29uCiB9CiBKU0NfQU5O
T1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpT
VGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Tm9kZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROb2RlRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3MSw3ICsxNzEsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Tm9kZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAg
IHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdE5vZGVQcm90b3R5cGVGdW5jdGlvbl9mb3JFYWNoKSwgKGludHB0
cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5vZGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3ROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGVQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Tm9kZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMjM1LDcgKzIzNSw3IEBAIHZvaWQgSlNUZXN0Tm9kZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZTo6c19pbmZvID0geyAi
VGVzdE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5vZGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZTo6c19pbmZv
ID0geyAiVGVzdE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZSkgfTsKIAogSlNUZXN0Tm9kZTo6SlNUZXN0Tm9kZShT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3ROb2RlPiYmIGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0dXJlLCBnbG9iYWxPYmplY3Qs
IFdURk1vdmUoaW1wbCkpCkBAIC00MzMsMTEgKzQzMywxMSBAQCB1c2luZyBUZXN0Tm9kZUl0ZXJh
dG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3ROb2RlLCBUZXN0Tm9k
ZUl0ZQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oVGVzdE5vZGVJdGVyYXRvclByb3RvdHlw
ZU5leHQsIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1j
b25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiVGVz
dE5vZGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0lu
Zm8gVGVzdE5vZGVJdGVyYXRvcjo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2Rl
SXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yQmFzZTo6
c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvckJhc2UpIH07Citj
b25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9k
ZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZXN0Tm9kZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6
OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Tm9k
ZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJ
bmZvIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJh
dG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2Rl
ZEpTVmFsdWUganNUZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIoSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqLCBKU1Rlc3ROb2RlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNw
cAppbmRleCBiNDQ3Mzk1ZWUzN2M2NDIwYTI4NDExYjI2YzdjNTBkYjI2Nzc5YWRjLi41OTY1Yzli
NjRlYWVmZWJjZDFhNzY4NWY5OTQ5MjY2MDdmYWJlNGY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcApAQCAtMjA2Myw3
ICsyMDYzLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJ
QlVURVMgSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OmNvbnMKIH0KIEpTQ19BTk5PVEFURV9IT1NU
X0ZVTkNUSU9OKEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPYmpET01D
b25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9iakRPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMjQyOSw3ICsyNDI5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE9ialByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInJlYWRvbmx5
IiwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q29uc3RhbnRJbnRlZ2Vy
LCBOb0ludHJpbnNpYywgeyAobG9uZyBsb25nKSgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0T2JqUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPYmpQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE9ialByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RPYmpQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTI1MzksNyArMjUzOSw3IEBAIHZv
aWQgSlNUZXN0T2JqUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RPYmo6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0
T2JqVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE9iajo6c19pbmZvID0geyAiVGVzdE9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgJkpTVGVzdE9ialRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE9iaikgfTsKIAogSlNUZXN0T2JqOjpKU1Rlc3RPYmooU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T2JqPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdE9iaj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsLmNwcAppbmRl
eCAyZTA3MGRjOTIzNTA3YTRlNzk5MWJlYTJhNjhmNTY0ZWQyYzA5Y2FlLi44NThhYTRjOWVlODVi
YjhhMGVjOWVjYWI2MjE5NWNiNWRhODA3OTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRp
b25Db25kaXRpb25hbC5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZSwgSlNU
ZXN0TwogCiB1c2luZyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9u
YWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRp
b25hbERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0
aW9uYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE9wZXJh
dGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEz
NSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0T3BlcmF0aW9u
Q29uZGl0aW9uYWxQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9u
Q29uZGl0aW9uYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9u
YWxQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBA
QCB2b2lkIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6c19pbmZvID0g
eyAiVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbCkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6c19pbmZvID0geyAi
VGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsKSB9Owog
CiBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCmlu
ZGV4IDQ5MjEwNDY1OTMyM2UxNzczMGU3ODgxNjFlYmY1N2Q2MGI5NWM3ZjIuLjg1OWI5OWNlMTcy
Y2Y1NDJkMjdjOTU3OWI3MDVmNDcyMTc3NjdhMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKQEAgLTIxOCw3ICsyMTgsNyBAQCB0ZW1wbGF0ZTw+IEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzRAogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yNDIsNyArMjQyLDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNf
Y2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MjUxLDcgKzI1MSw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9ycykgfTsKIAogSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
czo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3Bw
CmluZGV4IGQ3ZjEzNzQ2N2QyNWEwOWYyNjJmNzFiNWUwM2M3ZGRhMjg4MzY5ZGYuLjZmYzJmNGI1
MzZiN2ZmZDg2YWEyMDMzNjMwNTZjZTUwZTZjZWVkMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKQEAgLTE1
NSw3ICsxNTUsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRU
UklCVVRFUyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzVwogfQogSlNDX0FOTk9UQVRFX0hP
U1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0
cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNl
RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2Vx
dWVuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xNzksNyArMTc5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGVUYWIKICAgICB7ICJjb25z
dHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNs
b3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1
dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTg4LDcgKzE4OCw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhT
ZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSkgfTsK
IAogSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6SlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcAppbmRleCBkNTM3YWFiOGI0
ZTRkZGZkMGIxZDZhMThjODA1ZmEwYjcxYzA5NTQwLi41MzgzODJhZTYyMzk2ZGNhODE3MzQ4ODJj
MjkxMmFlNWVkYWQ0MTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcApAQCAt
ODQsNyArODQsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RQ
bHVnaW5JbnRlcmZhY2VQcm90b3R5cGUsIEpTVGVzdFBsdWdpbgogCiB1c2luZyBKU1Rlc3RQbHVn
aW5JbnRlcmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdFBsdWdpbkludGVyZmFjZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UGx1
Z2luSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZURP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UGx1Z2luSW50ZXJm
YWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOCw3ICsxMDgsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFBs
dWdpbkludGVyZmFjZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9w
ZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVy
ZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVy
ZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0UGx1
Z2luSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTcs
NyArMTE3LDcgQEAgdm9pZCBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04o
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6c19pbmZvID0g
eyAiVGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVy
ZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2UpIH07CiAKIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6
SlNUZXN0UGx1Z2luSW50ZXJmYWNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFBsdWdpbkludGVyZmFjZT4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3RQbHVnaW5JbnRlcmZhY2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50LmNwcAppbmRleCAwN2Q5YzcxZmI3NTM3NWE1YzUxNmMzMWJmYTc5MjAwODExM2ZlNzQ1Li4z
MDY3MmQyZGQ0MTUzYWQ0YjgzZGJkNTFiZTM5OWZlNGI0ZWFkNzFlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlv
bkV2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcApAQCAtMTk1LDcgKzE5NSw3IEBAIHRlbXBs
YXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdFByb21p
c2VSZWplY3Rpb25FdmVudERPCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RQ
cm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0
aW9uRXZlbnRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTIyMCw3ICsyMjAsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAicmVhc29uIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRy
aWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90
OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFByb21pc2VSZWplY3Rpb25FdmVudF9yZWFzb24pLCAoaW50
cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVq
ZWN0aW9uRXZlbnRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTIyOSw3ICsyMjksNyBAQCB2b2lkIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQ
cm9taXNlUmVqZWN0aW9uRXZlbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFByb21pc2VSZWplY3Rpb25FdmVudCkgfTsKIAogSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
OjpKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
PiYmIGltcGwpCiAgICAgOiBKU0V2ZW50KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcAppbmRleCA0Zjk2MzA1OTVm
ZDE3ZTIyYWZkNDAxZTVhMDg1YjNjN2ZmOTExYzhjLi42MDQ2Y2JhYzc4OTVmNzZjZTkwZjE4OTdm
ODllMGRmNmY0OWVhOTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcApAQCAt
OTksNyArOTksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RS
ZWFkT25seU1hcExpa2VQcm90b3R5cGUsIEpTVGVzdFJlYWRPbgogCiB1c2luZyBKU1Rlc3RSZWFk
T25seU1hcExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdFJlYWRPbmx5TWFwTGlrZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVh
ZE9ubHlNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZURP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UmVhZE9ubHlNYXBM
aWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzMCw3ICsxMzAsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0UmVhZE9ubHlNYXBMaWtl
UHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1h
cExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2U6OnNfaW5mbyA9IHsg
IlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlKSB9OwogCiBKU1Rlc3RS
ZWFkT25seU1hcExpa2U6OkpTVGVzdFJlYWRPbmx5TWFwTGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZWFkT25seU1hcExp
a2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlNYXBMaWtlPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNldExpa2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5
U2V0TGlrZS5jcHAKaW5kZXggMzRmZTg1N2QyM2U5YTZhNWFkOGZlMjFjZTBmMWRhZjlkNTlmYmY4
OS4uMTVlNjEzODg0ODQ1MjAwY2I3MjY4YzFhOGUzZTE2MmJhYTgwNzMwNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0
TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKQEAgLTk4LDcgKzk4LDcgQEAgU1RBVElDX0FTU0VSVF9J
U09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlLCBKU1Rl
c3RSZWFkT24KIAogdXNpbmcgSlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3IgPSBK
U0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RSZWFkT25seVNldExpa2U+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRM
aWtlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RS
ZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0
TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xMjgsNyArMTI4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZv
ckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9u
dEVudW0gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0UmVhZE9ubHlT
ZXRMaWtlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTM4LDcgKzEzOCw3IEBAIHZvaWQgSlNUZXN0UmVhZE9ubHlTZXRM
aWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFk
T25seVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5
U2V0TGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2U6OnNfaW5m
byA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlKSB9OwogCiBK
U1Rlc3RSZWFkT25seVNldExpa2U6OkpTVGVzdFJlYWRPbmx5U2V0TGlrZShTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZWFkT25s
eVNldExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlTZXRMaWtl
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1l
bW9yeUNvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKaW5kZXggMDdmNWY5MTExMGU5NjI1MzFmNWFh
YjNlMWVmOTcyNjc4OTMwZTA5OS4uOWVkMGQ3YTk1NmNlZDc0YWYzMTgzM2MwZTk0N2FmNWZjN2Ew
ZjhhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKQEAg
LTgzLDcgKzgzLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlLCBKU1Rlc3QKIAogdXNpbmcgSlNUZXN0UmVw
b3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3N0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDcsNyArMTA3LDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0
RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE2LDcgKzEx
Niw3IEBAIHZvaWQgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OnNf
aW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5
Q29zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OnNf
aW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3N0KSB9OwogCiBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OkpTVGVzdFJlcG9ydEV4
dHJhTWVtb3J5Q29zdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0PihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXggYmNhMGJlNTU1YWU2ZWEyZTk0OTk2
NThmNTUyNzI2M2YzZTlmZDVhMi4uNDExNjZlMjE1ZjNmM2U0N2UzNTNhZjM4MWRlMmZmMWUyMmE0
YjYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZS5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5
cAogCiB1c2luZyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90
eXBlVGFibGVWYQogICAgIHsgImZ1bmN0aW9uUmV0dXJuaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9mdW5jdGlvblJldHVybmluZyksIChp
bnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ5LDcgKzE0OSw3IEBAIHZvaWQgSlNUZXN0
U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnNf
aW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxp
emVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKSB9Owog
CiBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OkpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRM
aWtlLmNwcAppbmRleCBlN2Q0NzZiY2MzNDNiNTgyN2E0NzRiMTk5OWJkMDM1N2E3MjNlMjJlLi5i
Mzc1MTdlMDg2OTFmNzgzMDM1NTU3ZjliZjcyMDVhYjQ3ODQ3YTRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2Uu
Y3BwCkBAIC0xMDEsNyArMTAxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSwgSlNUZXN0U2V0TGlrZVByb3RvdHkKIAogdXNpbmcg
SlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0U2V0TGlrZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2UiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExp
a2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNl
dExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2UiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlr
ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2V0TGlrZURP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzQsNyArMTM0LDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJkZWxldGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0U2V0TGlrZVByb3RvdHlwZUZ1bmN0aW9uX2RlbGV0ZSksIChpbnRwdHJfdCkgKDEpIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RTZXRMaWtlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RT
ZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdFNldExp
a2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExp
a2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2Up
IH07CiAKIEpTVGVzdFNldExpa2U6OkpTVGVzdFNldExpa2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U2V0TGlrZT4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAppbmRleCA0MDI0MzlhYjBjZDk0N2FlMmI3MjA5NzQ5
MDc4MGZmMTNiOGE5NzE4Li4zNTJjODYzZjNhMWEwMjk1NTExMmI5NjYxMWE5M2M3NzczYTI2ZWY5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHkK
IAogdXNpbmcgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVj
dG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2V0TGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9ucz47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzgsNyArMTM4LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnNQcm90b3R5cGVUYWJsZVYKICAgICB7ICJjbGVhciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2
ZUZ1bmN0aW9uPihqc1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBl
RnVuY3Rpb25fY2xlYXIpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
NDgsNyArMTQ4LDcgQEAgdm9pZCBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdf
V0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtl
V2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpz
X2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKSB9OwogCiBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zOjpKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucz4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyLmNwcAppbmRl
eCBlYTI5MTM0ZjMyYTVlMmVkNDJiZWYxZTIzZWYyN2VmNzhmOWY1OTg0Li5mZDk4Yjc0NGQ0YzZk
MmYyMzY4Mzc0ZjE2ZjUyZDUxMjc3Y2MzNjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5jcHAK
QEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJQcm90b3R5cGUsIEpTVGVzdFN0cmluZ2lmaWUKIAogdXNpbmcgSlNUZXN0
U3RyaW5naWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdFN0cmluZ2lmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9TdHJpbmci
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3Qp
ICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTIzLDcgKzEyMyw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyOjpzX2luZm8gPSB7
ICJUZXN0U3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFN0cmluZ2lmaWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5n
aWZpZXIpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyOjpKU1Rlc3RTdHJpbmdpZmllcihTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RT
dHJpbmdpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllcj4o
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmNwcAppbmRleCAwYmM2Yzgy
OWI2NzVhZmY3OTMxZTBmMmVmYWRlNDViMWNhMmVlODRhLi5jMWNlM2M0Y2E2YjZlNjg0YzA5NjNm
MjBkNGM3ODZjY2M5MDg0MmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
ZmllckFub255bW91c09wZXJhdGlvbi5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRp
b25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25E
T01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0
cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
ckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90
eXBlVGFibGVWYWwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb25Qcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJh
dGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24pIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
ckFub255bW91c09wZXJhdGlvbikgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVy
YXRpb246OkpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0
cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RG
TW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0
aW9uLmNwcAppbmRleCA3YzFlMjY5YjkzZmQyNWZjODE1Y2YzMGVmMDI3ZWRjNDZkZDM4Njc4Li40
NDM2NTEzNzEyOWNmOGQyZGM3MTFjNTNlN2Q5MTJkMzU4MTdmZmNhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1l
ZE9wZXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3BwCkBAIC05MCw3ICs5MCw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFt
ZWRPcGVyYXRpb25Qcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRP
cGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5h
bWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRP
cGVyYXRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTE2LDcgKzExNiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RT
dHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAidG9T
dHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVu
Y3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVu
Y3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGVGdW5jdGlvbl90
b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3Ry
aW5naWZpZXJOYW1lZE9wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRp
b25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3Bl
cmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24pIH07CiAK
IEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OkpTVGVzdFN0cmluZ2lmaWVyTmFtZWRP
cGVyYXRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbj4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVu
dGVkQXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKaW5kZXggNTUzMzY3OWM4NjYy
NjEwZjI4MWQyZmViMTBlNTUxZGYxM2FmMzBjYi4uOWFiYTY0NmI3ZmE4MmY1M2FiNDllZTA3ODAw
YWM0ODc0OTMyMWZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgU1RBVElDX0FT
U0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzUHJvdG8KIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxK
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50
ZWRBcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVu
dGVkQXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZVRhYmwKICAgICB7
ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRp
dmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90
eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpzX2luZm8g
PSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbkltcGxlbWVudGVkQXMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50
ZWRBcykgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25JbXBsZW1lbnRlZEFzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9w
ZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCmluZGV4IGMwNjVkNzJhN2ZiMTBiOWY2NmUwYjc5ZTg3
NDYxZWJjYzY4YTk1NjcuLmNiZGY4YWFmZWM4YzQ0MWMxOTdiODlhMWJjYjQxZWYwOGQ2MjQzNTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5h
bWVkVG9TdHJpbmcuY3BwCkBAIC04OSw3ICs4OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3Rv
CiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0
cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmciLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE0
LDcgKzExNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGVUYWJsCiAgICAgeyAidG9TdHJpbmciLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpz
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZUZ1bmN0aW9uX3Rv
U3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RS
SU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1l
ZFRvU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
TmFtZWRUb1N0cmluZzo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRU
b1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcpIH07CiAKIEpT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6SlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0
cmluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllck9wZXJhdGlv
bk5hbWVkVG9TdHJpbmc+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3Bw
CmluZGV4IDliZGM0ZTMwMjk3MGE2MjI5NzBjZTVmZGM2MGMwMjIwMDJjYTAzMGYuLjNjYWVkODgy
NzQ0NzEyNDUyNzE4OTMwYThmYTQxMzllNzQ2NjgwZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0
cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAKQEAgLTkxLDcgKzkxLDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZVByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25s
eUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZT47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90
b3R5cGVUYWJsZVZhbHUKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJSZWFkT25s
eUF0dHJpYnV0ZVByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1
dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRl
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVy
UmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlB
dHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0
dHJpYnV0ZSkgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6SlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0
cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5jcHAK
aW5kZXggZWZiYzRlNjM1YWY4ZDk2MjJjNTBjM2IyMDdjOWU5YmU1YWVhNDBhYS4uODQwYzVlNmUy
ZmZmMTFhYzgzYTQzNDNlMjVmMjQ5OTA3MjhkMDA3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3BwCkBAIC05Miw3ICs5Miw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdy
aXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0
YWJsZTxKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJp
YnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1
dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0
dHJpYnV0ZVByb3RvdHlwZVRhYmxlVmFsCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRy
X3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZSkgfTsKIAogdm9pZCBK
U1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJS
ZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVy
UmVhZFdyaXRlQXR0cmlidXRlOjpKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZShT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4oc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5jcHAKaW5k
ZXggZGRiOTY1ZGQ2ZmU2NTQ5MTNkOTJkZjlmODIzYzFhM2JjY2ZiOTdlMi4uZmZhMGNlNzdjYzI5
ZjE0NjI5NTEzMmU3NzcwZmRiNDIwYTU0NTNmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVy
LmNwcApAQCAtODMsNyArODMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJM
RShKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlLCBKU1Rlc3RUYWdnZWRXcgogCiB1c2luZyBK
U1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3RUYWdnZWRXcmFwcGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNyw3ICsxMDcsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RUYWdnZWRXcmFwcGVy
Q29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0
VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3Jh
cHBlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdyYXBwZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFRhZ2dlZFdy
YXBwZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdyYXBwZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBl
clByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgdm9pZCBKU1Rlc3RUYWdn
ZWRXcmFwcGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RUYWdnZWRXcmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2Vk
V3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpzX2luZm8g
PSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyKSB9OwogCiBKU1Rlc3RU
YWdnZWRXcmFwcGVyOjpKU1Rlc3RUYWdnZWRXcmFwcGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFRhZ2dlZFdyYXBwZXI+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0VGFnZ2VkV3JhcHBlciwgU2lnbmVkUHRyVHJh
aXRzPFRlc3RUYWdnZWRXcmFwcGVyLCBUZXN0VGFnZ2VkV3JhcHBlclB0clRhZz4+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5jcHAKaW5kZXgg
YzJiY2VlYTEyZjY3YWY1NjU3ZGU1ZTllOGVhYWI3YWQ1Y2NjMmFjMC4uYmMxOWI4M2Q4NjYzZDhl
NGZhMmFhZjFhNmJhZDQ3MmRkNDgxYTFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCkBAIC0xODcs
NyArMTg3LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJ
QlVURVMgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcjoKIH0KIEpTQ19BTk5PVEFURV9IT1NU
X0ZVTkNUSU9OKEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdFR5
cGVkZWZzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUeXBl
ZGVmcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUeXBl
ZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MjMyLDcgKzIzMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RUeXBlZGVm
c1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNhbGxXaXRoU2VxdWVuY2VUaGF0UmVx
dWlyZXNJbmNsdWRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05h
dGl2ZUZ1bmN0aW9uPihqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0aW9uX2NhbGxXaXRoU2Vx
dWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VHlw
ZWRlZnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5
cGVkZWZzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VHlwZWRlZnMiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTI0MSw3ICsyNDEsNyBAQCB2b2lkIEpTVGVzdFR5cGVkZWZzUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUeXBlZGVmczo6
c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdFR5cGVkZWZz
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnMpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnM6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyJf
cywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdFR5cGVkZWZzVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnMpIH07CiAKIEpTVGVzdFR5cGVkZWZzOjpKU1Rlc3RU
eXBlZGVmcyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCwgUmVmPFRlc3RUeXBlZGVmcz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RU
eXBlZGVmcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9i
YWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggM2Q5NDdhMzE5YTUwYjI0MGMxZTZkZTFlODczNWZh
M2ZmZDI5YzExMi4uZWMwMTI3MTRmMGM5Nzg0Mzg2ODRmNGVhMDlkNmNmOTgxYzViZDY2MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2Vy
R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtOTksNyArOTksNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsK
IAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlVGFibGUgPSB7IDYs
IDE1LCB0cnVlLCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2VyR2xvYmFsU2Nv
cGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxT
Y29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNXb3JrZXJHbG9i
YWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjksNyArMTI5
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNXb3Jr
ZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1dvcmtlckdsb2Jh
bFNjb3BlOjppbmZvKCksIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywg
SlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5m
byBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxT
Y29wZSIsICZCYXNlOjpzX2luZm8sICZKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xv
YmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzOCw3ICsxMzgsNyBAQCB2
b2lkIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNj
b3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9z
LCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTV29ya2VyR2xvYmFs
U2NvcGU6OkpTV29ya2VyR2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
UmVmPFdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHZtLCBz
dHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmNwcApp
bmRleCBlZGYxZjE2ZmMxYTAwNzdjMDM3OTQxYTFiZmQyMmRiY2UyNDc1MzM0Li5mNWY4NWFmNDgx
ZDFkYzI5Yjc5ODljYzc3NmI2OWViZmE0YWFhNzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxT
Y29wZS5jcHAKQEAgLTY4LDcgKzY4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
V29ya2xldEdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTV29ya2xl
dEdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpT
V29ya2xldEdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2xl
dEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1dvcmtsZXRHbG9iYWxTY29wZURP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC05OCw3ICs5OCw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
VmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtsZXRHbG9iYWxT
Y29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1dvcmtsZXRHbG9iYWxTY29wZTo6
aW5mbygpLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1dvcmts
ZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1dv
cmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3Bl
IiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5m
byA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEds
b2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
b3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNXb3JrbGV0R2xvYmFsU2Nv
cGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEwNyw3ICsxMDcsNyBA
QCB2b2lkIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZTo6c19pbmZvID0geyAiV29ya2xldEds
b2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGUpIH07CiAKIEpT
V29ya2xldEdsb2JhbFNjb3BlOjpKU1dvcmtsZXRHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBSZWY8V29ya2xldEdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0V2
ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5tbSBiL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCmluZGV4IGRiMzU4MGI4YjUxZWJl
Y2YzZTk4M2JiMjAwM2FkMjM1MDc0ZWNiMTkuLjliNjMyMmY0NjM0YjU5NGQ0Mzk0ZmVlOTQwZDRm
YTk0NjIyZDQwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNS
dW50aW1lT2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50
aW1lT2JqZWN0Lm1tCkBAIC0zMyw3ICszMyw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFj
ZSBCaW5kaW5ncyB7CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU9iamVjdDo6c19pbmZv
ID0geyAiT2JqQ1J1bnRpbWVPYmplY3QiLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lT2JqZWN0KSB9OworY29u
c3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpDUnVudGltZU9i
amVjdCJfcywgJlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShPYmpDUnVudGltZU9iamVjdCkgfTsKIAogT2JqQ1J1bnRpbWVPYmplY3Q6
Ok9iakNSdW50aW1lT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZlB0cjxP
YmpjSW5zdGFuY2U+JiYgaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KHZtLCBzdHJ1Y3R1
cmUsIGluc3RhbmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2Jq
Y19pbnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2Uu
bW0KaW5kZXggNWIxYTgzNTNkOTAyZTFmOGQ3MzYyOGM2OTBiM2Y3NGIyMGYxY2ZlNC4uNmFmNmVh
MmI5MzAwNGU3OWEyNDZhNDMyYjVkZTU0YTIzMGU0NDZhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCkBAIC0yMDUsNyArMjA1LDcgQEAgcHJpdmF0ZToK
ICAgICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gT2JqQ1J1bnRpbWVNZXRob2Q6OnNfaW5mbyA9
IHsgIk9iakNSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRob2Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU1ldGhvZCkgfTsKK2NvbnN0
IENsYXNzSW5mbyBPYmpDUnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVNZXRo
b2QiX3MsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07CiAKIEpTQzo6SlNWYWx1ZSBPYmpjSW5z
dGFuY2U6OmdldE1ldGhvZChKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgUHJv
cGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfcnVudGltZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29i
amNfcnVudGltZS5tbQppbmRleCBiNDZjNTZmZDAxMDUwODY5NTdkY2UzMmRkNWY2NjY1NjljNGNh
NmQzLi4xNWNiNmEwOGU1YzM1YzE3MjJjZGQzN2NhMzhhYzVjYTk0NGZhMTU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCkBAIC0yMTUsNyArMjE1LDcgQEAg
dW5zaWduZWQgaW50IE9iamNBcnJheTo6Z2V0TGVuZ3RoKCkgY29uc3QKICAgICByZXR1cm4gW19h
cnJheSBjb3VudF07CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpjRmFsbGJhY2tPYmplY3RJbXA6
OnNfaW5mbyA9IHsgIk9iamNGYWxsYmFja09iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqY0ZhbGxiYWNrT2JqZWN0SW1wKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIE9iamNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAiT2JqY0Zh
bGxiYWNrT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsKIAogT2JqY0ZhbGxiYWNrT2Jq
ZWN0SW1wOjpPYmpjRmFsbGJhY2tPYmplY3RJbXAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIE9iamNJbnN0YW5jZSogaSwgY29uc3QgU3RyaW5nJiBw
cm9wZXJ0eU5hbWUpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZt
KCksIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X2FycmF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAppbmRl
eCBhOWVhNjQyOGM1ZDExN2Y2ZmUyOGJkMGNjMTEyNDgzMjQxNmYxOWM1Li5jMDVlM2E0MGU4MDU2
NjVkYzBmZGVkMDJjMzA1MThlZDk2Mjg2MGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvcnVudGltZV9hcnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRp
bWVfYXJyYXkuY3BwCkBAIC0zNyw3ICszNyw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZv
ID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGlt
ZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihhcnJheUxlbmd0aEdldHRlcik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCmluZGV4IDY1OGY3M2NhZThhOTEwZDAw
ZmNjNWRjNjIwZTIzNzIxYzNiNzk2ZDAuLmUxOGVjMmM4OGUxODcwZjlkNmU4ZTM2NDgxZDE3ZTVl
OWRlMDFjMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhv
ZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcApAQCAt
NDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogdXNpbmcgbmFtZXNwYWNlIEJpbmRpbmdz
OwogCi1XRUJDT1JFX0VYUE9SVCBjb25zdCBDbGFzc0luZm8gUnVudGltZU1ldGhvZDo6c19pbmZv
ID0geyAiUnVudGltZU1ldGhvZCIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU1ldGhvZCkgfTsKK1dFQkNPUkVf
RVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1l
TWV0aG9kIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxSdW50aW1lTWV0aG9kKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9D
VVNUT01fR0VUVEVSKG1ldGhvZExlbmd0aEdldHRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1
bnRpbWVfb2JqZWN0LmNwcAppbmRleCA5ZDNmM2M1YzY5MDQ3YjJlNDAwZmMyNzJiNWE3N2U4ZWQz
MzJiOWI3Li5iMjRmMmFlZjE5NGJhZDI1YjNhNjFlYjg4ZTc0MTQ3ZGNlOTMxMGM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5n
cyB7CiAKLVdFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lT2JqZWN0OjpzX2lu
Zm8gPSB7ICJSdW50aW1lT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9OworV0VCQ09SRV9FWFBPUlQgY29u
c3QgQ2xhc3NJbmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVu
dGltZU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29udmVy
dFJ1bnRpbWVPYmplY3RUb1ByaW1pdGl2ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihjYWxsUnVudGltZU9iamVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0N1c3RvbVBhaW50SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9DdXN0b21QYWludElt
YWdlLmNwcAppbmRleCBmNGI5OGJhNjJlMTE5YTA3NzEzMTJkM2I4OGM0OTE5MzY4MzZlZTM3Li5h
YmQyZDc1NDIzMDI5Mjg0MzIxNTQ5NDQwMTM1YjgwMDY2YjRiNTI4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvQ3VzdG9tUGFpbnRJbWFnZS5jcHAKQEAgLTE1Niw3ICsxNTYsNyBAQCBJbWFnZURyYXdS
ZXN1bHQgQ3VzdG9tUGFpbnRJbWFnZTo6ZG9DdXN0b21QYWludChHcmFwaGljc0NvbnRleHQmIGRl
c3RDb250ZXh0LCBjbwogCiAgICAgYXV0byYgbGV4aWNhbEdsb2JhbE9iamVjdCA9IGdsb2JhbE9i
amVjdDsKICAgICBKU0M6OkFyZ0xpc3Qgbm9BcmdzOwotICAgIEpTQzo6SlNWYWx1ZSB0aGlzT2Jq
ZWN0ID0geyBKU0M6OmNvbnN0cnVjdCgmbGV4aWNhbEdsb2JhbE9iamVjdCwgcGFpbnRDb25zdHJ1
Y3Rvciwgbm9BcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBwYWludCBjbGFzcyIpIH07CisgICAg
SlNDOjpKU1ZhbHVlIHRoaXNPYmplY3QgPSB7IEpTQzo6Y29uc3RydWN0KCZsZXhpY2FsR2xvYmFs
T2JqZWN0LCBwYWludENvbnN0cnVjdG9yLCBub0FyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0IHBh
aW50IGNsYXNzIl9zKSB9OwogCiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkg
ewogICAgICAgICByZXBvcnRFeGNlcHRpb24oJmxleGljYWxHbG9iYWxPYmplY3QsIHNjb3BlLmV4
Y2VwdGlvbigpKTsK
</data>
<flag name="commit-queue"
          id="483560"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455533</attachid>
            <date>2022-03-23 11:36:46 -0700</date>
            <delta_ts>2022-03-23 11:51:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323113645.patch</filename>
            <type>text/plain</type>
            <size>667904</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
OGVlYjIwODc1NjkzZGM2ZmNjODdjZWUwMTUzNzAyMzM1MjVmNDY5Li41ZWFkZmIwNTcyNDJmZjk3
NDZjYzg3MGNmMzI1MjUyNDExNjA4MTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hh
ciopIGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAg
ICBleHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1
Y3RpbmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5n
IHRoZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21w
dXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVj
dDo6bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5j
cHA6CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkv
SlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0
aW9uLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Nj
cmlwdC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJ
L0pTVHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFy
cmF5QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZm
ZXJBbmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRl
U3RydWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAg
ICAqIEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9y
Q3VzdG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAg
ICAgICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBB
UEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGli
L0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoK
KyAgICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0
aW9uQ2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5k
bGVyOjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29k
ZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0
S2luZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5
dGVjb2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAg
ICAgICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2Rl
L1VubGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxD
b2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNw
cDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVs
ZXRlQnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5v
ZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgor
ICAgICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2Fs
bEZyYW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAg
ICAgIChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9v
dE1hcmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9y
L0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0
b3I6OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAg
ICAoSW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVz
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Oklu
c3BlY3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0
YWJsZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAg
ICAqIGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgor
ICAgICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6Cisg
ICAgICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToK
KyAgICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFy
Z3VtZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAg
KiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBh
cnNlUHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVS
ZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRv
bWljc09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVD
YWNoZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFy
ZEVycm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1
bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpT
Qzo6Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAg
ICAgICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVT
eW50YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToK
KyAgICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Q29uc3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICog
cnVudGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFs
RXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5j
dGlvblNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291
cmNlQXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNv
dXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVu
ZGVyKToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVh
dGVJbnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5l
ZFByaXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNj
ZXNzRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJy
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdT
bG93KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcElt
cGwuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
ICogcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6
OmluaXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZSk6CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpT
Qzo6aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0
aWFsaXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
SXRlcmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdt
ZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlh
bGl6ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6Cisg
ICAgICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0Jv
dW5kRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJl
YW0pOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rp
b24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRU
RVIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAg
ICAgIChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXAp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9K
U0dlbmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgor
ICAgICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRl
UmFuZ2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5
cGVGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAg
IChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVC
dXR0ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01h
cC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2Jq
ZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
SlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6
d3JhcFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Nj
cmlwdEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5n
OjpkdW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVk
QXJyYXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFr
TWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkxpdGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KiBydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJh
dG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAg
ICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dp
dGhSYWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAg
ICAgIChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRv
U3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVy
YXRpb25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChK
U0M6OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5
VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBP
YmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3Bl
ZEFyZ3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHA6CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxt
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OnRvTG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJv
bENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
U3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJh
dGlvbjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1w
b3JhbE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNt
YWxsZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFp
blRpbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6
OmxvZ1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFr
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMv
RnVuY3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6
RnVuY3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9v
bHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMpOgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAo
SlNDOjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUlu
c3BlY3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAg
ICAgICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJy
b3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6
CisgICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNt
R2xvYmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAq
IHdhc20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6
ZGlkQ29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5j
cHA6CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAg
ICAgICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlv
bi5jcHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAg
ICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAo
SlNDOjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1i
bHlNb2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5j
cHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29y
ZC5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXpl
RXhwb3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNt
L2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlX
cmFwcGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgor
ICAgICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVy
cm9yTWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMt
MjMgIFhhbiBMb3BleiAgPHhhbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBEb05v
dEhhdmVUYWdSZWdpc3RlcnMgbW9kZSB0byB1bmJveERvdWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBj
MDdlMWFmMmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi42MTk2NGFjNzE2MjkxMTFlYzJhZTEzNTQ4N2Y5
YTdmNDZjZTE4YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0
aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5o
OgorICAgICAgICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAo
V1RGOjpkaXNwbGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
Y3BwOgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24p
OgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6
bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcu
aDoKKwogMjAyMi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQu
b3JnPgogCiAgICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggNzI5OTFmYTkzYjc0MWRhMDc2ZTk4MTFmYTYxMDExZGQ2MzdiNWYyMC4uMjRkYWFj
N2ZlODgzNDMxMmI1NTNkN2RjNDdiNTcxZWE1MGZhNTBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDMwIEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAg
ICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25z
dHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5k
b3dQcm94eS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5j
cHA6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAg
ICAgIChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpD
UnVudGltZU9iamVjdC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
OgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAg
ICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVu
dGltZV9hcnJheS5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAg
ICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIzICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBWaWRlb0ZyYW1lIGRvZXMgbm90
IG5lZWQgdG8gaW5oZXJpdCBmcm9tIE1lZGlhU2FtcGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwCmluZGV4IDNkY2VhNmNhMjZlMjhiZGUzOGY0
YjY5Mzk0NmVlMjkyMDMwN2E0ZGIuLjEyNWJjOTlhMWQ1MmY1OThiNmZkZDlkNmQ4MzBjNThkNDk3
OTFmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgSlNBUElHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQppbmRleCBiM2UyYWU0NDFjNGVjNTIzNDJh
ZmU5ZDU0OWU0YWU2MjM4Y2UzNDVmLi5lNGI4NTliOWNmNzI0NjY5NjRiNGE5ZDc0YjUzNjMzOGQw
MmEyZmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFs
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QubW0KQEAgLTUwLDcgKzUwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJs
ZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKQEAgLTkwLDcgKzkwLDcgQEAgc3Rh
dGljIEV4cGVjdGVkPFVSTCwgU3RyaW5nPiBjb21wdXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIoY29u
c3QgVVJMJiBiYXNlLCBjb25zdAogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQobWFrZVN0
cmluZygiTW9kdWxlIHNwZWNpZmllcjogIl9zLCBzcGVjaWZpZXIsICIgZG9lcyBub3Qgc3RhcnQg
d2l0aCBcIi9cIiwgXCIuL1wiLCBvciBcIi4uL1wiLiBSZWZlcmVuY2VkIGZyb206ICJfcywgYmFz
ZS5zdHJpbmcoKSkpOwogCiAgICAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcvJykpIHsKLSAg
ICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iKSwgc3BlY2lmaWVyKTsK
KyAgICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iX3MpLCBzcGVjaWZp
ZXIpOwogICAgICAgICBpZiAoYWJzb2x1dGVVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0
dXJuIGFic29sdXRlVVJMOwogICAgIH0KQEAgLTE3NywxMiArMTc3LDEyIEBAIEpTSW50ZXJuYWxQ
cm9taXNlKiBKU0FQSUdsb2JhbE9iamVjdDo6bW9kdWxlTG9hZGVyRmV0Y2goSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAKICAgICBpZiAoVU5MSUtFTFkoIVtjb250ZXh0IG1vZHVsZUxvYWRlckRl
bGVnYXRlXSkpIHsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICBwcm9taXNlLT5y
ZWplY3QoZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJObyBtb2R1bGUg
bG9hZGVyIHByb3ZpZGVkLiIpKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KGdsb2JhbE9iamVj
dCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRlciBwcm92aWRlZC4i
X3MpKTsKICAgICAgICAgcmV0dXJuIHByb21pc2U7CiAgICAgfQogCiAgICAgYXV0byBzdHJvbmdQ
cm9taXNlID0gU3Ryb25nPEpTSW50ZXJuYWxQcm9taXNlPih2bSwgcHJvbWlzZSk7Ci0gICAgYXV0
byogcmVzb2x2ZSA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCAxLCAicmVzb2x2ZSIsIFs9XSAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpIHsKKyAgICBhdXRvKiByZXNvbHZlID0gSlNOYXRpdmVTdGRGdW5jdGlv
bjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsICJyZXNvbHZlIl9zLCBbPV0gKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAgICAgICAgIC8v
IFRoaXMgY2FwdHVyZXMgdGhlIGdsb2JhbE9iamVjdCBidXQgdGhhdCdzIG9rIGJlY2F1c2Ugb3Vy
IHN0cnVjdHVyZSBrZWVwcyBpdCBhbGl2ZSBhbnl3YXkuCiAgICAgICAgIFZNJiB2bSA9IGdsb2Jh
bE9iamVjdC0+dm0oKTsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW0pTQ29udGV4dCBj
b250ZXh0V2l0aEpTR2xvYmFsQ29udGV4dFJlZjp0b0dsb2JhbFJlZihnbG9iYWxPYmplY3QpXTsK
QEAgLTIxMyw3ICsyMTMsNyBAQCBKU0ludGVybmFsUHJvbWlzZSogSlNBUElHbG9iYWxPYmplY3Q6
Om1vZHVsZUxvYWRlckZldGNoKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICByZXR1
cm4gZW5jb2RlZEpTVW5kZWZpbmVkKCk7CiAgICAgfSk7CiAKLSAgICBhdXRvKiByZWplY3QgPSBK
U05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJlamVjdCIs
IFs9XSAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgeworICAgIGF1dG8q
IHJlamVjdCA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAx
LCAicmVqZWN0Il9zLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
IHsKICAgICAgICAgc3Ryb25nUHJvbWlzZS5nZXQoKS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAgICAgIHJldHVybiBlbmNvZGVkSlNVbmRlZmluZWQo
KTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElW
YWx1ZVdyYXBwZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3Jh
cHBlci5jcHAKaW5kZXggMjFhN2E5N2MwZWNlZGY5MDEyNTUzMDFlNzZjNzhjNGYyYjQ0NmQ3Yy4u
MTc3OGI2MWQ2NzU1YjlhNWI3NmE1NDA1NjYxNTgyMzk0YjRlZjYyYiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKQEAgLTI4LDYgKzI4LDYg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShKU0FQSVZhbHVlV3JhcHBlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQVBJVmFsdWVXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQVBJVmFsdWVXcmFwcGVyOjpzX2luZm8gPSB7ICJBUEkgV3JhcHBlciJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBl
cikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCmluZGV4IDQ3NzNiMDc0NDg3MzQ4YTg3ZWZjODIxZDEy
YjJhOTNjZTg2MTIxOTUuLmZjODVlZDdiZGViNmY5ZjUwMjA3MWZmM2ZiOWY2M2RmMjdhODM5MmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1t
CkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRp
Y0Z1bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyT2JqZWN0Q2FsbGJhY2tPCiAKIERFRklORV9WSVNJ
VF9DSElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNB
UElXcmFwcGVyT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBl
ck9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGUgPD4gY29uc3QgYm9vbCBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVl
OwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCmluZGV4IDQ4Nzc3ODg5MzBlZTQyZmRhYjM1ODc1OWRiZjcx
NDJmMDM2YTMzYmEuLmJhMDU2NjVjOTg5YTg1NWQ1ZTk1ODIyZWM0OWZlMjBlOTM0MWY3M2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0
cnVjdG9yKSB9OwogCiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3Rv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlND
bGFzc1JlZiBqc0NsYXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDEyODY3
MDljMDhjMmExY2FhMWQzYzM5Yjc5NjBjYzZiNzkxNzEzZGIuLmM5OTY1MDE5ZDJjMDI5NzU2NjZm
NzJkOGVmODIzZGJmZGU3NDJiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0NhbGxiYWNrRnVu
Y3Rpb24pOwogCi1jb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7
ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0
aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTQ2FsbGJhY2tGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwCmluZGV4IDQ0NGMxNTAzNDUx
ZGQ5Nzk1MzBhMTg1Y2RhMzg2ZWUxZDFjNjdiYjguLjE1ZGFmM2MyZmNjNDdlNTkyZjFkNjQyMTI2
YWQ3ZmE4YjU3MjM4Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxi
YWNrT2JqZWN0LmNwcApAQCAtNDUsOCArNDUsOCBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lU
SF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplYwog
REVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFj
a09iamVjdDxKU0dsb2JhbE9iamVjdD4pOwogCiAvLyBEZWZpbmUgdGhlIHR3byB0eXBlcyBvZiBK
U0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZv
IEpTQ2FsbGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNr
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBK
U0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2Fs
bGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCBjNzg0ZGZiYTk0MDY5Njky
NDk5ZWM3MzY4YWUxYWNiZWIxYzc5NGRiLi41MWRhNzc3YWQyNDU0NTg1MTgyM2MxZDczNjk3YjU3
ZGUyMGFlMDdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJh
Y2tPYmplY3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2Fs
bGJhY2tPYmplY3RGdW5jdGlvbnMuaApAQCAtMjExLDcgKzIxMSw3IEBAIGJvb2wgSlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgSlNH
bG9iYWxPYmplCiAgICAgaWYgKHByb3BlcnR5TmFtZS51aWQoKSA9PSB2bS5wcm9wZXJ0eU5hbWVz
LT50b1N0cmluZ1RhZ1N5bWJvbC5pbXBsKCkpIHsKICAgICAgICAgU3RyaW5nIGNsYXNzTmFtZSA9
IHRoaXNPYmplY3QtPmNsYXNzUmVmKCktPmNsYXNzTmFtZSgpOwogICAgICAgICBpZiAoY2xhc3NO
YW1lLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXNPYmplY3QtPmNsYXNz
TmFtZSh2bSk7CisgICAgICAgICAgICBjbGFzc05hbWUgPSAgdGhpc09iamVjdC0+Y2xhc3NOYW1l
KHZtKTsKICAgICAgICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwganNTdHJpbmcodm0sIFdURk1vdmUo
Y2xhc3NOYW1lKSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU1NjcmlwdC5tbQppbmRleCA4NTAzNDdiN2NkNzEyNjBhMGJmNjU5MDc1MGE5YTQ1
MGRjMzExYzFjLi42YjAyMDZlMDM3ZjMyM2MzMmY5OTEzNDIyMWFkYWRhYjM3NWZhMGUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNTY3JpcHQubW0KQEAgLTE1NCw4ICsxNTQsNyBAQCAtICh2
b2lkKXJlYWRDYWNoZQogICAgIGlmICghbV9jYWNoZVBhdGgpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIE5TU3RyaW5nICpjYWNoZVBhdGhTdHJpbmcgPSBbbV9jYWNoZVBhdGggcGF0aF07Ci0gICAg
Y29uc3QgY2hhciogY2FjaGVGaWxlbmFtZSA9IGNhY2hlUGF0aFN0cmluZy5VVEY4U3RyaW5nOwor
ICAgIFN0cmluZyBjYWNoZUZpbGVuYW1lID0gW21fY2FjaGVQYXRoIHBhdGhdOwogCiAgICAgYXV0
byBmZCA9IEZpbGVTeXN0ZW06Om9wZW5BbmRMb2NrRmlsZShjYWNoZUZpbGVuYW1lLCBGaWxlU3lz
dGVtOjpGaWxlT3Blbk1vZGU6OlJlYWQsIHtGaWxlU3lzdGVtOjpGaWxlTG9ja01vZGU6OkV4Y2x1
c2l2ZSwgRmlsZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpOb25ibG9ja2luZ30pOwogICAgIGlmICgh
RmlsZVN5c3RlbTo6aXNIYW5kbGVWYWxpZChmZCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTVHlwZWRBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTVHlwZWRBcnJheS5jcHAKaW5kZXggYWJhNmRmNmUyYTMxODM4ZTczODg0OWQyOGI3MjkyZTIx
MzJhNGU5MS4uOTNlZTg4NGM1Yzk5ZGViNzBiYjQxOWRiODZhMmM5NWVjMTEyZGNkMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNUeXBlZEFycmF5LmNwcApAQCAtMjE5LDcgKzIxOSw3
IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIoSlND
b250ZXh0UmVmIGN0eCwgSlNUeXBlZEFycmF5CiAKICAgICBKU0FycmF5QnVmZmVyKiBqc0J1ZmZl
ciA9IGpzRHluYW1pY0Nhc3Q8SlNBcnJheUJ1ZmZlcio+KHZtLCB0b0pTKGpzQnVmZmVyUmVmKSk7
CiAgICAgaWYgKCFqc0J1ZmZlcikgewotICAgICAgICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRp
b24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5
V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmpl
Y3QiKSk7CisgICAgICAgIHNldEV4Y2VwdGlvbihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIg
ZXhwZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJyYXkgQnVmZmVyIG9iamVjdCJfcykpOwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKQEAgLTI0NCw3ICsyNDQsNyBAQCBKU09iamVjdFJl
ZiBKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyQW5kT2Zmc2V0KEpTQ29udGV4
dFJlZiBjdHgsIEpTVAogCiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBqc0R5bmFtaWND
YXN0PEpTQXJyYXlCdWZmZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAgIGlmICghanNC
dWZmZXIpIHsKLSAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZl
ciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0IikpOworICAgICAg
ICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVy
IHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFs
dWUubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KaW5kZXggZDNhZDA4
MGUxZGRmNGZlNmVmYmE5MTM1YmEyNjg3NmM3N2RjYmMyNi4uZjEyYTJjNDk1M2YwMDMyZGZiNGI3
MmY2OGZmODBmZWRkYjY5MDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU1ZhbHVlLm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZS5tbQpA
QCAtMTE3OSw3ICsxMTc5LDcgQEAgc3RhdGljIFN0cnVjdEhhbmRsZXJzKiBjcmVhdGVTdHJ1Y3RI
YW5kbGVyTWFwKCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgLy8gVHJ5IHRvIGZpbmQg
YSBtYXRjaGluZyB2YWx1ZVdpdGg8Rm9vPjpjb250ZXh0OiBtZXRob2QuCiAgICAgICAgIGF1dG8g
dHlwZSA9IGFkb3B0U3lzdGVtPGNoYXJbXT4obWV0aG9kX2NvcHlSZXR1cm5UeXBlKG1ldGhvZCkp
OwotICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJz
LT5maW5kKHR5cGUuZ2V0KCkpOworICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRl
ciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKFN0cmluZyB7IHR5cGUuZ2V0KCkgfSk7CiAgICAgICAg
IGlmIChpdGVyID09IHN0cnVjdEhhbmRsZXJzLT5lbmQoKSkKICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgU3RydWN0VGFnSGFuZGxlciYgaGFuZGxlciA9IGl0ZXItPnZhbHVlOwpAQCAtMTIx
Nyw3ICsxMjE3LDcgQEAgc3RhdGljIFN0cnVjdFRhZ0hhbmRsZXIqIGhhbmRlckZvclN0cnVjdFRh
Zyhjb25zdCBjaGFyKiBlbmNvZGVkVHlwZSkKIAogICAgIHN0YXRpYyBTdHJ1Y3RIYW5kbGVycyog
c3RydWN0SGFuZGxlcnMgPSBjcmVhdGVTdHJ1Y3RIYW5kbGVyTWFwKCk7CiAKLSAgICBTdHJ1Y3RI
YW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKGVuY29kZWRUeXBl
KTsKKyAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5m
aW5kKFN0cmluZyB7IGVuY29kZWRUeXBlIH0pOwogICAgIGlmIChpdGVyID09IHN0cnVjdEhhbmRs
ZXJzLT5lbmQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuICZpdGVyLT52YWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJNYXAubW0KaW5kZXggNzBkZWZjMDA0
MDNmYTFiYTUwZmE1MmNiNTU5NWMyYzE2YjdjNjJkYy4uZjgyMWRmOGUzZWJlZDU3ZjU0MGNkMmYw
MWQ2NGVjOTZkY2ZhODZjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U1dyYXBwZXJNYXAubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJN
YXAubW0KQEAgLTQzOCw3ICs0MzgsNyBAQCBzdGF0aWMgSlNDOjpKU09iamVjdCogYWxsb2NhdGVD
b25zdHJ1Y3RvckZvckN1c3RvbUNsYXNzKEpTQ29udGV4dCAqY29udGV4dCwgY29ucwogICAgICAg
ICAgICAgICAgIGNvbnN0IGNoYXIqIG5hbWUgPSBzZWxfZ2V0TmFtZShzZWxlY3Rvcik7CiAgICAg
ICAgICAgICAgICAgaWYgKCFpc0luaXRGYW1pbHlNZXRob2QoQChuYW1lKSkpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KG5hbWUsIChf
X2JyaWRnZSBDRlR5cGVSZWYpcHJvdG9jb2wpOworICAgICAgICAgICAgICAgIGluaXRUYWJsZS5z
ZXQoU3RyaW5nIHsgbmFtZSB9LCAoX19icmlkZ2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsKICAgICAg
ICAgICAgIH0pOwogICAgICAgICB9KTsKICAgICB9CkBAIC00NTEsNyArNDUxLDcgQEAgc3RhdGlj
IEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3RydWN0b3JGb3JDdXN0b21DbGFzcyhKU0NvbnRl
eHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgZm9yRWFjaE1ldGhvZEluQ2xhc3MoY3VycmVudENs
YXNzLCBeKE1ldGhvZCBtZXRob2QpIHsKICAgICAgICAgICAgIFNFTCBzZWxlY3RvciA9IG1ldGhv
ZF9nZXROYW1lKG1ldGhvZCk7CiAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lID0gc2VsX2dl
dE5hbWUoc2VsZWN0b3IpOwotICAgICAgICAgICAgYXV0byBpdGVyID0gaW5pdFRhYmxlLmZpbmQo
bmFtZSk7CisgICAgICAgICAgICBhdXRvIGl0ZXIgPSBpbml0VGFibGUuZmluZChTdHJpbmcgeyBu
YW1lIH0pOwogCiAgICAgICAgICAgICBpZiAoaXRlciA9PSBpbml0VGFibGUuZW5kKCkpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2Jq
Q0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXggZGY3NjBjNjI4NjY4YTRmNDZlODlkNTMzNjA5M2Qx
Y2E1YzAyNDRkYy4uOGQ4ZTM1MTY5ZDk2MzQ2OTIzN2U0Mzk1ZDYyOTMzMzM0YjI2ZmQ1YSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5t
bQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxsYmFja0Z1bmN0aW9uLm1t
CkBAIC01MzMsNyArNTMzLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVmIG9iakNDYWxsYmFja0Z1bmN0
aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNhbGxlckNvbnQKICAgICByZXR1cm4g
Y29uc3RfY2FzdDxKU09iamVjdFJlZj4ocmVzdWx0KTsKIH0KIAotY29uc3QgSlNDOjpDbGFzc0lu
Zm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakND
YWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ0NhbGxiYWNrRnVuY3Rpb24p
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxPYmpDQ2FsbGJhY2tG
dW5jdGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RPYmpD
Q2FsbGJhY2tGdW5jdGlvbik7CkBAIC01NzQsMTAgKzU3NCwxMCBAQCB2b2lkIE9iakNDYWxsYmFj
a0Z1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIFN0cmluZyBPYmpDQ2FsbGJhY2tGdW5j
dGlvbkltcGw6Om5hbWUoKQogewogICAgIGlmIChtX3R5cGUgPT0gQ2FsbGJhY2tJbml0TWV0aG9k
KQotICAgICAgICByZXR1cm4gY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0KCkpOwor
ICAgICAgICByZXR1cm4gU3RyaW5nIHsgY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0
KCkpIH07CiAgICAgLy8gRklYTUU6IE1heWJlIHdlIGNvdWxkIHN1cHBvcnQgaGF2aW5nIHRoZSBz
ZWxlY3RvciBhcyB0aGUgbmFtZSBvZiB0aGUgbm9uLWluaXQgCiAgICAgLy8gZnVuY3Rpb25zIHRv
IG1ha2UgaXQgYSBiaXQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb20gdGhlIEpTIHNpZGU/Ci0gICAg
cmV0dXJuICIiOworICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogfQogCiBKU1ZhbHVlUmVmIE9i
akNDYWxsYmFja0Z1bmN0aW9uSW1wbDo6Y2FsbChKU0NvbnRleHQgKmNvbnRleHQsIEpTT2JqZWN0
UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCmlu
ZGV4IDNkYmQ5ZDM1M2Q2ZWJkYWI2ZjIzYzgyOTEyNzdlNTM2NjY3YzA2OGYuLjlhNTg3MmNiMTc3
NWIwYzE4OTc2YzgxNmEwOWYzYThlMDE3MmJhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCkBA
IC02Miw3ICs2Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRpY0Z1
bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0Q2FsCiAKIERFRklORV9WSVNJVF9D
SElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElX
cmFwcGVyR2xvYmFsT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJ
V3JhcHBlckdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0
IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNf
aW5mbyA9IHsgIkpTQVBJV3JhcHBlckdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9Owog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyR2xvYmFs
T2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CiAKIHRlbXBsYXRlIDw+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xp
Yi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0
R0xpYi5jcHAKaW5kZXggM2VhZjhmNjc5MGFlNzg1YTNkZDUyM2FiOWFlNDE3NGQxYmRiMjhkNC4u
ZjA1OTljMTBmNDQzOTM2NjYyY2VkNTZiMTY4NTc2NTBiN2I1ODkyOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJPYmplY3RHTGli
LmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihz
dGF0aWNGdW5jdGlvbkdldHRlckpTQVBJV3JhcHBlck9iamVjdENhbGxiYWNrTwogCiBERUZJTkVf
VklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlND
YWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBw
ZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdy
YXBwZXJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBK
U0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0
cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDA4MTA3N2E0YzA0M2NjYjQ4YWVi
MjliMDFmOGZmYzBkOGFmYmUxM2EuLmVkN2YxYTczOWYwNWJkODgzN2ZkNjM5ZjY4NDZmZWY2MDc1
Y2FlODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxs
YmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlND
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVm
IGNhbGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiBjYWxsZXJDb250ZXh0LCBKU09iamVjdFJl
ZiBjb24KICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SlNDQ2FsbGJhY2tGdW5jdGlvbio+KHRvSlMo
Y29uc3RydWN0b3IpKS0+Y29uc3RydWN0KGNhbGxlckNvbnRleHQsIGFyZ3VtZW50Q291bnQsIGFy
Z3VtZW50cywgZXhjZXB0aW9uKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ0NhbGxiYWNr
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZv
ID0geyAiQ2FsbGJhY2tGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0aW9uKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNDQ2FsbGJhY2tGdW5j
dGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU0NDYWxs
YmFja0Z1bmN0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVz
dHMvSlNPTlBhcnNlVGVzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pT
T05QYXJzZVRlc3QuY3BwCmluZGV4IGEwNjJhYWI3ZWRjNzNkNWI1MjE3YTU1YTllZjg1ZWE2NmRj
NzgyZmIuLmRmN2JmZGJiMDIxMGIyNmMwMGRjNzhjMzE2MTAwOGZjYjZlYjllYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcApAQCAt
NDMsMTMgKzQzLDEzIEBAIGludCB0ZXN0SlNPTlBhcnNlKCkKICAgICBKU0xvY2tIb2xkZXIgbG9j
a2VyKHZtLmdldCgpKTsKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gSlNHbG9i
YWxPYmplY3Q6OmNyZWF0ZSgqdm0sIEpTR2xvYmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUoKnZt
LCBqc051bGwoKSkpOwogICAgIAotICAgIEpTVmFsdWUgdjAgPSBKU09OUGFyc2UoZ2xvYmFsT2Jq
ZWN0LCAiIik7Ci0gICAgSlNWYWx1ZSB2MSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIjJCVe
Iik7CisgICAgSlNWYWx1ZSB2MCA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIiX3MpOworICAg
IEpTVmFsdWUgdjEgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiJfcyk7CiAgICAgSlNW
YWx1ZSB2MiA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsIFN0cmluZygpKTsKICAgICBVQ2hhciBl
bXB0eVVDaGFyQXJyYXlbMV0gPSB7ICdcMCcgfTsKICAgICBKU1ZhbHVlIHYzID0gSlNPTlBhcnNl
KGdsb2JhbE9iamVjdCwgU3RyaW5nKGVtcHR5VUNoYXJBcnJheSwgMCkpOwogICAgIEpTVmFsdWUg
djQ7Ci0gICAgSlNWYWx1ZSB2NSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIxMjMiKTsKKyAg
ICBKU1ZhbHVlIHY1ID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIjEyMyJfcyk7CiAgICAgCiAg
ICAgZmFpbGVkID0gZmFpbGVkIHx8ICh2MCAhPSB2MSk7CiAgICAgZmFpbGVkID0gZmFpbGVkIHx8
ICh2MSAhPSB2Mik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mv
U2NyaXB0RnVuY3Rpb25DYWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9T
Y3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDdmZjNlNjFlNDI1MjM2YThlNjU2NTVhYjkwZTNh
OWQ0NzllOWFmNDIuLjNhYTkyNTNkMzM0ODcwMDNlOTczN2RiZDIyMGI4MGE0YWFiOTNhOTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlvbkNh
bGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlv
bkNhbGwuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHZvaWQgU2NyaXB0Q2FsbEFyZ3VtZW50SGFuZGxl
cjo6YXBwZW5kQXJndW1lbnQoY29uc3QgY2hhciogYXJndW1lbnQpCiB7CiAgICAgVk0mIHZtID0g
bV9nbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0pOwotICAgIG1f
YXJndW1lbnRzLmFwcGVuZChqc1N0cmluZyh2bSwgYXJndW1lbnQpKTsKKyAgICBtX2FyZ3VtZW50
cy5hcHBlbmQoanNTdHJpbmcodm0sIFN0cmluZyB7IGFyZ3VtZW50IH0pKTsKIH0KIAogdm9pZCBT
Y3JpcHRDYWxsQXJndW1lbnRIYW5kbGVyOjphcHBlbmRBcmd1bWVudChKU1ZhbHVlIGFyZ3VtZW50
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAppbmRleCAw
OThhZWQ5MzVhNjhmN2Q2Njg3YmQzNTIzMjUzMDc3ZjMxZWQxOWYyLi42ZDlkOGI1MWUxMTlkYmMw
NzgwOTExNGUxY2IxMGVkYjY3Mjg0NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmNwcApAQCAtOTYsNyArOTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIERF
RklORV9BTExPQ0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoQ29kZUJsb2NrUmFyZURhdGEpOwog
CiBjb25zdCBDbGFzc0luZm8gQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkNvZGVCbG9jayIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkNvZGVCbG9jayJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKENvZGVCbG9jaykKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJs
b2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBmYWE1MTk1MTM0NjQ4YzY2MjVmN2FjNTk0MzkxMjc0ZGQwNGI5YmIwLi42MGU5ZDg4
NjQ3ZDMyNTRhOTAyZjAzNmE4OWIxMGM5MDNiZDJkZjA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBu
YW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9
IHsKLSAgICAiRXZhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CisgICAgIkV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShFdmFsQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9ja0Vk
Z2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVC
bG9ja0VkZ2UuY3BwCmluZGV4IGJmOWQ2ZmU0MWNmODU3ODE0MGRmYWYzZGNkN2RlYWRkN2EzNjMz
OTQuLjM2ZGRiN2E2NjU3OTliNjc3NjdiMzA0ZmU1ZjM1ODk0N2FkNDc5MzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlOjpzX2luZm8gPSB7ICJFeGVj
dXRhYmxlVG9Db2RlQmxvY2tFZGdlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEV4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGVUb0Nv
ZGVCbG9ja0VkZ2UiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSkgfTsKIAogU3RydWN0dXJlKiBFeGVjdXRh
YmxlVG9Db2RlQmxvY2tFZGdlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCmluZGV4IGRlNmZlYmY4OGEzNGI5MDczZDBiNzc3
M2I3MWRjMjk0MDgzM2UzODEuLjg5NDAyNjBjODk5NTEyMzIyN2FhODM2NmRlNzQwMGMwYWU2OWQ3
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmNwcApAQCAt
MzEsNzAgKzMxLDcwIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kIGtpbmQpCitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0cmluZyhF
eGl0S2luZCBraW5kKQogewogICAgIHN3aXRjaCAoa2luZCkgewogICAgIGNhc2UgRXhpdEtpbmRV
bnNldDoKLSAgICAgICAgcmV0dXJuICJVbnNldCI7CisgICAgICAgIHJldHVybiAiVW5zZXQiX3M7
CiAgICAgY2FzZSBCYWRUeXBlOgotICAgICAgICByZXR1cm4gIkJhZFR5cGUiOworICAgICAgICBy
ZXR1cm4gIkJhZFR5cGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudFZhbHVlOgotICAgICAgICBy
ZXR1cm4gIkJhZENvbnN0YW50VmFsdWUiOworICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50VmFs
dWUiX3M7CiAgICAgY2FzZSBCYWRJZGVudDoKLSAgICAgICAgcmV0dXJuICJCYWRJZGVudCI7Cisg
ICAgICAgIHJldHVybiAiQmFkSWRlbnQiX3M7CiAgICAgY2FzZSBCYWRFeGVjdXRhYmxlOgotICAg
ICAgICByZXR1cm4gIkJhZEV4ZWN1dGFibGUiOworICAgICAgICByZXR1cm4gIkJhZEV4ZWN1dGFi
bGUiX3M7CiAgICAgY2FzZSBCYWRDYWNoZToKLSAgICAgICAgcmV0dXJuICJCYWRDYWNoZSI7Cisg
ICAgICAgIHJldHVybiAiQmFkQ2FjaGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudENhY2hlOgot
ICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50Q2FjaGUiOworICAgICAgICByZXR1cm4gIkJhZENv
bnN0YW50Q2FjaGUiX3M7CiAgICAgY2FzZSBCYWRJbmRleGluZ1R5cGU6Ci0gICAgICAgIHJldHVy
biAiQmFkSW5kZXhpbmdUeXBlIjsKKyAgICAgICAgcmV0dXJuICJCYWRJbmRleGluZ1R5cGUiX3M7
CiAgICAgY2FzZSBCYWRUeXBlSW5mb0ZsYWdzOgotICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZv
RmxhZ3MiOworICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZvRmxhZ3MiX3M7CiAgICAgY2FzZSBP
dmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJPdmVyZmxvdyI7CisgICAgICAgIHJldHVybiAiT3Zl
cmZsb3ciX3M7CiAgICAgY2FzZSBOZWdhdGl2ZVplcm86Ci0gICAgICAgIHJldHVybiAiTmVnYXRp
dmVaZXJvIjsKKyAgICAgICAgcmV0dXJuICJOZWdhdGl2ZVplcm8iX3M7CiAgICAgY2FzZSBOZWdh
dGl2ZUluZGV4OgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlSW5kZXgiOworICAgICAgICByZXR1
cm4gIk5lZ2F0aXZlSW5kZXgiX3M7CiAgICAgY2FzZSBJbnQ1Mk92ZXJmbG93OgotICAgICAgICBy
ZXR1cm4gIkludDUyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkludDUyT3ZlcmZsb3ciX3M7
CiAgICAgY2FzZSBTdG9yZVRvSG9sZToKLSAgICAgICAgcmV0dXJuICJTdG9yZVRvSG9sZSI7Cisg
ICAgICAgIHJldHVybiAiU3RvcmVUb0hvbGUiX3M7CiAgICAgY2FzZSBMb2FkRnJvbUhvbGU6Ci0g
ICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIjsKKyAgICAgICAgcmV0dXJuICJMb2FkRnJvbUhv
bGUiX3M7CiAgICAgY2FzZSBPdXRPZkJvdW5kczoKLSAgICAgICAgcmV0dXJuICJPdXRPZkJvdW5k
cyI7CisgICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiX3M7CiAgICAgY2FzZSBJbmFkZXF1YXRl
Q292ZXJhZ2U6Ci0gICAgICAgIHJldHVybiAiSW5hZGVxdWF0ZUNvdmVyYWdlIjsKKyAgICAgICAg
cmV0dXJuICJJbmFkZXF1YXRlQ292ZXJhZ2UiX3M7CiAgICAgY2FzZSBBcmd1bWVudHNFc2NhcGVk
OgotICAgICAgICByZXR1cm4gIkFyZ3VtZW50c0VzY2FwZWQiOworICAgICAgICByZXR1cm4gIkFy
Z3VtZW50c0VzY2FwZWQiX3M7CiAgICAgY2FzZSBFeG90aWNPYmplY3RNb2RlOgotICAgICAgICBy
ZXR1cm4gIkV4b3RpY09iamVjdE1vZGUiOworICAgICAgICByZXR1cm4gIkV4b3RpY09iamVjdE1v
ZGUiX3M7CiAgICAgY2FzZSBWYXJhcmdzT3ZlcmZsb3c6Ci0gICAgICAgIHJldHVybiAiVmFyYXJn
c092ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJWYXJhcmdzT3ZlcmZsb3ciX3M7CiAgICAgY2Fz
ZSBURFpGYWlsdXJlOgotICAgICAgICByZXR1cm4gIlREWkZhaWx1cmUiOworICAgICAgICByZXR1
cm4gIlREWkZhaWx1cmUiX3M7CiAgICAgY2FzZSBIb2lzdGluZ0ZhaWxlZDoKLSAgICAgICAgcmV0
dXJuICJIb2lzdGluZ0ZhaWxlZCI7CisgICAgICAgIHJldHVybiAiSG9pc3RpbmdGYWlsZWQiX3M7
CiAgICAgY2FzZSBVbmNvdW50YWJsZToKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZSI7Cisg
ICAgICAgIHJldHVybiAiVW5jb3VudGFibGUiX3M7CiAgICAgY2FzZSBVbmNvdW50YWJsZUludmFs
aWRhdGlvbjoKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZUludmFsaWRhdGlvbiI7CisgICAg
ICAgIHJldHVybiAiVW5jb3VudGFibGVJbnZhbGlkYXRpb24iX3M7CiAgICAgY2FzZSBXYXRjaGRv
Z1RpbWVyRmlyZWQ6Ci0gICAgICAgIHJldHVybiAiV2F0Y2hkb2dUaW1lckZpcmVkIjsKKyAgICAg
ICAgcmV0dXJuICJXYXRjaGRvZ1RpbWVyRmlyZWQiX3M7CiAgICAgY2FzZSBEZWJ1Z2dlckV2ZW50
OgotICAgICAgICByZXR1cm4gIkRlYnVnZ2VyRXZlbnQiOworICAgICAgICByZXR1cm4gIkRlYnVn
Z2VyRXZlbnQiX3M7CiAgICAgY2FzZSBFeGNlcHRpb25DaGVjazoKLSAgICAgICAgcmV0dXJuICJF
eGNlcHRpb25DaGVjayI7CisgICAgICAgIHJldHVybiAiRXhjZXB0aW9uQ2hlY2siX3M7CiAgICAg
Y2FzZSBHZW5lcmljVW53aW5kOgotICAgICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiOworICAg
ICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiX3M7CiAgICAgY2FzZSBCaWdJbnQzMk92ZXJmbG93
OgotICAgICAgICByZXR1cm4gIkJpZ0ludDMyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkJp
Z0ludDMyT3ZlcmZsb3ciX3M7CiAgICAgfQogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgcmV0dXJuICJVbmtub3duIjsKKyAgICByZXR1cm4gIlVua25vd24iX3M7CiB9CiAK
IGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCBraW5kKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAppbmRleCBiOGViMzEwNDgwNWZjYjVlOGYzNjMwYjZk
YTkxNWRjMjBiODRiYjhhLi5kODQwMzYyMGVjMjkyYzgxNzQ0ZWZjNjM3NzM3YTM2ZWNkOGY2NTg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaApAQCAtNTksNyAr
NTksNyBAQCBlbnVtIEV4aXRLaW5kIDogdWludDhfdCB7CiAgICAgQmlnSW50MzJPdmVyZmxvdywg
Ly8gV2UgZXhpdGVkIGJlY2F1c2Ugb2YgYW4gQmlnSW50MzIgb3ZlcmZsb3cuCiB9OwogCi1jb25z
dCBjaGFyKiBleGl0S2luZFRvU3RyaW5nKEV4aXRLaW5kKTsKK0FTQ0lJTGl0ZXJhbCBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kKTsKIGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCk7
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RlMGRhY2NhYTNmYWQyZDA3MDE5
MDZmMGM0MzMxMDMwMjNlYWMwYi4uODcwOWVjNmFkOTVmYjkzNmRjNzE2OGVjOWQ2Y2RkMWYyZGVh
ZGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9u
Q29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rp
b25Db2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9u
Q29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rp
b25Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNw
cAppbmRleCA2NTNkZDdhNGQzMzE0ODM2NjhiNTJhMjYxOWUxN2FjMTIyZWE0NWU3Li4xMGEwN2Qw
ZTA3MDcwOGM5YzcxZTk1ZDNmYjljODc3MmRhMmUxY2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBA
IC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIE1vZHVs
ZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAgICAiTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
ayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIk1vZHVsZVByb2dyYW1D
b2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRF
X01FVEhPRF9UQUJMRShNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGE1
MDhiNDY2MGEwNDgxYTg5MTRkYjJhNjA2MDdmNDEwNDU3Mzk3Y2UuLjgwNWIzZjc5N2EwMTZhMGJk
NjlhMTBiYzliMDE1ZjA4NDE2YTc3ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIG5hbWVz
cGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0g
ewotICAgICJQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAiUHJvZ3JhbUNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1Db2RlQmxvY2spCiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxv
Y2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2Nr
LmNwcAppbmRleCAxNjUzNTU3MTcxNWFlZDEzNTY2YmM3NzUwOWNiY2ViOTZjMTVlNWE2Li4xZDVk
MjEwYzkxMmViNmVlYjAzYmFiYTE4OThhNGM5MTYyMDZjMjc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKQEAgLTM5LDcg
KzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENv
ZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkQ29kZUJsb2NrKSB9OworY29u
c3QgQ2xhc3NJbmZvIFVubGlua2VkQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZENvZGVC
bG9jayJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShV
bmxpbmtlZENvZGVCbG9jaykgfTsKIAogVW5saW5rZWRDb2RlQmxvY2s6OlVubGlua2VkQ29kZUJs
b2NrKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIENvZGVUeXBlIGNvZGVUeXBlLCBjb25z
dCBFeGVjdXRhYmxlSW5mbyYgaW5mbywgT3B0aW9uU2V0PENvZGVHZW5lcmF0aW9uTW9kZT4gY29k
ZUdlbmVyYXRpb25Nb2RlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBlNDcxMmQ4NjhkZWJjZWZlNzQ2MzQ1NjY0NDYyMzgwZjg2MGYxY2E4Li5mNTdjYTM3
ZjIzNzM2MmU4NjNhMzJlNjZhMmI0Yzk3OGExY2ZhNTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcApAQCAt
MzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlu
a2VkRXZhbENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRFdmFsQ29kZUJsb2NrIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtl
ZEV2YWxDb2RlQmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRFdmFsQ29kZUJsb2Nr
OjpzX2luZm8gPSB7ICJVbmxpbmtlZEV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRXZhbENvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNlbGwp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RhZWYwM2ZhNjdhZWI3Y2IxNjcxNDEy
YWNmZGRjMjk0ZGY2MDE4Yi4uY2ZhYzhiYzczYTVmZDE3Zjk5ZWI0MDdiNTY2NGM4MGYzNjEyNzU0
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVu
Y3Rpb25Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNf
aW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBj
ZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggY2JmZWRmNTJjODAyNDAzNTA4
MjE0Y2RkNTc1MGY4OTc0ZTI2NmRlOS4uMTc1ZTVkNTgwM2ViMzhkNGNiZmYzY2Q2NmZiMjQ3ZjAz
NDdiNjA2YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBzdGF0aWNfYXNzZXJ0KHNpemVvZihVbmxpbmtlZEZ1bmN0aW9uRXhl
Y3V0YWJsZSkgPD0gMTI4LCAiVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUgc2hvdWxkIGZpdCBp
biBhIDEyOC1ieXRlIGNlbGwgdG8ga2VlcCBhbGxvY2F0ZWQgYmxvY2tzIGNvdW50IHRvIG9ubHkg
b25lIGFmdGVyIGluaXRpYWxpemluZyBKU0dsb2JhbE9iamVjdC4iKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0
aW9uRXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKSB9OwogCiBzdGF0aWMgVW5saW5rZWRGdW5jdGlv
bkNvZGVCbG9jayogZ2VuZXJhdGVVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKAogICAgIFZNJiB2
bSwgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNv
ZGUmIHNvdXJjZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggYzlkNGJj
NDYxMzU1ZWI3Y2IxYWFmZDcyZWY3MjJmYTEwNGU5MzBlMi4uM2NjODFhODM2MzUxNTQyYzBkMWNm
ZDVmODgzMzYwYjEyOGNhZmY5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0geyAiVW5s
aW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
aykgfTsKIAogdm9pZCBVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OmRlc3Ryb3koSlND
ZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCAyOWVjOWRiMGQ4ZjljYmU4
ZWRmOWE0OGNiY2QyYTdkZjk2YmMxMThmLi40ZTE5ZjYyMTQ2NmIxYTI4MjRmNmJhOGNiMTczZDc2
N2I5MDU1NzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9j
azo6c19pbmZvID0geyAiVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZFByb2dyYW1Db2Rl
QmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2lu
Zm8gPSB7ICJVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNl
bGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5
dGVjb2RlR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIv
Qnl0ZWNvZGVHZW5lcmF0b3IuY3BwCmluZGV4IDc5M2UwOWYyNjMwNWIzNzhmZDBlYTRiMjk4M2My
NzBlYmY0OGFiNDguLjNhMDM3MGQ1NmU1M2MzMzA0ZWZkOGY0MDgyY2I3NDIzN2U3NWMzZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNv
ZGVHZW5lcmF0b3IuY3BwCkBAIC00NTAsMTQgKzQ1MCwxNCBAQCBCeXRlY29kZUdlbmVyYXRvcjo6
Qnl0ZWNvZGVHZW5lcmF0b3IoVk0mIHZtLCBGdW5jdGlvbk5vZGUqIGZ1bmN0aW9uTm9kZSwgVW5s
aW5rZQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6TmFrZWQ6CiAg
ICAgICAgIGlmICghaXNDb25zdHJ1Y3RvcigpKSB7Ci0gICAgICAgICAgICBlbWl0VGhyb3dUeXBl
RXJyb3IoIkNhbm5vdCBjYWxsIGEgY29uc3RydWN0b3Igd2l0aG91dCB8bmV3fCIpOworICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVjdG9yIHdpdGhv
dXQgfG5ld3wiX3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ29uc3RydWN0b3JLaW5kOjpCYXNlOgogICAgIGNhc2UgQ29uc3RydWN0
b3JLaW5kOjpFeHRlbmRzOgogICAgICAgICBpZiAoIWlzQ29uc3RydWN0b3IoKSkgewotICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGNvbnN0cnVjdG9y
IHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90
IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Il9zKTsKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTI4NzEsNyArMjg3MSw3IEBA
IFJlZ2lzdGVySUQqIEJ5dGVjb2RlR2VuZXJhdG9yOjplbWl0SGFzUHJpdmF0ZUJyYW5kKFJlZ2lz
dGVySUQqIGRzdCwgUmVnaXN0ZXJJRCoKICAgICBpZiAoaXNTdGF0aWMpIHsKICAgICAgICAgUmVm
PExhYmVsPiBpc09iamVjdExhYmVsID0gbmV3TGFiZWwoKTsKICAgICAgICAgZW1pdEp1bXBJZlRy
dWUoZW1pdElzT2JqZWN0KG5ld1RlbXBvcmFyeSgpLCBiYXNlKSwgaXNPYmplY3RMYWJlbC5nZXQo
KSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJp
dmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3Igb2YgYSBub24tT2JqZWN0Iik7CisgICAgICAgIGVtaXRU
aHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNj
ZXNzb3Igb2YgYSBub24tT2JqZWN0Il9zKTsKICAgICAgICAgZW1pdExhYmVsKGlzT2JqZWN0TGFi
ZWwuZ2V0KCkpOwogICAgICAgICBlbWl0RXF1YWxpdHlPcDxPcFN0cmljdGVxPihkc3QsIGJhc2Us
IGJyYW5kKTsKICAgICB9IGVsc2UKQEAgLTI4ODQsNyArMjg4NCw3IEBAIHZvaWQgQnl0ZWNvZGVH
ZW5lcmF0b3I6OmVtaXRDaGVja1ByaXZhdGVCcmFuZChSZWdpc3RlcklEKiBiYXNlLCBSZWdpc3Rl
cklEKiBicmFuCiAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJlbD4gYnJhbmRD
aGVja09rTGFiZWwgPSBuZXdMYWJlbCgpOwogICAgICAgICBlbWl0SnVtcElmVHJ1ZShlbWl0RXF1
YWxpdHlPcDxPcFN0cmljdGVxPihuZXdUZW1wb3JhcnkoKSwgYmFzZSwgYnJhbmQpLCBicmFuZENo
ZWNrT2tMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFj
Y2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3IiKTsKKyAgICAgICAgZW1pdFRo
cm93VHlwZUVycm9yKCJDYW5ub3QgYWNjZXNzIHN0YXRpYyBwcml2YXRlIG1ldGhvZCBvciBhY2Nl
c3NvciJfcyk7CiAgICAgICAgIGVtaXRMYWJlbChicmFuZENoZWNrT2tMYWJlbC5nZXQoKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICAKQEAgLTM2NTYsNyArMzY1Niw3IEBAIFJlZ2lzdGVySUQqIEJ5
dGVjb2RlR2VuZXJhdG9yOjplbWl0UmV0dXJuKFJlZ2lzdGVySUQqIHNyYywgUmV0dXJuRnJvbSBm
cm9tKQogICAgICAgICAgICAgaWYgKGlzRGVyaXZlZCkgewogICAgICAgICAgICAgICAgIFJlZjxM
YWJlbD4gaXNVbmRlZmluZWRMYWJlbCA9IG5ld0xhYmVsKCk7CiAgICAgICAgICAgICAgICAgZW1p
dEp1bXBJZlRydWUoZW1pdElzVW5kZWZpbmVkKG5ld1RlbXBvcmFyeSgpLCBzcmMpLCBpc1VuZGVm
aW5lZExhYmVsLmdldCgpKTsKLSAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNh
bm5vdCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVy
aXZlZCBjbGFzcy4iKTsKKyAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5v
dCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVyaXZl
ZCBjbGFzcy4iX3MpOwogICAgICAgICAgICAgICAgIGVtaXRMYWJlbChpc1VuZGVmaW5lZExhYmVs
LmdldCgpKTsKICAgICAgICAgICAgICAgICBlbWl0VERaQ2hlY2soJm1fdGhpc1JlZ2lzdGVyKTsK
ICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29t
cGlsZXIvTm9kZXNDb2RlZ2VuLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGls
ZXIvTm9kZXNDb2RlZ2VuLmNwcAppbmRleCBmNmU0M2VjOGNiYmE4ZjI1NTkwYzZmODA4YTI0NDc1
ZGMyYjZlYWUxLi43YWM3NTg2NjVkOWZjMmFjOTA4NmU5N2VkMWNjNDRlMDY2ZGJlM2Q1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4u
Y3BwCkBAIC04OTYsNyArODk2LDcgQEAgdm9pZCBQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFAKICAgICAgICAg
UmVmPExhYmVsPiB2YWxpZFByb3BlcnR5TmFtZUxhYmVsID0gZ2VuZXJhdG9yLm5ld0xhYmVsKCk7
CiAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcm90b3R5cGVTdHJpbmcgPSBnZW5lcmF0b3Iu
ZW1pdExvYWQobnVsbHB0ciwgSlNWYWx1ZShnZW5lcmF0b3IuYWRkU3RyaW5nQ29uc3RhbnQoZ2Vu
ZXJhdG9yLnByb3BlcnR5TmFtZXMoKS5wcm90b3R5cGUpKSk7CiAgICAgICAgIGdlbmVyYXRvci5l
bWl0SnVtcElmRmFsc2UoZ2VuZXJhdG9yLmVtaXRCaW5hcnlPcDxPcFN0cmljdGVxPihnZW5lcmF0
b3IubmV3VGVtcG9yYXJ5KCksIHByb3RvdHlwZVN0cmluZy5nZXQoKSwgcHJvcGVydHlOYW1lLmdl
dCgpLCBPcGVyYW5kVHlwZXMoUmVzdWx0VHlwZTo6c3RyaW5nVHlwZSgpLCBSZXN1bHRUeXBlOjpz
dHJpbmdUeXBlKCkpKSwgdmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGdl
bmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxk
IG5hbWVkICdwcm90b3R5cGUnIik7CisgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxkIG5hbWVkICdwcm90b3R5cGUnIl9zKTsK
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbCh2YWxpZFByb3BlcnR5TmFtZUxhYmVsLmdldCgp
KTsKICAgICB9CiAKQEAgLTEwMTUsNyArMTAxNSw3IEBAIFJlZ2lzdGVySUQqIEJhc2VEb3ROb2Rl
OjplbWl0R2V0UHJvcGVydHlWYWx1ZShCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdp
CiAgICAgICAgICAgICBBU1NFUlQoc2NvcGUpOyAvLyBQcml2YXRlIG5hbWVzIGFyZSBhbHdheXMg
Y2FwdHVyZWQuCiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5kU3lt
Ym9sID0gZ2VuZXJhdG9yLmVtaXRHZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFy
eSgpLCBzY29wZS5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3ltYm9s
LmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwotICAgICAgICAgICAgZ2VuZXJhdG9y
LmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0
ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRy
eWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIl9zKTsKICAgICAgICAg
ICAgIHJldHVybiBkc3Q7CiAgICAgICAgIH0KIApAQCAtMTA3NCw3ICsxMDc0LDcgQEAgUmVnaXN0
ZXJJRCogQmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eShCeXRlY29kZUdlbmVyYXRvciYgZ2Vu
ZXJhdG9yLCBSZWdpc3RlckkKICAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcml2YXRl
QnJhbmRTeW1ib2wgPSBnZW5lcmF0b3IuZW1pdEdldFByaXZhdGVCcmFuZChnZW5lcmF0b3IubmV3
VGVtcG9yYXJ5KCksIHNjb3BlLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZhdGVCcmFuZChiYXNlLCBwcml2YXRlQnJh
bmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKLSAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZp
bmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlw
ZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7
CiAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgIH0KIApAQCAtMjQ1NCw3ICsyNDU0
LDcgQEAgUmVnaXN0ZXJJRCogUG9zdGZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3Im
IGdlbmVyYXRvciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRD
aGVja1ByaXZhdGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHBy
aXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhw
cmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5k
ZWZpbmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93
VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJf
cyk7CiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwog
ICAgICAgICB9CiAKQEAgLTI0NzIsNyArMjQ3Miw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2Rl
OjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkK
ICAgICAgICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0
KCkpOwogICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwoZ2VuZXJhdG9yLm5l
d1RlbXBvcmFyeSgpLCBnZXR0ZXJGdW5jdGlvbi5nZXQoKSwgTm9FeHBlY3RlZEZ1bmN0aW9uLCBh
cmdzLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBEZWJ1Z2dhYmxlQ2FsbDo6
WWVzKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dU
eXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIik7
CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICByZXR1cm4g
Z2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwogICAgICAgICB9CiAKQEAgLTI0OTAsNyAr
MjQ5MCw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJh
dG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBn
ZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5l
ZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAg
ICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICB9CiAK
QEAgLTI1NTgsNyArMjU1OCw3IEBAIFJlZ2lzdGVySUQqIERlbGV0ZUJyYWNrZXROb2RlOjplbWl0
Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0CiAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IHIxID0gZ2VuZXJhdG9yLmVtaXROb2RlKG1fc3Vic2NyaXB0KTsKICAgICBn
ZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RF
bmQoKSk7CiAgICAgaWYgKG1fYmFzZS0+aXNTdXBlck5vZGUoKSkKLSAgICAgICAgcmV0dXJuIGVt
aXRUaHJvd1JlZmVyZW5jZUVycm9yKGdlbmVyYXRvciwgIkNhbm5vdCBkZWxldGUgYSBzdXBlciBw
cm9wZXJ0eSIsIGRzdCk7CisgICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihn
ZW5lcmF0b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiX3MsIGRzdCk7CiAgICAg
cmV0dXJuIGdlbmVyYXRvci5lbWl0RGVsZXRlQnlWYWwoZmluYWxEZXN0LmdldCgpLCByMC5nZXQo
KSwgcjEuZ2V0KCkpOwogfQogCkBAIC0yNTc0LDcgKzI1NzQsNyBAQCBSZWdpc3RlcklEKiBEZWxl
dGVEb3ROb2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVn
aXN0ZXJJRAogCiAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9uSW5mbyhkaXZvdCgpLCBkaXZv
dFN0YXJ0KCksIGRpdm90RW5kKCkpOwogICAgIGlmIChtX2Jhc2UtPmlzU3VwZXJOb2RlKCkpCi0g
ICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0b3IsICJDYW5ub3Qg
ZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiLCBkc3QpOworICAgICAgICByZXR1cm4gZW1pdFRocm93
UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5
Il9zLCBkc3QpOwogICAgIHJldHVybiBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5SWQoZmluYWxEZXN0
LmdldCgpLCByMC5nZXQoKSwgbV9pZGVudCk7CiB9CiAKQEAgLTI3NDMsNyArMjc0Myw3IEBAIFJl
Z2lzdGVySUQqIFByZWZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRv
ciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZh
dGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFp
dHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbklu
Zm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAgICAgIGdlbmVy
YXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHBy
aXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7CiAgICAg
ICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBwcm9wRHN0LmdldCgpKTsKICAgICAg
ICAgfQogCkBAIC0yNzYwLDcgKzI3NjAsNyBAQCBSZWdpc3RlcklEKiBQcmVmaXhOb2RlOjplbWl0
RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAg
ICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0KCkpOwog
ICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwocHJvcERzdC5nZXQoKSwgZ2V0
dGVyRnVuY3Rpb24uZ2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywgbV9wb3NpdGlvbiwg
bV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7CiAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcg
dG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICAgICAgZ2Vu
ZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQg
cHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRz
dCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0KIApAQCAtMjc3OCw3ICsyNzc4LDcgQEAgUmVn
aXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9y
LCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0
LCBwcm9wRHN0LmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBnZW5lcmF0b3IuZW1pdFRo
cm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRl
ciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIHByb3BEc3QuZ2V0KCkpOwogICAgIH0KIApAQCAtMzIwOCw3ICszMjA4
LDcgQEAgUmVnaXN0ZXJJRCogSW5zdGFuY2VPZk5vZGU6OmVtaXRCeXRlY29kZShCeXRlY29kZUdl
bmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlckkKICAgICBnZW5lcmF0b3IuZW1pdEp1bXAoZG9u
ZS5nZXQoKSk7CiAKICAgICBnZW5lcmF0b3IuZW1pdExhYmVsKHR5cGVFcnJvci5nZXQoKSk7Ci0g
ICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiUmlnaHQgaGFuZCBzaWRlIG9mIGluc3Rh
bmNlb2YgaXMgbm90IGFuIG9iamVjdCIpOworICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9mIGlzIG5vdCBhbiBvYmplY3QiX3MpOwog
CiAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbChjdXN0b20uZ2V0KCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAppbmRleCBh
MzFmYzFmMTVkNGI4Mzg5NDhmNDJiNGNmMWMwOWM0N2QzOTk1MDdhLi5lMDJmYjgxN2QzZmZiNjEw
NjA4MGNhOTA3ZjExMmZjNjlkNDQ2MGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKQEAgLTE0NSw3ICsxNDUsNyBAQCBT
dHJpbmcgRGVidWdnZXJDYWxsRnJhbWU6OmZ1bmN0aW9uTmFtZSgpIGNvbnN0CiAgICAgaWYgKGlz
VGFpbERlbGV0ZWQoKSkgewogICAgICAgICBpZiAoSlNGdW5jdGlvbiogZnVuYyA9IGpzRHluYW1p
Y0Nhc3Q8SlNGdW5jdGlvbio+KHZtLCBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jYWxsZWUpKQogICAg
ICAgICAgICAgcmV0dXJuIGZ1bmMtPmNhbGN1bGF0ZWREaXNwbGF5TmFtZSh2bSk7Ci0gICAgICAg
IHJldHVybiBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2stPmluZmVycmVkTmFtZSgpLmRh
dGEoKTsKKyAgICAgICAgcmV0dXJuIFN0cmluZyB7IG1fc2hhZG93Q2hpY2tlbkZyYW1lLmNvZGVC
bG9jay0+aW5mZXJyZWROYW1lKCkuZGF0YSgpIH07CiAgICAgfQogCiAgICAgcmV0dXJuIG1fdmFs
aWRNYWNoaW5lRnJhbWUtPmZyaWVuZGx5RnVuY3Rpb25OYW1lKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAKaW5kZXggMDRiOTRmNWU1Y2Fj
Y2M5ZmQ1MzE0ZWE4MGI5MmQ4NDNhYjMxZmFiMi4uZTc2YTQxZjNhYzY4N2M4ZjVlZDRkZWFhZWU5
ODFhZDkyM2I5NWE5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2Vy
L0RlYnVnZ2VyU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlclNjb3BlLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERlYnVnZ2VyU2NvcGUpOwogCi1j
b25zdCBDbGFzc0luZm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVidWdnZXJTY29wZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGVi
dWdnZXJTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7
ICJEZWJ1Z2dlclNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07CiAKIERlYnVnZ2VyU2NvcGUqIERlYnVn
Z2VyU2NvcGU6OmNyZWF0ZShWTSYgdm0sIEpTU2NvcGUqIHNjb3BlKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAppbmRleCBhOGNk
ZTg4MTUxNzU3Y2Q3ZGRhNDkwZDQ0NDU4Mjc4ZWEzYWY4ZTE5Li5mMGE4MTkzMjQ5ZjA2M2M2NTAz
Y2I3N2U3MmJlMmM3ODcxNzZiMzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcApAQCAtNTc1LDcgKzU3NSw3IEBAIFN0cmluZyBI
ZWFwU25hcHNob3RCdWlsZGVyOjpqc29uKEZ1bmN0aW9uPGJvb2wgKGNvbnN0IEhlYXBTbmFwc2hv
dE5vZGUmKT4gYWxsb3dOCiAgICAgICAgICAgICBqc29uLmFwcGVuZChzbmFwc2hvdE5vZGUudmFs
dWUoKS5pZGVudGlmaWVyKTsKIAogICAgICAgICAgICAgLy8gTWF5YmUgd2Ugc2hvdWxkIGp1c3Qg
YWx3YXlzIGVuY29kZSB0aGUgcm9vdCBuYW1lcy4KLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHJv
b3ROYW1lID0gcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1ZS5tYXJrUmVhc29uKTsK
KyAgICAgICAgICAgIGF1dG8gcm9vdE5hbWUgPSByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKGl0
LnZhbHVlLm1hcmtSZWFzb24pOwogICAgICAgICAgICAgYXV0byByZXN1bHQgPSBsYWJlbEluZGV4
ZXMuYWRkKHJvb3ROYW1lLCBuZXh0TGFiZWxJbmRleCk7CiAgICAgICAgICAgICBpZiAocmVzdWx0
LmlzTmV3RW50cnkpCiAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgrKzsKQEAgLTU4Myw3
ICs1ODMsNyBAQCBTdHJpbmcgSGVhcFNuYXBzaG90QnVpbGRlcjo6anNvbihGdW5jdGlvbjxib29s
IChjb25zdCBIZWFwU25hcHNob3ROb2RlJik+IGFsbG93TgogCiAgICAgICAgICAgICB1bnNpZ25l
ZCByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IDA7CiAgICAgICAgICAgICBpZiAoaXQudmFsdWUu
cmVhY2hhYmlsaXR5RnJvbU9wYXF1ZVJvb3RSZWFzb25zKSB7Ci0gICAgICAgICAgICAgICAgYXV0
byByZXN1bHQgPSBsYWJlbEluZGV4ZXMuYWRkKGl0LnZhbHVlLnJlYWNoYWJpbGl0eUZyb21PcGFx
dWVSb290UmVhc29ucywgbmV4dExhYmVsSW5kZXgpOworICAgICAgICAgICAgICAgIGF1dG8gcmVz
dWx0ID0gbGFiZWxJbmRleGVzLmFkZChTdHJpbmcgeyBpdC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9t
T3BhcXVlUm9vdFJlYXNvbnMgfSwgbmV4dExhYmVsSW5kZXgpOwogICAgICAgICAgICAgICAgIGlm
IChyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgr
KzsKICAgICAgICAgICAgICAgICByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IHJlc3VsdC5pdGVy
YXRvci0+dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290
TWFya1JlYXNvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNv
bi5jcHAKaW5kZXggOTQzOTM5Y2NlNzlhMTdiZGJkZmUxYmFhMTY3MWRkNzIzZjJjY2Q5YS4uNjUy
MjRiOWIzZWI3MjIxZTE1Mzk3OTVjODc4MWY2YTQ0ODU0NDc3MCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmNwcApAQCAtMzAsMTEgKzMwLDExIEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KFJvb3RNYXJrUmVhc29uIHJlYXNvbikKK0FTQ0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2Ny
aXB0aW9uKFJvb3RNYXJrUmVhc29uIHJlYXNvbikKIHsKICNkZWZpbmUgQ0FTRV9ST09UX01BUktf
UkVBU09OKHJlYXNvbikgXAogICAgIGNhc2UgSlNDOjpSb290TWFya1JlYXNvbjo6cmVhc29uOiBc
Ci0gICAgICAgIHJldHVybiAjcmVhc29uOyBcCisgICAgICAgIHJldHVybiAjcmVhc29uIiJfczsg
XAogCiAgICAgc3dpdGNoIChyZWFzb24pIHsKICAgICAgICAgRk9SX0VBQ0hfUk9PVF9NQVJLX1JF
QVNPTihDQVNFX1JPT1RfTUFSS19SRUFTT04pCkBAIC00Miw3ICs0Miw3IEBAIGNvbnN0IGNoYXIq
IHJvb3RNYXJrUmVhc29uRGVzY3JpcHRpb24oUm9vdE1hcmtSZWFzb24gcmVhc29uKQogI3VuZGVm
IENBU0VfUk9PVF9NQVJLX1JFQVNPTgogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuICJOb25lIjsKKyAgICByZXR1cm4gIk5vbmUiX3M7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFz
b24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgKaW5kZXgg
ZjIwOTYzMzZhMmQyYTM2MTUzMzAxMmI0MWUyODJmNTA1MDNlNTVmNC4uYTg2ZjljNGI5OTYzMjdm
NjIyNGJhODI1NTIyYWU4YjZkNzg1MWQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9Sb290TWFya1JlYXNvbi5oCkBAIC01NSw3ICs1NSw3IEBAIGVudW0gY2xhc3MgUm9vdE1hcmtS
ZWFzb24gOiB1aW50OF90IHsKIAogI3VuZGVmIERFQ0xBUkVfUk9PVF9NQVJLX1JFQVNPTgogCi1j
b25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKK0FT
Q0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKIAog
fSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVy
LmNwcAppbmRleCA2YWUxNzkzOWY0ODg1OGQ2MDQ2Yzk1OTI5MmQzNmNmYmM2MzQ3MWYxLi4yNTFk
YmUzYTVkZTkwNmE1NmUwZDc4MzAzYzJiZTRiNDQ1MzExMWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0dsb2JhbE9iamVj
dEluc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xNjMsNyArMTYzLDcgQEAgdm9pZCBKU0dsb2Jh
bE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXI6OmFwcGVuZEFQSUJhY2t0cmFjZShTY3JpcHRDYWxs
U3RhY2smIGNhbGwKICAgICBmb3IgKGludCBpID0gMDsgaSA8IHNpemU7ICsraSkgewogICAgICAg
ICBhdXRvIGRlbWFuZ2xlZCA9IFN0YWNrVHJhY2U6OmRlbWFuZ2xlKHN0YWNrW2ldKTsKICAgICAg
ICAgaWYgKGRlbWFuZ2xlZCkKLSAgICAgICAgICAgIGNhbGxTdGFjay5hcHBlbmQoU2NyaXB0Q2Fs
bEZyYW1lKGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgpID8gZGVtYW5nbGVkLT5kZW1hbmdsZWRO
YW1lKCkgOiBkZW1hbmdsZWQtPm1hbmdsZWROYW1lKCksICJbbmF0aXZlIGNvZGVdIl9zLCBub1Nv
dXJjZUlELCAwLCAwKSk7CisgICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxG
cmFtZShTdHJpbmcgeyBkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA/IGRlbWFuZ2xlZC0+ZGVt
YW5nbGVkTmFtZSgpIDogZGVtYW5nbGVkLT5tYW5nbGVkTmFtZSgpIH0sICJbbmF0aXZlIGNvZGVd
Il9zLCBub1NvdXJjZUlELCAwLCAwKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGNhbGxT
dGFjay5hcHBlbmQoU2NyaXB0Q2FsbEZyYW1lKCI/Il9zLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9T
b3VyY2VJRCwgMCwgMCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKaW5kZXggNzhlNzczNGUyNjM5
YjdlOTg4YmQ5NDU5YjA3NmJmN2JjZTRjMDcxZS4uMzBhMmIwMWVhODBiM2VlNDlhZWMzOWQ3MzFk
NmM0NDkwMzcwOWUwOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgbmFtZXNw
YWNlIEluc3BlY3RvciB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5m
byBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0KSB9
OwogCiBKU0luamVjdGVkU2NyaXB0SG9zdDo6SlNJbmplY3RlZFNjcmlwdEhvc3QoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPEluamVjdGVkU2NyaXB0SG9zdD4mJiBpbXBsKQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMzM2LDEzICszMzYsMTMgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgdW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICBKU0FycmF5
KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJy
YXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJu
YWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJ0YXJnZXRGdW5jdGlvbiIsIGJvdW5kRnVuY3Rpb24t
PnRhcmdldEZ1bmN0aW9uKCkpKTsKKyAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2Jh
bE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3Qs
ICJ0YXJnZXRGdW5jdGlvbiJfcywgYm91bmRGdW5jdGlvbi0+dGFyZ2V0RnVuY3Rpb24oKSkpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyIsIGJvdW5kRnVuY3Rpb24tPmJv
dW5kVGhpcygpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3Qs
IGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRU
aGlzIl9zLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRoaXMoKSkpOwogICAgICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzKCkpIHsKICAgICAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRBcmdzIiwgYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzQ29weShnbG9iYWxPYmplY3QpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImJvdW5kQXJncyJfcywgYm91bmRGdW5jdGlvbi0+Ym91bmRBcmdzQ29w
eShnbG9iYWxPYmplY3QpKSk7CiAgICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMzg4LDEwICszODgsMTAgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAgICAg
IEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxw
dHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgp
KTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYXJyYXkiLCBpdGVy
YXRlZFZhbHVlKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2Jq
ZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImFy
cmF5Il9zLCBpdGVyYXRlZFZhbHVlKSk7CiAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAg
ICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3Ry
dWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkp
KTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9T
dHJpbmcoa2luZCkpKTsKICAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICAgfQogCkBA
IC00MDIsMTAgKzQwMiwxMCBAQCBKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRl
cm5hbFByb3BlcnRpZXMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgICAgICAgICAg
dW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICAgICAgSlNBcnJheSogYXJyYXkgPSBjb25zdHJ1
Y3RFbXB0eUFycmF5KGdsb2JhbE9iamVjdCwgbnVsbHB0ciwgMik7CiAgICAgICAgICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICAgICAgYXJyYXktPnB1
dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9w
ZXJ0eShnbG9iYWxPYmplY3QsICJtYXAiLCBpdGVyYXRlZFZhbHVlKSk7CisgICAgICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgIm1hcCJfcywgaXRlcmF0ZWRWYWx1ZSkpOwogICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
ICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChn
bG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2Jq
ZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5nKGtpbmQpKSk7CiAgICAgICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDE2LDEwICs0MTYsMTAgQEAgSlNWYWx1ZSBK
U0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAg
ICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51
bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1
ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGlu
ZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0IiwgaXRl
cmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJz
ZXQiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1
Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiLCB0b1N0cmluZyhraW5kKSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIl9zLCB0b1N0
cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAg
fQpAQCAtNDI5LDcgKzQyOSw3IEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldElu
dGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgIEpT
QXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxwdHIs
IDEpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAg
ICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9i
YWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0
LCAic3RyaW5nIiwgc3RyaW5nSXRlcmF0b3ItPml0ZXJhdGVkU3RyaW5nKCkpKTsKKyAgICAgICAg
YXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50
ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJzdHJpbmciX3MsIHN0cmluZ0l0ZXJhdG9yLT5p
dGVyYXRlZFN0cmluZygpKSk7CiAgICAgICAgIHJldHVybiBhcnJheTsKICAgICB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhv
c3RQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVj
dGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKaW5kZXggYWRiYjVlNTdjMzQ1MWMzZDNhODhmODE4
ZjdlYzA1N2NlYjU5ODgyNC4uOThiNTJlYzJlODQ4NWNmN2FiMWQwYTIxYTRkNmE3NjZkNWVlOWU5
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVk
U2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKQEAgLTUyLDcgKzUyLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGVGdW5jdGlvbkV2YWx1YXRlV2kKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmlidXRlRXZhbHVhdGUpOwogc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVB
dHRyaWJ1dGVTYXZlZFJlc3VsdEFsaWFzKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0
ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3Rl
ZFNjcmlwdEhvc3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZh
U2NyaXB0Q2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lLmNwcAppbmRleCAyODk4Y2RmZWI5OWVlYWFjOTNlMjZlYTA2OTJj
ZDcxMjFlYzc4NjEyLi45NTU2OWUwYmNiZDQyNTk1M2Y1YjYyY2RjZDE5MmFhMmRkNzEwYzliIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENh
bGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFT
Y3JpcHRDYWxsRnJhbWUuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0
Q2FsbEZyYW1lOjpzX2luZm8gPSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRDYWxs
RnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0Q2FsbEZyYW1lOjpzX2luZm8g
PSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZSkgfTsKIAogSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lOjpKU0phdmFTY3JpcHRDYWxsRnJhbWUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmPEphdmFTY3JpcHRDYWxsRnJhbWU+JiYgaW1wbCkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcAppbmRl
eCBhYjVhOGFjZDAzMmZiODIxNTkzNGM3ZTQwYTAzMzJmODZhMGI4YjEyLi4xNzA4OGQ4NTkzNmQ1
NjdmOWUwNzFjMjY3ZTU3Y2M2YTY0Y2IxZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGpzSmF2YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVRoaXNPYmplY3QpOwogc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lQXR0cmlidXRlVHlw
ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0phdmFTY3JpcHRDYWxsRnJh
bWVJc1RhaWxEZWxldGVkKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2Fs
bEZyYW1lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRD
YWxsRnJhbWVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JBdWRpdEFnZW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCmluZGV4IDMwYWNhZjMzNDU4MDUzNzRkODFk
YmIwYjFjNWQ0OWZmN2FmMGE2ZTEuLmMyODc3MzZkNzFlN2ViOWU4ODU1OGZmY2QwYjcwNDUyNWJm
ZmNmOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFBy
b3RvY29sOjpFcnJvclN0cmluZ09yPHN0ZDo6dHVwbGU8UmVmPFByb3RvY29sOjpSdW50aW1lOjpS
ZW1vdGVPYmplY3Q+LCBzdGQ6Om9wCiAgICAgaWYgKGluamVjdGVkU2NyaXB0Lmhhc05vVmFsdWUo
KSkKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKGVycm9yU3RyaW5nKTsKIAotICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIiksICIpYCkoV2ViSW5zcGVjdG9yQXVkaXQpOyB9KSIpOworICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIl9zKSwgIilgKShXZWJJbnNwZWN0b3JBdWRpdCk7IH0pIik7CiAKICAg
ICBJbmplY3RlZFNjcmlwdDo6RXhlY3V0ZU9wdGlvbnMgb3B0aW9uczsKICAgICBvcHRpb25zLm9i
amVjdEdyb3VwID0gImF1ZGl0Il9zOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCBlZjBmZjYyYTc4YTNhMWY2MGQ1NTMyOWE1NTM3OGI0ZjU1MTJmZDdkLi4wYTY3YzhlYWY3
OGMzMmZjOTJhY2RkNjFiN2MzOWM2NmM1OGZkMjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50LmNwcApAQCAtNDksNyArNDksNyBAQAogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAot
Y29uc3QgY2hhciogY29uc3QgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0
R3JvdXAgPSAiYmFja3RyYWNlIjsKK2NvbnN0IEFTQ0lJTGl0ZXJhbCBJbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50OjpiYWNrdHJhY2VPYmplY3RHcm91cCA9ICJiYWNrdHJhY2UiX3M7CiAKIC8vIE9iamVj
dHMgY3JlYXRlZCBhbmQgcmV0YWluZWQgYnkgZXZhbHVhdGluZyBicmVha3BvaW50IGFjdGlvbnMg
YXJlIHB1dCBpbnRvIG9iamVjdCBncm91cHMKIC8vIGFjY29yZGluZyB0byB0aGUgYnJlYWtwb2lu
dCBhY3Rpb24gaWRlbnRpZmllciBhc3NpZ25lZCBieSB0aGUgZnJvbnRlbmQuIEEgYnJlYWtwb2lu
dCBtYXkKQEAgLTc0MSw3ICs3NDEsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxTdHJpbmc+
IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmdldFNjcmlwdFNvdXJjZShjb25zdCBQcgogewogICAg
IGF1dG8gaXQgPSBtX3NjcmlwdHMuZmluZChwYXJzZUludGVnZXJBbGxvd2luZ1RyYWlsaW5nSnVu
azxKU0M6OlNvdXJjZUlEPihzY3JpcHRJZCkudmFsdWVfb3IoMCkpOwogICAgIGlmIChpdCA9PSBt
X3NjcmlwdHMuZW5kKCkpCi0gICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZCgiTWlzc2luZyBz
Y3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3Rl
ZCgiTWlzc2luZyBzY3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIl9zKTsKIAogICAgIHJldHVybiBp
dC0+dmFsdWUuc291cmNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCmluZGV4IGUw
Y2U3NjVhNDJjYWE1ZmQwNjM3MDE1ZGVhZGQ1MjU0YWEzOTdhMTguLjRmYWUxYTk5ZGJhMmNmZWMy
OWM5Mzc2ODdjNDRjZTVlMTNmOTAwN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgK
QEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFJlZlB0cjxKU0M6OkJyZWFr
cG9pbnQ+IGRlYnVnZ2VyQnJlYWtwb2ludEZyb21QYXlsb2FkKFByb3RvY29sOjpFcnJvclN0cmlu
ZyYsIFJlZlB0cjxKU09OOjpPYmplY3Q+JiYgb3B0aW9ucyk7CiAKLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgYmFja3RyYWNlT2JqZWN0R3JvdXA7CisgICAgc3RhdGljIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBiYWNrdHJhY2VPYmplY3RHcm91cDsKIAogICAgIC8vIEluc3BlY3RvckFnZW50QmFz
ZQogICAgIHZvaWQgZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNrZW5kKEZyb250ZW5kUm91dGVyKiwg
QmFja2VuZERpc3BhdGNoZXIqKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwCmluZGV4
IDI0YjNlZmQ3YzJhMTg5MTllYjUyNWExNTY3MjM0ZTMwNjc1ODY2ZTAuLmIwNzE4YjljMDU2MmI1
MTc0NDJhODA3Y2ZmZWNhYjFmNDg2YWZkNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySGVhcEFnZW50LmNwcApA
QCAtMjU0LDcgKzI1NCw3IEBAIFByb3RvY29sOjpFcnJvclN0cmluZ09yPFJlZjxQcm90b2NvbDo6
UnVudGltZTo6UmVtb3RlT2JqZWN0Pj4gSW5zcGVjdG9ySGVhcEFnZW50CiAKICAgICBhdXRvIG9i
amVjdCA9IGluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoY2VsbCwgb2JqZWN0R3JvdXAsIHRydWUp
OwogICAgIGlmICghb2JqZWN0KQotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIkludGVy
bmFsIGVycm9yOiB1bmFibGUgdG8gY2FzdCBPYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIG1ha2VV
bmV4cGVjdGVkKCJJbnRlcm5hbCBlcnJvcjogdW5hYmxlIHRvIGNhc3QgT2JqZWN0Il9zKTsKIAog
ICAgIHJldHVybiBvYmplY3QucmVsZWFzZU5vbk51bGwoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCmluZGV4IGExNzMxNWNjNjg0
OTk2YTA1YzVhNWJhNjE1NjQ0MWU4YTliZWQ4NWUuLmM4NjdlZWQyNWE5ZjU4MzdiOTdmYzM3ZWEx
MTRkZGRjMmNiNjRiZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhl
Y3V0YWJsZUFsbG9jYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9FeGVj
dXRhYmxlQWxsb2NhdG9yLmNwcApAQCAtMTE1Miw4ICsxMTUyLDggQEAgdm9pZCBkdW1wSklUTWVt
b3J5KGNvbnN0IHZvaWQqIGRzdCwgY29uc3Qgdm9pZCogc3JjLCBzaXplX3Qgc2l6ZSkKICAgICAg
ICAgc3RhdGljIHZvaWQgZmx1c2goKSBXVEZfUkVRVUlSRVNfTE9DSyhkdW1wSklUTWVtb3J5TG9j
aykKICAgICAgICAgewogICAgICAgICAgICAgaWYgKGZkID09IC0xKSB7Ci0gICAgICAgICAgICAg
ICAgU3RyaW5nIHBhdGggPSBPcHRpb25zOjpkdW1wSklUTWVtb3J5UGF0aCgpOwotICAgICAgICAg
ICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoIiVwaWQiLCBTdHJpbmc6Om51bWJlcihnZXRDdXJy
ZW50UHJvY2Vzc0lEKCkpKTsKKyAgICAgICAgICAgICAgICBTdHJpbmcgcGF0aCB7IE9wdGlvbnM6
OmR1bXBKSVRNZW1vcnlQYXRoKCkgfTsKKyAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBs
YWNlKCIlcGlkIl9zLCBTdHJpbmc6Om51bWJlcihnZXRDdXJyZW50UHJvY2Vzc0lEKCkpKTsKICAg
ICAgICAgICAgICAgICBmZCA9IG9wZW4oRmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0
aW9uKHBhdGgpLmRhdGEoKSwgT19DUkVBVCB8IE9fVFJVTkMgfCBPX0FQUEVORCB8IE9fV1JPTkxZ
IHwgT19FWExPQ0sgfCBPX05PTkJMT0NLLCAwNjY2KTsKICAgICAgICAgICAgICAgICBSRUxFQVNF
X0FTU0VSVChmZCAhPSAtMSk7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRDb2RlLmNwcAppbmRleCA2YmY1YTFjMzYyODVlZDdiMjAwMTY3YzQ4ODcyM2QwNGQ2NTBiZTBj
Li45ODM2ZWE1ZjM5ZjcwYjBhNDdhNzZlNTIzNDY2YTkzNDg2ZmMxY2Y4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUQ29kZS5jcHAKQEAgLTQ0LDI0ICs0NCwyNCBAQCBKSVRDb2RlOjp+SklU
Q29kZSgpCiB7CiB9CiAKLWNvbnN0IGNoYXIqIEpJVENvZGU6OnR5cGVOYW1lKEpJVFR5cGUgaml0
VHlwZSkKK0FTQ0lJTGl0ZXJhbCBKSVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUpCiB7
CiAgICAgc3dpdGNoIChqaXRUeXBlKSB7CiAgICAgY2FzZSBKSVRUeXBlOjpOb25lOgotICAgICAg
ICByZXR1cm4gIk5vbmUiOworICAgICAgICByZXR1cm4gIk5vbmUiX3M7CiAgICAgY2FzZSBKSVRU
eXBlOjpIb3N0Q2FsbFRodW5rOgotICAgICAgICByZXR1cm4gIkhvc3QiOworICAgICAgICByZXR1
cm4gIkhvc3QiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpJbnRlcnByZXRlclRodW5rOgotICAgICAg
ICByZXR1cm4gIkxMSW50IjsKKyAgICAgICAgcmV0dXJuICJMTEludCJfczsKICAgICBjYXNlIEpJ
VFR5cGU6OkJhc2VsaW5lSklUOgotICAgICAgICByZXR1cm4gIkJhc2VsaW5lIjsKKyAgICAgICAg
cmV0dXJuICJCYXNlbGluZSJfczsKICAgICBjYXNlIEpJVFR5cGU6OkRGR0pJVDoKLSAgICAgICAg
cmV0dXJuICJERkciOworICAgICAgICByZXR1cm4gIkRGRyJfczsKICAgICBjYXNlIEpJVFR5cGU6
OkZUTEpJVDoKLSAgICAgICAgcmV0dXJuICJGVEwiOworICAgICAgICByZXR1cm4gIkZUTCJfczsK
ICAgICBkZWZhdWx0OgogICAgICAgICBDUkFTSCgpOwotICAgICAgICByZXR1cm4gIiI7CisgICAg
ICAgIHJldHVybiAiIl9zOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUu
aAppbmRleCA3ZTM4MzM4MmIzZjUxY2U3NDE4NTMzOGQ2MGRkNjAwNWMzYTViY2M3Li5mYjEwNmRl
ZmQzMDlmMTdiMWJkNGQ2ZGNhMDE5MDI3ZjU5MGIzYWJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0pJVENvZGUuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4gdXNpbmcgQ29kZVB0ciA9IE1hY3JvQXNzZW1ibGVyQ29kZVB0cjx0YWc+OwogICAgIHRl
bXBsYXRlPFB0clRhZyB0YWc+IHVzaW5nIENvZGVSZWYgPSBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8
dGFnPjsKIAotICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0eXBlTmFtZShKSVRUeXBlKTsKKyAgICBz
dGF0aWMgQVNDSUlMaXRlcmFsIHR5cGVOYW1lKEpJVFR5cGUpOwogCiAgICAgc3RhdGljIEpJVFR5
cGUgYm90dG9tVGllckpJVCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
T3BlcmF0aW9ucy5jcHAKaW5kZXggZWZjOWEwZThiYjAyZTIyNTgxMTg0NjIzZDEwNjBhODkzNWNk
ZjJhMS4uYWI2NmVhNDI5ZDQ4NTBlYjdjMWJiZGU2NmZjOTFkMmJkZDNjZWUzNiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3BwCkBAIC0xMjcsNyArMTI3LDcg
QEAgc3RhdGljIEpTVmFsdWUgZ2V0V3JhcHBlZFZhbHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTR2xvYmFsT2JqZWN0KiB0YXIKICAgICBpZiAodmFsdWUuaXNDYWxsYWJsZSh2bSkp
CiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNSZW1vdGVGdW5jdGlvbjo6dHJ5
Q3JlYXRlKHRhcmdldEdsb2JhbE9iamVjdCwgdm0sIHN0YXRpY19jYXN0PEpTT2JqZWN0Kj4odmFs
dWUuYXNDZWxsKCkpKSk7CiAKLSAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAidmFsdWUgcGFzc2luZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJlIGNhbGxhYmxlIG9yIHByaW1p
dGl2ZSIpOworICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBw
YXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsK
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBl
N2QzY2U5NDIxZTVkYzEyZTA5YmFmMDJiZTU1MDQyYWZhZDYwN2Q4Li5iZDJlYjgxMmM2YzM3ZWQ1
MmVkYzYzYjkyNjdmY2JjYTk4MTU5NGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtNzQxLDcg
Kzc0MSw3IEBAIHN0YXRpYyBib29sIHNoZWxsU3VwcG9ydHNSaWNoU291cmNlSW5mbyhjb25zdCBK
U0dsb2JhbE9iamVjdCopCiAgICAgcmV0dXJuIHN1cHBvcnRzUmljaFNvdXJjZUluZm87CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIsICZKU0ds
b2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogY29uc3QgR2xvYmFsT2JqZWN0
TWV0aG9kVGFibGUgR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewog
ICAgICZzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8sCiAgICAgJnNob3VsZEludGVycnVwdFNj
cmlwdCwKQEAgLTEwOTMsMTAgKzEwOTMsMTAgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgY2FjaGVQ
YXRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmICghY2FjaGVFbmFibGVkKCkpCi0gICAgICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgY2hhcio+KG51bGxwdHIpOworICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKICAgICAgICAgY29uc3QgY2hhciogY2FjaGVQYXRoID0gT3B0aW9uczo6
ZGlza0NhY2hlUGF0aCgpOwogICAgICAgICBTdHJpbmcgZmlsZW5hbWUgPSBGaWxlU3lzdGVtOjpl
bmNvZGVGb3JGaWxlTmFtZShGaWxlU3lzdGVtOjpsYXN0Q29tcG9uZW50T2ZQYXRoSWdub3JpbmdU
cmFpbGluZ1NsYXNoKHNvdXJjZU9yaWdpbigpLnVybCgpLmZpbGVTeXN0ZW1QYXRoKCkpKTsKLSAg
ICAgICAgcmV0dXJuIEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChjYWNoZVBh
dGgsIG1ha2VTdHJpbmcoc291cmNlKCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUs
ICIuYnl0ZWNvZGUtY2FjaGUiKSk7CisgICAgICAgIHJldHVybiBGaWxlU3lzdGVtOjpwYXRoQnlB
cHBlbmRpbmdDb21wb25lbnQoU3RyaW5nIHsgY2FjaGVQYXRoIH0sIG1ha2VTdHJpbmcoc291cmNl
KCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUsICIuYnl0ZWNvZGUtY2FjaGUiKSk7
CiAgICAgfQogCiAgICAgdm9pZCBsb2FkQnl0ZWNvZGUoKSBjb25zdApAQCAtMTI1OSwxMCArMTI1
OSwxMCBAQCBzdGF0aWMgQ1N0cmluZyB0b0NTdHJpbmcoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIFQmIHN0cgogICAgICAgICB0aHJvd091dE9mTWVtb3J5
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVVRG
OENvbnZlcnNpb25FcnJvcjo6SWxsZWdhbFNvdXJjZToKLSAgICAgICAgc2NvcGUudGhyb3dFeGNl
cHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxlZ2FsIHNv
dXJjZSBlbmNvdW50ZXJlZCBkdXJpbmcgVVRGOCBjb252ZXJzaW9uIikpOworICAgICAgICBzY29w
ZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwg
IklsbGVnYWwgc291cmNlIGVuY291bnRlcmVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24iX3MpKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBVVEY4Q29udmVyc2lvbkVycm9yOjpTb3VyY2VFeGhh
dXN0ZWQ6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgY3JlYXRl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiU291cmNlIGV4aGF1c3RlZCBkdXJpbmcgVVRGOCBjb252ZXJz
aW9uIikpOworICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0
ZUVycm9yKGdsb2JhbE9iamVjdCwgIlNvdXJjZSBleGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVy
c2lvbiJfcykpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNF
X0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMTQ3Nyw3ICsxNDc3LDcgQEAgcHJpdmF0ZToKICAg
ICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNDTWVtb3J5Rm9vdHByaW50OjpzX2luZm8gPSB7
ICJNZW1vcnlGb290cHJpbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ01lbW9yeUZvb3RwcmludCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0NNZW1vcnlGb290cHJpbnQ6OnNfaW5mbyA9IHsgIk1lbW9yeUZvb3RwcmludCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NNZW1vcnlG
b290cHJpbnQpIH07CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk1lbW9yeVVz
YWdlU3RhdGlzdGljcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSop
KQogewpAQCAtMTY2MiwxMyArMTY2MiwxMyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25SZWFkRmlsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcgogICAg
ICAgICBTdHJpbmcgdHlwZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSkudG9XVEZTdHJpbmcoZ2xv
YmFsT2JqZWN0KTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CiAgICAgICAgIGlmICh0eXBlICE9ICJiaW5hcnkiKQotICAgICAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScg
YXMgc2Vjb25kIGFyZ3VtZW50LiIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScgYXMgc2Vjb25kIGFyZ3VtZW50
LiJfcyk7CiAgICAgICAgIGlzQmluYXJ5ID0gdHJ1ZTsKICAgICB9CiAKICAgICBSZWZQdHI8VWlu
dDhBcnJheT4gY29udGVudCA9IGZpbGxCdWZmZXJXaXRoQ29udGVudHNPZkZpbGUoZmlsZU5hbWUp
OwogICAgIGlmICghY29udGVudCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iKTsKKyAgICAgICAgcmV0dXJuIHRo
cm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iX3Mp
OwogCiAgICAgaWYgKCFpc0JpbmFyeSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1N0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOFdpdGhMYXRpbjFGYWxsYmFjayhjb250ZW50LT5k
YXRhKCksIGNvbnRlbnQtPmxlbmd0aCgpKSkpOwpAQCAtMTgxMiw3ICsxODEyLDcgQEAgcHJpdmF0
ZToKICAgICBGSUxFKiBtX2Rlc2NyaXB0b3I7CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNGaWxl
RGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2NyaXB0b3IiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZURlc2NyaXB0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSlNGaWxlRGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2Ny
aXB0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNGaWxlRGVzY3JpcHRvcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1
bmN0aW9uT3BlbkZpbGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSkpCiB7CkBAIC0xODQ3LDcgKzE4NDcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZnVuY3Rpb25SZWFkbGluZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcgogICAgICAgICBsaW5lLmFwcGVuZChjKTsKICAgICB9CiAgICAgbGluZS5hcHBlbmQoJ1ww
Jyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhnbG9iYWxPYmplY3QtPnZt
KCksIGxpbmUuZGF0YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhn
bG9iYWxPYmplY3QtPnZtKCksIFN0cmluZyB7IGxpbmUuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJlY2lzZVRpbWUsIChKU0dsb2JhbE9iamVjdCos
IENhbGxGcmFtZSopKQpAQCAtMTkwMSw3ICsxOTAxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uQ2FsbGVySXNCQlFPck9NR0NvbXBpbGVkLCAoSlNHbG9iYWxPYmplY3QqIGds
b2IKICAgICBDYWxsZXJGdW5jdG9yIHdhc21Ub0pTRnJhbWU7CiAgICAgU3RhY2tWaXNpdG9yOjp2
aXNpdChjYWxsRnJhbWUsIHZtLCB3YXNtVG9KU0ZyYW1lKTsKICAgICBpZiAoIXdhc21Ub0pTRnJh
bWUuY2FsbGVyRnJhbWUoKSB8fCAhd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5pc0FueVdh
c21DYWxsZWUoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdhc20tPmpzIGltcG9ydCBmdW5jdGlvbiIpOworICAgICAg
ICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJjYWxsZXIgaXMgbm90
IGEgd2FzbS0+anMgaW1wb3J0IGZ1bmN0aW9uIl9zKTsKIAogICAgIC8vIFdlIGhhdmUgYSB3cmFw
cGVyIGZyYW1lIHRoYXQgd2UgZ2VuZXJhdGUgZm9yIGltcG9ydHMuIElmIHdlIGV2ZXIgY2FuIGRp
cmVjdCBjYWxsIGZyb20gd2FzbSB3ZSB3b3VsZCBuZWVkIHRvIGNoYW5nZSB0aGlzLgogICAgIEFT
U0VSVCghd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5jYWxsZWUoKS5pc1dhc20oKSk7CkBA
IC0yNTI0LDcgKzI1MjQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25TZXRU
aW1lb3V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogICAgIHZtLmRlZmVy
cmVkV29ya1RpbWVyLT5zY2hlZHVsZVdvcmtTb29uKHRpY2tldCwgW2NhbGxiYWNrXShEZWZlcnJl
ZFdvcmtUaW1lcjo6VGlja2V0KSB7CiAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QgPSBjYWxsYmFjay0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVm
ZmVyIGFyZ3M7Ci0gICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmlu
ZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iKTsKKyAgICAgICAgY2FsbChn
bG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4n
dCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgfSk7CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKIH0KQEAgLTI4MTMsOSArMjgxMyw5IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihmdW5jdGlvbldlYkFzc2VtYmx5TWVtb3J5TW9kZSwgKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPCiAKICAgICBpZiAoSlNPYmplY3QqIG9iamVjdCA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCkuZ2V0T2JqZWN0KCkpIHsKICAgICAgICAgaWYgKGF1dG8qIG1lbW9yeSA9IGpzRHluYW1pY0Nh
c3Q8SlNXZWJBc3NlbWJseU1lbW9yeSo+KHZtLCBvYmplY3QpKQotICAgICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgbWFrZVN0cmluZyhtZW1vcnktPm1lbW9yeSgp
Lm1vZGUoKSkpKTsKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmco
dm0sIFN0cmluZyB7IG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2RlKCkpIH0pKTsKICAg
ICAgICAgaWYgKGF1dG8qIGluc3RhbmNlID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqPih2bSwgb2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
anNTdHJpbmcodm0sIG1ha2VTdHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkpKTsKKyAgICAg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyB7IG1ha2VT
dHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkgfSkpOwogICAgIH0KIAogICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseU1lbW9yeU1v
ZGUgZXhwZWN0cyBlaXRoZXIgYSBXZWJBc3NlbWJseS5NZW1vcnkgb3IgV2ViQXNzZW1ibHkuSW5z
dGFuY2UiX3MpOwpAQCAtMzE4Myw3ICszMTgzLDcgQEAgc3RhdGljIHZvaWQgcnVuV2l0aE9wdGlv
bnMoR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENvbW1hbmRMaW5lJiBvcHRpb25zLCBib28K
ICAgICAgICAgSlNJbnRlcm5hbFByb21pc2UqIHByb21pc2UgPSBudWxscHRyOwogICAgICAgICBi
b29sIGlzTW9kdWxlID0gb3B0aW9ucy5tX21vZHVsZSB8fCBzY3JpcHRzW2ldLnNjcmlwdFR5cGUg
PT0gU2NyaXB0OjpTY3JpcHRUeXBlOjpNb2R1bGU7CiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmNv
ZGVTb3VyY2UgPT0gU2NyaXB0OjpDb2RlU291cmNlOjpGaWxlKSB7Ci0gICAgICAgICAgICBmaWxl
TmFtZSA9IHNjcmlwdHNbaV0uYXJndW1lbnQ7CisgICAgICAgICAgICBmaWxlTmFtZSA9IFN0cmlu
ZyB7IHNjcmlwdHNbaV0uYXJndW1lbnQgfTsKICAgICAgICAgICAgIGlmIChzY3JpcHRzW2ldLnN0
cmljdE1vZGUgPT0gU2NyaXB0OjpTdHJpY3RNb2RlOjpTdHJpY3QpCiAgICAgICAgICAgICAgICAg
c2NyaXB0QnVmZmVyLmFwcGVuZCgiXCJ1c2Ugc3RyaWN0XCI7XG4iLCBzdHJsZW4oIlwidXNlIHN0
cmljdFwiO1xuIikpOwogCkBAIC0zNDMwLDcgKzM0MzAsNyBAQCB2b2lkIENvbW1hbmRMaW5lOjpw
YXJzZUFyZ3VtZW50cyhpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAgICAgICAgICBpZiAoKytp
ID09IGFyZ2MpCiAgICAgICAgICAgICAgICAgcHJpbnRVc2FnZVN0YXRlbWVudCgpOwogICAgICAg
ICAgICAgT3B0aW9uczo6c2V0T3B0aW9uKCJ1c2VQcm9maWxlcj0xIik7Ci0gICAgICAgICAgICBt
X3Byb2ZpbGVyT3V0cHV0ID0gYXJndltpXTsKKyAgICAgICAgICAgIG1fcHJvZmlsZXJPdXRwdXQg
PSBTdHJpbmcgeyBhcmd2W2ldIH07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQog
ICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItbSIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAppbmRleCBkYTYwMGVhMDBmMGM4ZDY0M2E1N2Y2
NmZiNWY5YjBlM2EzNTY4M2E4Li43YjQ4MjdlZjNjMjM2NzIwNWRjOGQyMzllYTQyYTgxN2EzOTgy
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0
aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5j
cHAKQEAgLTIzMjgsOSArMjMyOCw5IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVZhcmFyZ3NDaGVja3Bv
aW50KFZNJiB2bSwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTR2xvYmFsT2JqZWN0CiAKICAgICBK
U1ZhbHVlIHJlc3VsdDsKICAgICBpZiAoT3Bjb2RlOjpvcGNvZGVJRCAhPSBvcF9jb25zdHJ1Y3Rf
dmFyYXJncykKLSAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQo
Y2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRl
Y29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiKTsKKyAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9i
YWxPYmplY3QsIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9w
ZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiX3MpOwogICAg
IGVsc2UKLSAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgZ2V0T3BlcmFu
ZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5
dGVjb2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiIpOworICAgICAgICByZXN1bHQgPSBjb25zdHJ1
Y3QoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUp
LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIl9z
KTsKIAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgY2FsbEZy
YW1lLT51bmNoZWNrZWRSKGJ5dGVjb2RlLm1fZHN0KSA9IHJlc3VsdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAKaW5kZXggMTA5MzUxZDgzNTUwNjMxMWY5ZjljNTA1MGQ3Y2Ri
NmQ2Y2ZlNjM2OS4uYzc3MmU4ZmI5OTU4OGQ1ZmI3NGUwNDFhMThlZTZmYjM1YTU5MDhlNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTI2NzYsNyArMjY3Niw3IEBA
IEpTVG9rZW5UeXBlIExleGVyPFQ+OjpzY2FuUmVnRXhwKEpTVG9rZW4qIHRva2VuUmVjb3JkLCBV
Q2hhciBwYXR0ZXJuUHJlZml4KQogICAgICAgICBtX2Vycm9yID0gdHJ1ZTsKICAgICAgICAgU3Ry
aW5nIGNvZGVQb2ludCA9IFN0cmluZzo6ZnJvbUNvZGVQb2ludChjdXJyZW50Q29kZVBvaW50KCkp
OwogICAgICAgICBpZiAoIWNvZGVQb2ludCkKLSAgICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52
YWxpZCB1bmljb2RlIGNoYXJhY3RlcmAiOworICAgICAgICAgICAgY29kZVBvaW50ID0gImBpbnZh
bGlkIHVuaWNvZGUgY2hhcmFjdGVyYCJfczsKICAgICAgICAgbV9sZXhFcnJvck1lc3NhZ2UgPSBt
YWtlU3RyaW5nKCJJbnZhbGlkIG5vbi1sYXRpbiBjaGFyYWN0ZXIgaW4gUmV4RXhwIGxpdGVyYWwn
cyBmbGFncyAnIiwgZ2V0VG9rZW4oKnRva2VuUmVjb3JkKSwgY29kZVBvaW50LCAiJyIpOwogICAg
ICAgICByZXR1cm4gdG9rZW47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXIuY3BwCmluZGV4IDU1MjZmNWM5YTEyNTAwODEzM2U5MThlMjZlZjMyNDdhODVkZTIzODkuLjgy
ZWMyNWE4YmZlM2I0NTZmMzA2NzU5NjZiMGY0OTYxMzUxYTY2ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTUwMDksNyArNTAwOSw3IEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gUGFyc2VyPExleGVyVHlwZT46OnBhcnNl
UHJpbWFyeUV4cHJlCiAgICAgICAgIFRyZWVFeHByZXNzaW9uIHJlID0gY29udGV4dC5jcmVhdGVS
ZWdFeHAobG9jYXRpb24sICpwYXR0ZXJuLCAqZmxhZ3MsIHN0YXJ0KTsKICAgICAgICAgaWYgKCFy
ZSkgewogICAgICAgICAgICAgWWFycjo6RXJyb3JDb2RlIGVycm9yQ29kZSA9IFlhcnI6OmNoZWNr
U3ludGF4KHBhdHRlcm4tPnN0cmluZygpLCBmbGFncy0+c3RyaW5nKCkpOwotICAgICAgICAgICAg
cmVnZXhGYWlsKFlhcnI6OmVycm9yTWVzc2FnZShlcnJvckNvZGUpKTsKKyAgICAgICAgICAgIHJl
Z2V4RmFpbChTdHJpbmcgeyBZYXJyOjplcnJvck1lc3NhZ2UoZXJyb3JDb2RlKSB9KTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gcmU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDQyNWI4ZmFk
MTM4MGU3M2M2OGU4MjE2ZGU0NWJlZDQ2ZGJhYWRlNTguLmU5MzgyZDQ5NDMyYzkyZWM4NWUzMzFk
ZDViZTMzMTUwYTM2Y2YxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BYnN0cmFjdE1vZHVsZVJlY29yZC5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNw
YWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKIH0gLy8gbmFtZXNwYWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50
ZXJuYWwKIAotY29uc3QgQ2xhc3NJbmZvIEFic3RyYWN0TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7
ICJBYnN0cmFjdE1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQWJzdHJhY3RNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFz
c0luZm8gQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIkFic3RyYWN0TW9kdWxlUmVj
b3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEFic3RyYWN0TW9kdWxlUmVjb3JkKSB9OwogCiBBYnN0cmFjdE1vZHVsZVJlY29yZDo6QWJz
dHJhY3RNb2R1bGVSZWNvcmQoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRl
bnRpZmllciYgbW9kdWxlS2V5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcAppbmRleCBlOWJkYjdjODVkYWFmZTU2Y2JmODFiZTZiNGU3NWVmN2RlM2JkMjdl
Li4wZjQ5NWI2NzgzOWMwM2RmNDBmMDlmMjllMTU5OGUyZTY2YWE3ZjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3Ip
OwogCi1jb25zdCBDbGFzc0luZm8gQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQWdncmVnYXRl
RXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCmluZGV4IDA4
ODZmOTNmNjVjZjVjNjExYzUzYjRkOGI1MmQ2NDVjM2Q1MzFlYmYuLmQ3YjEzODY2YTMwYmVlMjE5
ZDcxMTRiOWI4NmY5MmFlZDZjMWI1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQXJyYXlD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmFycmF5Q29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUNvbnN0cnVjdG9yKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEFycmF5Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBhcnJheUNvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRl
cmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggZDNhZDIxZTViYzk3ZWE5NDUwYzZjZTBiNmY3ZTBj
NjI1MTdjOTE5OS4uM2Y5NjhkMjFkNTM3ZGU3ZjZhMmQ5MTBiODAyMzZiMzhkYWM3M2I5NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0
ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIEFycmF5SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCAxODE1ZTE0
N2I5NjVlY2M2MmEyZWUzYmU4OGQ5NDhhMGMwYjRmMGVkLi41NzNhMTdiMGRjMGQ5MGQzNDE5YTAz
NjUxNjBhNDJjNDE1MDNmM2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlQcm90b3R5cGUuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGFycmF5UHJvdG9GdW5jTGFzdEluZGV4T2YpOwogCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQXJyYXlQcm90b3R5cGUgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6OnNfaW5mbyA9IHsi
QXJyYXkiLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5UHJvdG90eXBlKX07Citjb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIkFycmF5Il9zLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5UHJvdG90eXBlKSB9OwogCiBBcnJheVByb3RvdHlw
ZSogQXJyYXlQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpAQCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU09iamVj
dCo+IHNwZWNpZXNDb25zdHJ1CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgY29uc3RydWN0b3IsIGFyZ3MsICJTcGVjaWVzIGNvbnN0cnVjdGlvbiBkaWQgbm90IGdldCBh
IHZhbGlkIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24g
ZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZXhjZXB0aW9uUmVzdWx0KTsKICAgICByZXR1cm4gc3RkOjpwYWlyIHsgU3Bl
Y2llc0NvbnN0cnVjdFJlc3VsdDo6Q3JlYXRlZE9iamVjdCwgbmV3T2JqZWN0IH07CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9t
U3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMjA5NTlhOTkwNDcxNTNhY2ViMzlhZGJk
YjBmMjE0MTI2MWZhZjllLi5jZThkYWVlZTRmZGQyYTE4NDFiOGNmZjg0ZGIzMDMxYWQwYWYxN2E3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5j
SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0Zyb21TeW5jSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnJvbVN5bmNJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sICZhc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShBc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3lu
Y0Zyb21TeW5jSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Zyb21T
eW5jSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIEFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlw
ZTo6QXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRl
eCBmN2ZhYzU4YmM0OThiZTBjZDJjYTQ0ZDVlM2ZhMmJkMDYxMWNmNjA5Li40Y2Y3ZDZmYjM4MDNi
NTYwMjAwY2QyNTZiNTQ2YjBlNTM2ZmZjNThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0
LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0lu
Zm8gQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3lu
Y0Z1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jRnVu
Y3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCA0NTFk
MTA5MzdkNjQyYzdkMjZhZWUwMmUzNWY4NWQ1ZWE4YjM3ZDFmLi41ZmYxNTJjYWY1YzE4NTU1ZGZl
MGZjMzBmNmNkMjA3OTMzOTk2YTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Qcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OwogCiBBc3luY0Z1bmN0aW9uUHJv
dG90eXBlOjpBc3luY0Z1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiAgICAgOiBKU0M6OkpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDEyYzlhYmU0NTc2YzllYjllM2FiNDdi
ODgyYjJkYjY2YzZlMjFkNzUuLjU3YWU5YjAzYTFhNTM5MzQ3ODI1OGVlOTVjYTcxNjIyODUxOWRl
NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkFzeW5j
R2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IDhiNDA0ODU0N2Y4ZmRiY2E1NTk3YjM4YTk3
ZjgwNDliMjlkNDcxODcuLjZmNDYzY2ZlM2I0NTUwOTc5Njg5ZGY3MTUyOTgyOTJjMjgxZDM3YWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Q
cm90b3R5cGU6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQzo6SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDBlNmRjYjUzZDYzODA5NTU1NTJkZDBjN2YzZDEyNjBl
NzIzZGY1OGMuLmNmMjIxOGRlNWFhYjlmZmY1NzM4MWY1MWQ3MGE0NGFjY2IxZmJhNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0dlbmVyYXRvclByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEFzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBjYzY5
ODYzMjEwNzMwZmNmZjQxMGM3ZTlmYjkyYzQ5MmQwZDA3Y2RlLi5mYTNhMDNjYWJhZGE3Y2E3MWU1
MjBlZTAyN2Y1ODgxNWE3YzVmMjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEFzeW5jSXRlcmF0
b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0
b21pY3NPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09i
amVjdC5jcHAKaW5kZXggOWVlNDVkZjQ3M2E0OTE1NzVkOTU1YmNmNzk5MGVmZDA1YjgwYWQ4Ni4u
ZTJmODE3NTgxY2MxODA2ZTg3ODQzZDVkOGY5OTU0MzEwZjY5MmY3YyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKQEAgLTU1LDcgKzU1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEF0b21pY3NPYmplY3Qp
OwogRk9SX0VBQ0hfQVRPTUlDU19GVU5DKERFQ0xBUkVfRlVOQ19QUk9UTykKICN1bmRlZiBERUNM
QVJFX0ZVTkNfUFJPVE8KIAotY29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNfaW5mbyA9
IHsgIkF0b21pY3MiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEF0b21pY3NPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQXRvbWljc09iamVj
dDo6c19pbmZvID0geyAiQXRvbWljcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBdG9taWNzT2JqZWN0KSB9OwogCiBBdG9taWNzT2JqZWN0
OjpBdG9taWNzT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05v
bkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWI4NWQ5YjFiNzU0NWY2NGZm
NWEyYmZhYTFjZThmNTUwNjgwN2U5ZC4uNzc1NmNhZTFhNzA1NzQxODVjZTk3NTdlN2MyM2I3YjM1
ZDI5NGUwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEJpZ0ludENvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZiaWdJbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJpZ0ludENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEJp
Z0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
JmJpZ0ludENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQmln
SW50Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgQmlnSW50Q29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBiaWdJbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcAppbmRleCBmMTdlNTdjODVkZDZhMGNhNTFkZmU2
NWI2YzM0Y2ViZDJjZjhhYWNiLi4yN2ZhNjhjZjAzMzE4ZDg4MjkzNDI0NTUyM2JiZTE5ZGI4ZTIz
NTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludE9iamVjdC5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShCaWdJbnRPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8g
QmlnSW50T2JqZWN0OjpzX2luZm8gPSB7ICJCaWdJbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludE9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBCaWdJbnRPYmplY3Q6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRPYmplY3QpIH07
CiAKIAogQmlnSW50T2JqZWN0KiBCaWdJbnRPYmplY3Q6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYmlnSW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAKaW5kZXggOTUyMjA5ZDM3MTY1
NWM2MDk4ZGI2YmVlN2I1YjNlNzU2ZjZmOWJkZi4uNzg2NWE3OWZlNmVkODJiYzUwN2Y1MGQ4MDNm
YTMwM2JiZmZhNmY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
aWdJbnRQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGJpZ0ludFByb3RvRnVuY1ZhbHVlT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludFByb3RvdHlwZTo6c19pbmZvID0geyAiQmlnSW50Iiwg
JkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCaWdJbnRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBiaWdJbnRQ
cm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jv
b2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZWUyNTA2ZjkyNjM3NTU2ZDc0Mzk4NmI5MTE1NTY2
ZWYxYmJhYWEzNS4uZmEyY2ZkYmM2NGJlZDAzMjQ3MzExYzcwOGVjY2M4N2U0MzBlYTYwNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVjdG9yKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5D
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Db25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEJvb2xlYW5Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKaW5kZXgg
YjhjNjI0NmQxZmI5MGJjZDU4MjQ2ZWFlZjQzOTJmYTJkMjZhYmZmYS4uMzExY2FjODFmZDFjZTUz
NTMyZmQ1M2Q5NWE2OTA1MWY4MjQ0ZmNhMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKQEAgLTI3LDcgKzI3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShCb29sZWFuT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xl
YW4iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVhbk9iamVjdDo6c19pbmZv
ID0geyAiQm9vbGVhbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0OjpCb29sZWFu
T2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFu
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90
b3R5cGUuY3BwCmluZGV4IGFmMDA3YTM1ZWEwZTQwZjUzN2YxNjdjZDMwZjM1M2Y2OTdkYTAzNWIu
Ljg3N2UzODUwZTIzMDNlNmU2NjUzOTFkZjY1MWNiODc0NDE4ZGUyYzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGJvb2xlYW5Qcm90b0Z1
bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFu
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJCb29sZWFuIiwgJkJvb2xlYW5PYmplY3Q6OnNfaW5mbywg
JmJvb2xlYW5Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29s
ZWFuUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Qcm90b3R5cGU6OnNfaW5m
byA9IHsgIkJvb2xlYW4iX3MsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gYm9vbGVh
blByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9CeXRlY29kZUNhY2hlRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qnl0ZWNvZGVDYWNoZUVycm9yLmNwcAppbmRleCBhOWZjYjNlZjI1NDk2MmVjOWMwZDg0MWZmN2Ey
ZmZmMWM2MTg2ZmVmLi5kZDljMGUzNmNhZGYyZmE5ZjM2NDNjZTE0YzM3MjNhODkyNTE0NDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJy
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVjb2RlQ2FjaGVF
cnJvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgYm9vbCBCeXRlY29kZUNhY2hlRXJyb3I6OlN0YW5k
YXJkRXJyb3I6OmlzVmFsaWQoKSBjb25zdAogCiBTdHJpbmcgQnl0ZWNvZGVDYWNoZUVycm9yOjpT
dGFuZGFyZEVycm9yOjptZXNzYWdlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gc2FmZVN0cmVycm9y
KG1fZXJybm8pLmRhdGEoKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgc2FmZVN0cmVycm9yKG1fZXJy
bm8pLmRhdGEoKSB9OwogfQogCiBib29sIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6V3JpdGVFcnJvcjo6
aXNWYWxpZCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9DYWxsRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5j
cHAKaW5kZXggOTc4OWQ3NzNjMWMzNGU2MGFhMDUyNGNmYzcyZTdhMWI2MjMwY2E5ZS4uYjY0MjI2
NjM4ZjdmNDVhZTdlMmRkOWM1ZTdjOTY1ZDczZWJhNDM4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NhbGxEYXRhLmNwcApAQCAtMzMsMTIgKzMzLDEyIEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1KU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNhbGwoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbk9i
amVjdCwgZnVuY3Rpb25PYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9CiAKLUpTVmFsdWUg
Y2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0
LCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaAppbmRleCA3M2E5YzE1NWVkNDNm
YTIwYjU4OWMxOGIxZmZlZmY0YzQ0OTQ1MjNjLi4xYWM5M2U4MTIwOGI4ZDBmYzNlNmIyZTJkNjEx
MDIwMmQ3YWZiMDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
YWxsRGF0YS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmgK
QEAgLTYwLDggKzYwLDggQEAgZW51bSBjbGFzcyBQcm9maWxpbmdSZWFzb24gOiB1aW50OF90IHsK
IH07CiAKIC8vIENvbnZlbmllbmNlIHdyYXBwZXIgc28geW91IGRvbid0IG5lZWQgdG8gZGVhbCB3
aXRoIENhbGxEYXRhIHVubGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVzZSBpdC4KLUpTX0VYUE9SVF9Q
UklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmpl
Y3QsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JU
X1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9i
amVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJv
ck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0
KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2Jq
ZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAogSlNfRVhQT1JUX1BSSVZBVEUg
SlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29u
c3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwogSlNfRVhQ
T1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlv
bk9iamVjdCwgY29uc3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlz
dCYsIE5ha2VkUHRyPEV4Y2VwdGlvbj4mIHJldHVybmVkRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKaW5kZXggMjQ2NDAyZTBjNWQwYmI3N2Y0NmY4
ZTBlMWEyMjlkMWJjYWJkYjc4Yi4uYTU3NjkyOGVkOGFiYzEyNWQ5NTg1NDhkYWQwZDlkMGQ0OTUw
Nzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZv
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKQEAgLTE3
Niw3ICsxNzYsNyBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICB1c2luZyBDaGVja0pTQ2FzdFNu
aXBwZXRGdW5jdGlvblB0ciA9IFJlZjxTbmlwcGV0PiAoKikodm9pZCk7CiAKICAgICAvLyBBIHN0
cmluZyBkZW5vdGluZyB0aGUgY2xhc3MgbmFtZS4gRXhhbXBsZTogIldpbmRvdyIuCi0gICAgY29u
c3QgY2hhciogY2xhc3NOYW1lOworICAgIEFTQ0lJTGl0ZXJhbCBjbGFzc05hbWU7CiAgICAgLy8g
UG9pbnRlciB0byB0aGUgY2xhc3MgaW5mb3JtYXRpb24gb2YgdGhlIGJhc2UgY2xhc3MuCiAgICAg
Ly8gbnVsbHB0cmlmIHRoZXJlIGlzIG5vbmUuCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBwYXJlbnRD
bGFzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFy
Z3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwCmluZGV4IGRhOTA4ZGFjNDQwYmU3Njg4MDI0NGEwNjViY2Q5ZTdlMTg2N2I1Y2QuLjlm
NTFiZWQzZGFhZmE5YjM4MjEwMWY2MjQyMDMwMzk1ZmY2NGQxYWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNwcApAQCAtMzMsNyArMzMs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKENsb25lZEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBDbG9uZWRBcmd1bWVu
dHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ2xvbmVkQXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJ
bmZvIENsb25lZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENsb25lZEFyZ3VtZW50
cykgfTsKIAogQ2xvbmVkQXJndW1lbnRzOjpDbG9uZWRBcmd1bWVudHMoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgQnV0dGVyZmx5KiBidXR0ZXJmbHkpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUsIGJ1dHRlcmZseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvZGVDYWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2Fj
aGUuY3BwCmluZGV4IDI4ODRlOWE0YWNiOWQ4OTc2OGFhMGMzNDVkODM2OTBlNjNkN2VmODYuLjUy
NjFlMzA0OWI5Y2JiNDZjMmQwMmVmMjYzNGEzYzUyZjJkOTJjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcApAQCAtMjMzLDcgKzIzMyw3IEBAIFVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rp
b25FeGVjdXRhYmxlKFZNJiB2CiAgICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBwcm9ncmFt
LT5zaW5nbGVTdGF0ZW1lbnQoKTsKICAgICBpZiAoVU5MSUtFTFkoIWZ1bmNEZWNsKSkgewogICAg
ICAgICBKU1Rva2VuIHRva2VuOwotICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNlckVy
cm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJsZSwg
dG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CisgICAgICAgIGVycm9yID0gUGFyc2VyRXJyb3Io
UGFyc2VyRXJyb3I6OlN5bnRheEVycm9yLCBQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3JJcnJlY292
ZXJhYmxlLCB0b2tlbiwgIlBhcnNlciBlcnJvciJfcywgLTEpOwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICB9CiAgICAgQVNTRVJUKGZ1bmNEZWNsLT5pc0Z1bmNEZWNsTm9kZSgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tcGxldGlvbi5jcHAKaW5kZXggM2ZiZjFk
OGQzMzgzYTdhYjIxNzFhOTM4YWZhZTY5NjJjN2ZjYjBjZi4uMTlkMTZjYjgyNDhlOWExZjlmZDhi
OGEzMTk4ZTc3NmI0MjkyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tcGxldGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tcGxldGlvbi5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgYm9vbCBjaGVja01vZHVsZVN5bnRheChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFAK
ICAgICBpZiAoIW1vZHVsZVByb2dyYW1Ob2RlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJFbnRy
eVBvaW50TW9kdWxlIik7CisgICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6
OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSJfcyk7CiAgICAgTW9kdWxlQW5hbHl6ZXIg
bW9kdWxlQW5hbHl6ZXIoZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyOjpmcm9tVWlkKHByaXZhdGVO
YW1lKSwgc291cmNlLCBtb2R1bGVQcm9ncmFtTm9kZS0+dmFyRGVjbGFyYXRpb25zKCksIG1vZHVs
ZVByb2dyYW1Ob2RlLT5sZXhpY2FsVmFyaWFibGVzKCkpOwogICAgIG1vZHVsZUFuYWx5emVyLmFu
YWx5emUoKm1vZHVsZVByb2dyYW1Ob2RlKTsKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE3Miw3ICsx
NzIsNyBAQCBKU1ZhbHVlIGV2YWx1YXRlV2l0aFNjb3BlRXh0ZW5zaW9uKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZAogc3RhdGljIFN5bWJvbCogY3JlYXRlU3lt
Ym9sRm9yRW50cnlQb2ludE1vZHVsZShWTSYgdm0pCiB7CiAgICAgLy8gR2VuZXJhdGUgdGhlIHVu
aXF1ZSBrZXkgZm9yIHRoZSBzb3VyY2UtcHJvdmlkZWQgbW9kdWxlLgotICAgIFByaXZhdGVOYW1l
IHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1bGUi
KTsKKyAgICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24s
ICJFbnRyeVBvaW50TW9kdWxlIl9zKTsKICAgICByZXR1cm4gU3ltYm9sOjpjcmVhdGUodm0sIHBy
aXZhdGVOYW1lLnVpZCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db25zb2xlT2JqZWN0LmNwcAppbmRleCAwZGRlOTg3NzI3NjY1NTk4NDY5NjQ1ZjQzOTZjMjMy
YzU2NmU0M2ExLi5iOWFhYmQ0YzE0OGQyNGQzMjRmNjYyMjhiYTFjODRlYmYzMTllNzRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcApAQCAt
NzQsNyArNzQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJv
dG9GdW5jUmVjb3JkKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQ
cm90b0Z1bmNSZWNvcmRFbmQpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c29sZVByb3RvRnVuY1NjcmVlbnNob3QpOwogCi1jb25zdCBDbGFzc0luZm8gQ29uc29sZU9iamVj
dDo6c19pbmZvID0geyAiY29uc29sZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBD
b25zb2xlT2JqZWN0OjpzX2luZm8gPSB7ICJjb25zb2xlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENvbnNvbGVPYmplY3QpIH07CiAKIENv
bnNvbGVPYmplY3Q6OkNvbnNvbGVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5jcHAKaW5kZXggOTZlNjdkOGRlMjYyY2Ew
ZGZhMWJmMTFiMzEwMjFmMzAxNmJjYzUzNy4uNjJmYmE2YTcxMWY4YmIyODU0ZDg3M2Y1NzhhM2Iw
YWI4OTc4NmFkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29u
c3RydWN0RGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3Ry
dWN0RGF0YS5jcHAKQEAgLTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNv
bnN0cnVjdG9yT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBjb25zdCBjaGFyKiBlcnJvck1l
c3NhZ2UpCitKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgY29uc3RydWN0b3JPYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVjdChnbG9iYWxPYmplY3Qs
IGNvbnN0cnVjdG9yT2JqZWN0LCBjb25zdHJ1Y3Rvck9iamVjdCwgYXJncywgZXJyb3JNZXNzYWdl
KTsKIH0KIAotSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJn
TGlzdCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorSlNPYmplY3QqIGNvbnN0cnVj
dChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0
LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJnTGlzdCYgYXJncywgQVNDSUlMaXRlcmFsIGVy
cm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCmluZGV4IDU0NTJhZTJhYjhlOGQ0YTI0NTZhZjFj
NWVmNTIxZDg2ZThhNmVjYzMuLjc5MTYxY2EwNTEyZmNiMWQ1MzBlNjJiNjBmMThmNjdjY2FjZWRi
NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgK
QEAgLTM1LDggKzM1LDggQEAgbmFtZXNwYWNlIEpTQyB7CiBjbGFzcyBKU09iamVjdDsKIAogLy8g
Q29udmVuaWVuY2Ugd3JhcHBlciBzbyB5b3UgZG9uJ3QgbmVlZCB0byBkZWFsIHdpdGggQ2FsbERh
dGEgdW5sZXNzIHlvdSBhcmUgZ29pbmcgdG8gdXNlIGl0LgotSlNfRVhQT1JUX1BSSVZBVEUgSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JUX1BS
SVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rp
b25PYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgQVND
SUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CitKU19FWFBPUlRfUFJJVkFURSBKU09iamVjdCogY29u
c3RydWN0KEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSBu
ZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAog
SlNfRVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgY29uc3RydWN0b3IsIGNvbnN0IENhbGxEYXRhJiwgY29uc3QgQXJnTGlzdCYsIEpTVmFs
dWUgbmV3VGFyZ2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0N1c3RvbUdldHRlclNldHRlci5jcHAKaW5kZXggZDFjMDJmMDU5ZDA0NGZhMDNlNTM0NDkzNWNh
MGMyZmNiZjUwZmY4Ny4uZWJmY2M0MzY2MWM2MDc3MzdhNzk3YTI0OWIwZWFlYzdiYTdjMzRhNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0
dGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwCkBAIC0zMiw2ICszMiw2IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKTsKIAotY29u
c3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVy
U2V0dGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShD
dXN0b21HZXR0ZXJTZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVy
OjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB9IC8v
IG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RPTUF0dHJpYnV0ZUdldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDk3ZTcyZTE0MmViYTg0ODk0
MzYzZjA0MzkyOTk1ZmE1YjljZGQyNTEuLjcxZmRiZTZhMmY5ZmNhZDc3OThlNzhjYTcyY2M1N2Mw
MDZkNjNmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RPTUF0
dHJpYnV0ZUdldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcApAQCAtMzIsNiArMzIsNiBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERPTUF0
dHJpYnV0ZUdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBET01BdHRyaWJ1dGVHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdldHRlclNldHRlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NQXR0cmlidXRl
R2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUF0dHJpYnV0ZUdldHRlclNldHRl
cjo6c19pbmZvID0geyAiRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRl
clNldHRlcikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAppbmRleCBlNzM3YjJmYTM4ZGE3MDk5
YzYxMGFjZjk3NTRiZGYzZDBhODk2MzgzLi42ZDA5MDJjOWZjYzk0YWQwZDUxZTUxZGUyOGVhMmM5
NjUyOTRjN2EzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oZGF0ZU5vdyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
RGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sICZkYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShEYXRlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRh
dGVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBEYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBkYXRlQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggNTMyNWNmZmVmMzE4YTczN2JiYmJiZTRlYzY0NjBiZDg5
NjhlNGQ5Mi4uZjg3YmI2NmMwMzY3NWIyNjU1MzNmMTg5YmY0ZGQ5ZGUwODk1ODQwOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCkBAIC0yNyw3
ICsyNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRGF0ZUluc3Rh
bmNlOjpzX2luZm8gPSB7IkRhdGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJ
bnN0YW5jZTo6c19pbmZvID0geyAiRGF0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlSW5zdGFuY2UpIH07CiAKIERhdGVJbnN0YW5j
ZTo6RGF0ZUluc3RhbmNlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNl
KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQ
cm90b3R5cGUuY3BwCmluZGV4IDg1NDVhNTU5YTczMjhiNTUzN2RiODEyODNjOThhNjM5ZDZjNGE4
M2IuLjRkMDRhNTJiZWQ4ZmMyMjEzYjUyMWJkYTU2YjdiOGMzOTUxZDExNWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC0yMTAsNyAr
MjEwLDcgQEAgc3RhdGljIGJvb2wgZmlsbFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSoKICAgICByZXR1cm4gb2s7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7Ik9iamVjdCIsICZCYXNlOjpz
X2luZm8sICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RGF0ZVByb3RvdHlwZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlUHJvdG90eXBlVGFibGUKQEAgLTM1OCwx
MiArMzU4LDEyIEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihkYXRlUHJvdG9GdW5jVG9Qcmlt
aXRpdmVTeW1ib2wsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1l
LT50aGlzVmFsdWUoKS50b1RoaXMoZ2xvYmFsT2JqZWN0LCBFQ01BTW9kZTo6c3RyaWN0KCkpOwog
ICAgIGlmICghdGhpc1ZhbHVlLmlzT2JqZWN0KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9Qcmlt
aXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtT
eW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIl9zKTsK
ICAgICBKU09iamVjdCogdGhpc09iamVjdCA9IGpzQ2FzdDxKU09iamVjdCo+KHRoaXNWYWx1ZSk7
CiAgICAgSW50ZWdyaXR5OjphdWRpdFN0cnVjdHVyZUlEKHRoaXNPYmplY3QtPnN0cnVjdHVyZUlE
KCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJvdG90eXBl
W1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJv
dG90eXBlW1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iX3Mp
OwogCiAgICAgSlNWYWx1ZSBoaW50VmFsdWUgPSBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50
KDApOwogICAgIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgdHlwZSA9IHRvUHJlZmVycmVkUHJpbWl0
aXZlVHlwZShnbG9iYWxPYmplY3QsIGhpbnRWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcAppbmRleCBiYTQyYzYxODczZTM3OWMw
ZDNkMmIzOGU3NzNjYzE3NzZmZTRkMTU3Li5hY2M2MjlmMGQzMGQxNDExMzgzNWM2ZWUyYzVjMmYy
N2QwYWYzNzZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJl
Y3RBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RpcmVj
dEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShEaXJlY3RBcmd1bWVudHMpOwogCi1j
b25zdCBDbGFzc0luZm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERpcmVj
dEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBEaXJlY3RBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShEaXJlY3RBcmd1bWVudHMpIH07CiAKIERpcmVjdEFyZ3VtZW50czo6RGly
ZWN0QXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVuc2lnbmVkIGxlbmd0
aCwgdW5zaWduZWQgY2FwYWNpdHkpCiAgICAgOiBHZW5lcmljQXJndW1lbnRzKHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAppbmRleCA1NGIxNDk0NThmZjIy
ODcwZmRkYjgzMWZlYTk5Njc0ZDIyZDFhNTIyLi44ZTQ4YmIxNGRkNjFkYzgyM2EyODAyZGQxODNk
NTM2OGE2YWZlZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKQEAgLTkz
LDcgKzkzLDcgQEAgSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSB0aHJvd0RPTUF0dHJpYnV0ZVNl
dHRlclR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCosIFRocm8KIC8vIENvbnZlbmllbmNlIHdyYXBw
ZXJzLCB3cmFwIHJlc3VsdCBhcyBhbiBFbmNvZGVkSlNWYWx1ZS4KIGlubGluZSB2b2lkIHRocm93
Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwg
RXhjZXB0aW9uKiBleGNlcHRpb24pIHsgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgZXhjZXB0aW9uKTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1FcnJvcihKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwgSlNWYWx1ZSBlcnJv
cikgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGVycm9yKSk7IH0KLWlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IGNoYXIq
IGVycm9yTWVzc2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdl
KSkpOyB9CitpbmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVz
c2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdlKSkpOyB9CiBp
bmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTVR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRo
cm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUpKTsgfQogaW5saW5lIEVuY29kZWRKU1Zh
bHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dT
Y29wZSYgc2NvcGUsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvck1lc3NhZ2Up
KTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IFN0cmluZyYgZXJyb3JN
ZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzA2NGQxMjBhN2Y4YzQyMThl
MTE3YjU2NjVkYjdlYTUwMjhhN2I3ZC4uNTBkMmVmMDRjYTMyNzA1MTJiZGZmZTAyYzNjMTU3MDJk
MjI4ZjAwNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJv
ckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFcnJvckNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcAppbmRleCA3MzhlN2Y0ZTEy
N2UxN2RlZjJmNDU5Yzk4YmEwYTc3MjUwNTY1OThiLi4zNTJiN2QyOTgzYzNhOTVlMGFkZDYxNjI4
YjMyMDRkMTgwZTM2ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckluc3RhbmNlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkpTTm9u
RmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShFcnJvckluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5m
byA9IHsgIkVycm9yIl9zLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVycm9ySW5zdGFuY2UpIH07CiAKIEVycm9ySW5zdGFu
Y2U6OkVycm9ySW5zdGFuY2UoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRXJyb3JUeXBl
IGVycm9yVHlwZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCBlZjQzMWYzOTVlMzQy
NWEyNjM1NGU5MzIwYWNjNGY5MjUyYjM4MjljLi5jNjZiZmE4MzBjNDFkMjdmOTFhMzMwYjY2YjYw
YTBhOWQwN2Y0NzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JQcm90b3R5cGUuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGVycm9yUHJvdG9GdW5jVG9TdHJpbmcpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6
c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJvclByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBFcnJvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGVycm9yUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRhYmxlLmNw
cAppbmRleCAxYjJmNGY1MmFiN2JmY2UzNDBiM2MzOTUyOWUxODA1NzJjZDE2NDQzLi5kZDg0OTMz
ODJmZjYxNDEwYmJlZWVkZDBiYmUyNzdkYzUyMDhlNjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5m
byA9IHsgIkV2YWxFeGVjdXRhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShFdmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
dmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiRXZhbEV4ZWN1dGFibGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUp
IH07CiAKIEV2YWxFeGVjdXRhYmxlOjpFdmFsRXhlY3V0YWJsZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaW5TdHJpY3RDb250ZXh0
LCBEZXJpdmVkQ29udGV4dFR5cGUgZGVyaXZlZENvbnRleHRUeXBlLCBib29sIGlzQXJyb3dGdW5j
dGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFsQ29udGV4dFR5
cGUgZXZhbENvbnRleHRUeXBlLCBOZWVkc0NsYXNzRmllbGRJbml0aWFsaXplciBuZWVkc0NsYXNz
RmllbGRJbml0aWFsaXplciwgUHJpdmF0ZUJyYW5kUmVxdWlyZW1lbnQgcHJpdmF0ZUJyYW5kUmVx
dWlyZW1lbnQpCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKS5ldmFsRXhlY3V0YWJsZVN0
cnVjdHVyZS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT52bSgpLCBzb3VyY2UsIGluU3RyaWN0Q29udGV4
dCwgZGVyaXZlZENvbnRleHRUeXBlLCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBpc0luc2lkZU9y
ZGluYXJ5RnVuY3Rpb24sIGV2YWxDb250ZXh0VHlwZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcAppbmRleCA0ZTIwNjQ2MGI5ZDIwMDY3
OGZmYzRhYmVhMzE2OTA1NDFkOGZmZjVmLi5mYjE5OWYzODc2MGFjYmUwZDM5NGJlMzAxNmY5ZjJk
YzI3NjI2OWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbi5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGNlcHRpb246OnNfaW5mbyA9IHsgIkV4Y2VwdGlvbiIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEV4Y2VwdGlvbjo6c19pbmZvID0geyAiRXhjZXB0aW9uIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4Y2VwdGlvbikgfTsKIAogRXhjZXB0aW9uKiBF
eGNlcHRpb246OmNyZWF0ZShWTSYgdm0sIEpTVmFsdWUgdGhyb3duVmFsdWUsIFN0YWNrQ2FwdHVy
ZUFjdGlvbiBhY3Rpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0V4Y2VwdGlvbkhlbHBlcnMuY3BwCmluZGV4IDA5OWZmNzFjZDYyNjViOGQxY2E4YzkxZTM2MTEz
NjFlZTBlZTdmYTMuLmQyMTM0Mzk2NDczNjBlOWNiNWI1ZDkzOTZhY2FhNDEyZGM4ZGM4NGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIFN0cmluZyBub3RBRnVuY3Rpb25Tb3VyY2VB
cHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY29uc3QgU3QKICAgICAgICAg
cmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2FnZSwgc291
cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNlOjpGb3Vu
ZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIG5vdEFGdW5jdGlvbkluZGV4ID0gb3JpZ2luYWxNZXNz
YWdlLnJldmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiIpOworICAgIGF1dG8gbm90QUZ1bmN0
aW9uSW5kZXggPSBvcmlnaW5hbE1lc3NhZ2UucmV2ZXJzZUZpbmQoImlzIG5vdCBhIGZ1bmN0aW9u
Il9zKTsKICAgICBSRUxFQVNFX0FTU0VSVChub3RBRnVuY3Rpb25JbmRleCAhPSBub3RGb3VuZCk7
CiAgICAgU3RyaW5nVmlldyBkaXNwbGF5VmFsdWU7CiAgICAgaWYgKG9yaWdpbmFsTWVzc2FnZS5p
czhCaXQoKSkgCkBAIC0xOTcsNyArMTk3LDcgQEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUGFyYW1l
dGVySW5Tb3VyY2VBcHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY28KICAg
ICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2Fn
ZSwgc291cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNl
OjpGb3VuZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIGluSW5kZXggPSBzb3VyY2VUZXh0LnJldmVy
c2VGaW5kKCJpbiIpOworICAgIGF1dG8gaW5JbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQo
ImluIl9zKTsKICAgICBpZiAoaW5JbmRleCA9PSBub3RGb3VuZCkgewogICAgICAgICAvLyBUaGlz
IHNob3VsZCBiYXNpY2FsbHkgbmV2ZXIgaGFwcGVuLCBzaW5jZSBKUyBjb2RlIG11c3QgdXNlIHRo
ZSBsaXRlcmFsCiAgICAgICAgIC8vIHRleHQgImluIiBmb3IgdGhlIGBpbmAgb3BlcmF0aW9uLiBI
b3dldmVyLCBpZiB3ZSBmYWlsIHRvIGZpbmQgImluIgpAQCAtMjE4LDcgKzIxOCw3IEBAIGlubGlu
ZSBTdHJpbmcgaW52YWxpZFBhcmFtZXRlckluc3RhbmNlb2ZTb3VyY2VBcHBlbmRlcihjb25zdCBT
dHJpbmcmIGNvbnRlbnQsIGNvCiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3Vy
Y2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3Vy
cmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBpbnN0
YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9mIik7CisgICAg
YXV0byBpbnN0YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9m
Il9zKTsKICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBTeW1ib2wuaGFzSW5zdGFuY2UgZnVu
Y3Rpb24gaXMgZGlyZWN0bHkgY2FsbGVkLgogICAgIGlmIChpbnN0YW5jZW9mSW5kZXggPT0gbm90
Rm91bmQpCiAgICAgICAgIHJldHVybiBvcmlnaW5hbE1lc3NhZ2U7CkBAIC0yNDYsNyArMjQ2LDcg
QEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUHJvdG90eXBlU291cmNlQXBwZW5kZXIoY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvbnMKICAgICBpZiAob2NjdXJyZW5jZSA9PSBFcnJvcklu
c3RhbmNlOjpGb3VuZEFwcHJveGltYXRlU291cmNlKQogICAgICAgICByZXR1cm4gZGVmYXVsdEFw
cHJveGltYXRlU291cmNlRXJyb3Iob3JpZ2luYWxNZXNzYWdlLCBzb3VyY2VUZXh0KTsKIAotICAg
IGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyIpOwor
ICAgIGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyJf
cyk7CiAgICAgaWYgKGV4dGVuZHNJbmRleCA9PSBub3RGb3VuZCB8fCBzb3VyY2VUZXh0LmZpbmQo
ImV4dGVuZHMiKSAhPSBleHRlbmRzSW5kZXgpCiAgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKG9y
aWdpbmFsTWVzc2FnZSwgIiAoZXZhbHVhdGluZyAnIiwgc291cmNlVGV4dCwgIicpIik7CiAKQEAg
LTMyNCwyNyArMzI0LDI3IEBAIEpTT2JqZWN0KiBjcmVhdGVFcnJvckZvckludmFsaWRHbG9iYWxB
c3NpZ25tZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvCiAKIEpTT2JqZWN0KiBj
cmVhdGVURFpFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVy
biBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIHVuaW5p
dGlhbGl6ZWQgdmFyaWFibGUuIik7CisgICAgcmV0dXJuIGNyZWF0ZVJlZmVyZW5jZUVycm9yKGds
b2JhbE9iamVjdCwgIkNhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJsZS4iX3MpOwog
fQogCiBKU09iamVjdCogY3JlYXRlSW52YWxpZFByaXZhdGVOYW1lRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgbWFrZVN0cmluZygiQ2Fubm90IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiKSwg
ZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNyZWF0ZVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIGludmFsaWQgcHJpdmF0ZSBmaWVs
ZCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEpTT2JqZWN0
KiBjcmVhdGVSZWRlZmluZWRQcml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VT
dHJpbmcoIkNhbm5vdCByZWRlZmluZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIiksIGRlZmF1bHRT
b3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCAiQ2Fubm90IHJlZGVmaW5lIGV4aXN0aW5nIHByaXZhdGUgZmllbGQiX3Ms
IGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3Jl
YXRlUHJpdmF0ZU1ldGhvZEFjY2Vzc0Vycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VTdHJpbmco
IkNhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcyksIGRlZmF1bHRTb3Vy
Y2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyBwcml2YXRlIG1ldGhvZCBvciBhY2Vzc29yIl9zLCBk
ZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0
ZVJlaW5zdGFsbFByaXZhdGVNZXRob2RFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5n
KCJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUgbWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0aGFu
IG9uY2UiX3MpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1
cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCBpbnN0YWxsIHNhbWUgcHJp
dmF0ZSBtZXRob2RzIG9uIG9iamVjdCBtb3JlIHRoYW4gb25jZSJfcywgZGVmYXVsdFNvdXJjZUFw
cGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEV4Y2VwdGlvbiogdGhyb3dPdXRPZk1lbW9yeUVy
cm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwCmluZGV4
IGZkNDczODJkMTVlZjc1OTk3MmY5NGM2MmUzMDBjZTkwZjA2OWI4ZjAuLjY4YWVlYWFmYTFiMDE5
MzU4MDJmOWZjNTViZDY4YTc5NTcyMDc3NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGVjdXRhYmxlQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAi
RXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZUJhc2U6OnNf
aW5mbyA9IHsgIkV4ZWN1dGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07CiAKIHZvaWQgRXhlY3V0YWJsZUJhc2U6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNw
cAppbmRleCBmMzFkYjg2YTc5NjE2ZTQ1YThkYzExNWFhMjY1NzBhYzNjN2U2NmY1Li5mNWZjMWE4
MWQ2NmM1ZWZjMTUyMzRmMDA3OWEyZjAyODA3NTUwYjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgRmluYWxpemF0aW9u
UmVnaXN0cnlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBGaW5hbGl6YXRpb25S
ZWdpc3RyeVByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUu
Y3BwCmluZGV4IDg1M2U0YWE4NzRjYjUxMDBhMzYzYjJjMDAxNDMzNTNjZmZhNWIwOWMuLjhhMGMx
MTgxOTY2MjJlMTY2ZmM4MWFhYmNkOThlYTc4OGExZWNkNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVBy
b3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZTo6c19pbmZvID0geyAiRmlu
YWxpemF0aW9uUmVnaXN0cnkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJGaW5h
bGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZSkgfTsKIAogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxpemF0aW9uUmVnaXN0
cnlSZWdpc3Rlcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNG
aW5hbGl6YXRpb25SZWdpc3RyeVVucmVnaXN0ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAxNjVlN2E3Zjdl
NDZkZGRjODE0MDU1OWQyMTcxMWI4MjBhNTI3MTQyLi5lYTM1NGEwY2ZmZjNjMjRlNTQ4MGQyOWYz
NGNkZDc5YWFlMWU3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9u
Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0V2l0
aEZ1bmN0aW9uQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEZ1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggZjE0OWQ0ZTU5YTcyNGE4NDI1
N2ZiNjg3ODQ5MmMyYWEzYjE2MmU4Yi4uYjQ3NDQ2NGU3MjIwYTU5NDlhNzM2MzM5ZTViZTBjMDM1
MjY4NDU2ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkV4ZWN1dGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJGdW5jdGlv
bkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uRXhlY3V0YWJsZSJf
cywgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFibGUpIH07CiAKIEZ1bmN0aW9uRXhlY3V0YWJsZTo6
RnVuY3Rpb25FeGVjdXRhYmxlKFZNJiB2bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBVbmxp
bmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogdW5saW5rZWRFeGVjdXRhYmxlLCBJbnRyaW5zaWMgaW50
cmluc2ljLCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbikKICAgICA6IFNjcmlwdEV4ZWN1
dGFibGUodm0uZnVuY3Rpb25FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCB2bSwgc291cmNlLCB1
bmxpbmtlZEV4ZWN1dGFibGUtPmxleGljYWxTY29wZUZlYXR1cmVzKCksIHVubGlua2VkRXhlY3V0
YWJsZS0+ZGVyaXZlZENvbnRleHRUeXBlKCksIGZhbHNlLCBpc0luc2lkZU9yZGluYXJ5RnVuY3Rp
b24gfHwgIXVubGlua2VkRXhlY3V0YWJsZS0+aXNBcnJvd0Z1bmN0aW9uKCksIEV2YWxDb250ZXh0
VHlwZTo6Tm9uZSwgaW50cmluc2ljKQpAQCAtMTY0LDcgKzE2NCw3IEBAIEpTU3RyaW5nKiBGdW5j
dGlvbkV4ZWN1dGFibGU6OnRvU3RyaW5nU2xvdyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFycm93RnVuY3Rpb25Nb2RlOgogICAgIGNh
c2UgU291cmNlUGFyc2VNb2RlOjpDbGFzc0ZpZWxkSW5pdGlhbGl6ZXJNb2RlOgotICAgICAgICBm
dW5jdGlvbkhlYWRlciA9ICIiOworICAgICAgICBmdW5jdGlvbkhlYWRlciA9ICIiX3M7CiAgICAg
ICAgIGJyZWFrOwogCiAgICAgY2FzZSBTb3VyY2VQYXJzZU1vZGU6OkFzeW5jRnVuY3Rpb25Nb2Rl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5
cGUuY3BwCmluZGV4IDFkNTJhYmY1ODVjMmJhYmVkNmM4NGI1OTk3NGJiYTk2NzNkYTBmYTkuLmM5
YzlhOGFjN2UyNDcxMThhNmJmMzRlMmIyNWE1NWU5ZDBkNDRhM2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMyLDcg
KzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShGdW5jdGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5j
dGlvblByb3RvdHlwZSkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25Qcm90b0Z1bmNUb1N0cmluZyk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihjYWxsRnVuY3Rpb25Qcm90b3R5cGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcAppbmRleCBhMTNkZmE0NTY2ODMxODhmNzk0ZDc5
OTM2YTkyMTM4NTYxZjIzMjcwLi40YTliNjQwNGRkNGM3M2VlYzc5NDM4NjljNTg0NDVmYmI0MjRi
ZjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJh
cmVEYXRhLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEZ1bmN0aW9uUmFyZURhdGE6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uUmFyZURhdGEi
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9u
UmFyZURhdGEpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25SYXJlRGF0YTo6c19pbmZvID0g
eyAiRnVuY3Rpb25SYXJlRGF0YSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShGdW5jdGlvblJhcmVEYXRhKSB9OwogCiBGdW5jdGlvblJhcmVEYXRhKiBG
dW5jdGlvblJhcmVEYXRhOjpjcmVhdGUoVk0mIHZtLCBFeGVjdXRhYmxlQmFzZSogZXhlY3V0YWJs
ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ZhM2IyMTE2MjM2ODdjMWE5
OWIzNTUxOGQyYjRkMDQyN2Q0Nzc2MC4uZjQ5MWU3YzVlN2I3YzEwM2YzZWMwMTY0M2I1MGMzNGJm
YWY3MTRkMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEdlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNhbGxHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rp
b25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IGFlOWVmMjE4OGQ4ZmJlMWRmYTU2NGJjOWE0MmRi
ZDQwNzEyNTdlOTMuLmM0MmVkNDMyNTcxYTYxZDA1NGRkNjI2MmM0ZTNjY2ZiZTY3NDBmMGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShHZW5lcmF0b3JGdW5j
dGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvblByb3Rv
dHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSkgfTsK
IAogR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZt
LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9H
ZW5lcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2Vu
ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBmYTA5YjlkMzA2ZmVmZTA2MzU4MThhZjJjMjJkYmRl
ODJiMWNkYzhjLi43ZTgwYjFjMzQ3MTIxYTI0NzFhMTc3MDgyYTc3N2IyMTBjYzkzNmMzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkdlbmVyYXRvciIsICZCYXNlOjpz
X2luZm8sICZnZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gR2VuZXJhdG9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZnZW5lcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBA
YmVnaW4gZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IGZhZDJjMjNmNzEwOTI5NzBiNWVjMDhlODE0
ODRmMjE5MjEzMDkwNzcuLmU2NmUwMzM0ZTU5Njk3MzU2N2Y5MWQyYWY3ZDU2Mjk0MjZiMDhiMzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcApA
QCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEdldHRlclNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIl9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdldHRlclNldHRlcikgfTsKIAog
dGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxk
cmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCmluZGV4IDAwYjY1YzBi
YTgyMjY4YjQ4MjY5NTQyMWQwODkyYmQ3ZDMzYjhiM2MuLjc1ZTg0YjM4ZmY3MjdiMzJjOGViMDAx
MTZhMGIxZDBhZDg0MGJmZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiR2xv
YmFsRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoR2xvYmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJHbG9iYWxFeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbEV4ZWN1dGFibGUp
IH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSGFzaE1hcEltcGwuY3BwCmluZGV4IGQxYzRjNWNmOTZlOTc1NGYyMzJiZTUyNjUwZjJlZThk
MmI0MmU2NTIuLmVhYmE2NGU2ZDhlMjZiMWU1ZjdmZWIxZGY0NTA1MDY3ZjEwYjIzNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hhc2hNYXBJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNoTWFwSW1wbC5jcHAKQEAgLTM2LDEx
ICszNiwxMSBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+
LCBIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhSwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBD
bGFzc0luZm8gSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT46OnNfaW5mbyA9Ci0g
ICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT4pIH07CisgICAg
eyAiSGFzaE1hcEJ1Y2tldCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhS2V5PikgfTsKIAogdGVt
cGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFL
ZXlWYWx1ZT46OnNfaW5mbyA9Ci0gICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVj
a2V0RGF0YUtleVZhbHVlPikgfTsKKyAgICB7ICJIYXNoTWFwQnVja2V0Il9zLCBudWxscHRyLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1h
cEJ1Y2tldERhdGFLZXlWYWx1ZT4pIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIERhdGE+CiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAppbmRleCBkNWJjNDk0MDk1N2U1NTJiZjY0YTUwYTU5
MDJjMTEwYzE1MjZkYjkxLi4wMWJjMDg2YWY4NDk4MGY4NmEwNGJiMmFkZDliNThhMTRkYmU2MTg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0
aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGVybmFsRnVuY3Rpb24pOwogCi1jb25zdCBD
bGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGVybmFsRnVu
Y3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJu
YWxGdW5jdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOYXRpdmVGdW5jdGlvbiBm
dW5jdGlvbkZvckNhbGwsIE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uRm9yQ29uc3RydWN0KQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxDb2xsYXRvci5jcHAKaW5kZXggYjZiYjc1MTU4MGQ3NjgyZTE2NmE0NTk2NWYzMjMyOWJl
MmM0YzY1NS4uMzY5NzU1MTEzNDlhZjNhNDU4OWEzYTAxNWRmMGU1MWEyOWFkZTJlMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwCkBAIC0zNiw3
ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bENvbGxh
dG9yOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsQ29sbGF0b3I6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3IpIH07CiAKIG5hbWVz
cGFjZSBJbnRsQ29sbGF0b3JJbnRlcm5hbCB7CiBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFs
c2U7CkBAIC0xNzIsNyArMTcyLDcgQEAgdm9pZCBJbnRsQ29sbGF0b3I6OmluaXRpYWxpemVDb2xs
YXRvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGxvY2EKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCiAgICAgewotICAgICAgICBTdHJpbmcg
Y29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICAgICAg
U3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCks
IEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKICAgICAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxsKCkpIHsKICAgICAgICAg
ICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUoY29sbGF0aW9uKSkgewpAQCAt
MTg4LDcgKzE4OCw3IEBAIHZvaWQgSW50bENvbGxhdG9yOjppbml0aWFsaXplQ29sbGF0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBsb2NhCiAgICAgaWYgKG51bWVyaWMg
IT0gVHJpU3RhdGU6OkluZGV0ZXJtaW5hdGUpCiAgICAgICAgIGxvY2FsZU9wdGlvbnNbc3RhdGlj
X2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5OjpLbildID0gU3RyaW5nKG51bWVy
aWMgPT0gVHJpU3RhdGU6OlRydWUgPyAidHJ1ZSJfcyA6ICJmYWxzZSJfcyk7CiAKLSAgICBTdHJp
bmcgY2FzZUZpcnN0T3B0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlv
bnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAidXBwZXIiLCAibG93ZXIiLCAiZmFs
c2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1cHBlclwiLCBcImxvd2VyXCIsIG9y
IFwiZmFsc2VcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYXNlRmlyc3RPcHRpb24gPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWNhc2VGaXJzdE9wdGlvbi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlT3B0aW9uc1tz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRlbnNpb25LZXk6OktmKV0gPSBjYXNlRmly
c3RPcHRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMGJjNWFhMzdkN2NkZTAyMDMzZDczZTlm
ODVjYjJlMTMxNzMxMDMyOS4uOTRlZWQ4N2ZiMzgxNmQ3ZmVjOGI3ZmNhODkyOTY3ODg4MTU1YWM0
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxD
b2xsYXRvckNvbnN0cnVjdG9yLmNwcApAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxJbnRsQ29sbGF0b3IpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SW50bENvbGxhdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZjb2xsYXRvckNvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bENvbGxhdG9yQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmY29sbGF0b3JDb25zdHJ1
Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvckNvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxDb2xsYXRvckNvbnN0cnVjdG9yLmx1dC5o
CiBAYmVnaW4gY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwNTlj
MTk1ZmIwMzU1ZDQ1NTA3MTZhZWI4NGM1OTkwMWM4MmQ0NTMxLi5kMGY5YjZjNjE2M2Y0NzE1YjU3
ZTg1ZTQwNjMxMDhiYzhmMWQzMTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bENvbGxhdG9yRnVuY0NvbXBhcmUp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5Db2xsYXRvciIsICZCYXNlOjpzX2luZm8sICZjb2xsYXRv
clByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRv
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuQ29sbGF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZjb2xsYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvclByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JQcm90b3R5cGUubHV0LmgKIEBi
ZWdpbiBjb2xsYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAppbmRleCBjMmQ0OWRhOThhNjYwYmM2
MmIwNGFmZTE5YzU3OGYyNTkyZmQ0YmI5Li5hMWM2MTQ1YzE3MWM0MGQxODhmMDcyOTU4NWYwNWVk
Yjc1YzBhYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBVRGF0ZUludGVydmFs
Rm9ybWF0RGVsZXRlcjo6b3BlcmF0b3IoKShVRGF0ZUludGVydmFsRm9ybWF0KiBmb3JtYXR0ZXIp
CiAgICAgICAgIHVkdGl0dmZtdF9jbG9zZShmb3JtYXR0ZXIpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1h
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07CiAKIG5hbWVzcGFjZSBJbnRsRGF0ZVRpbWVGb3Jt
YXRJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAt
NjA0LDcgKzYwNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRp
bWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50bFN0
cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhbGVu
ZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGludGxT
dHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxl
bmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxlbmRh
ci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBl
KGNhbGVuZGFyKSkgewpAQCAtNjE0LDcgKzYxNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0
Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwK
ICAgICAgICAgbG9jYWxlT3B0aW9uc1tzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRl
bnNpb25LZXk6OkNhKV0gPSBjYWxlbmRhcjsKICAgICB9CiAKLSAgICBTdHJpbmcgbnVtYmVyaW5n
U3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBT
dHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBBU0NJSUxpdGVy
YWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFudW1iZXJpbmdTeXN0ZW0uaXNOdWxsKCkpIHsK
ICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShudW1iZXJpbmdTeXN0
ZW0pKSB7CkBAIC04ODEsNyArODgxLDcgQEAgdm9pZCBJbnRsRGF0ZVRpbWVGb3JtYXQ6OmluaXRp
YWxpemVEYXRlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogICAgICAg
ICBicmVhazsKICAgICB9CiAKLSAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVzdCBm
aXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJlc3Qg
Zml0XCIiLCAiYmVzdCBmaXQiKTsKKyAgICBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hlciwgeyAiYmFzaWMiLCAiYmVz
dCBmaXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwiYmFzaWNcIiBvciBcImJl
c3QgZml0XCIiX3MsICJiZXN0IGZpdCJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgdm9pZCgpKTsKIAogICAgIG1fZGF0ZVN0eWxlID0gaW50bE9wdGlvbjxEYXRlVGltZVN0eWxl
PihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmRhdGVTdHlsZSwgeyB7
ICJmdWxsIl9zLCBEYXRlVGltZVN0eWxlOjpGdWxsIH0sIHsgImxvbmciX3MsIERhdGVUaW1lU3R5
bGU6OkxvbmcgfSwgeyAibWVkaXVtIl9zLCBEYXRlVGltZVN0eWxlOjpNZWRpdW0gfSwgeyAic2hv
cnQiX3MsIERhdGVUaW1lU3R5bGU6OlNob3J0IH0gfSwgImRhdGVTdHlsZSBtdXN0IGJlIFwiZnVs
bFwiLCBcImxvbmdcIiwgXCJtZWRpdW1cIiwgb3IgXCJzaG9ydFwiIl9zLCBEYXRlVGltZVN0eWxl
OjpOb25lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxE
YXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCBiNDUxZWUwOWIxZGRm
MTdhZjU3MmFjOWE0ZWJiOTE3M2VlNmYyYjczLi4zZjg1MjFkMmIyN2MyM2EyNmY4YTgyOTllMzRi
YWFiY2RhZDNiMTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0
NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxEYXRlVGltZUZvcm1h
dENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2lu
Zm8sICZkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZv
cm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGU3NDEy
Y2MyODIxMmZiYTlmYTIxODlkZjY0NDY4YTRiM2ZjMzgxMGEuLmVjMTgxNTY5ODczODcxZmExZjMw
YjlkYTg1MzM3ZDA2MzVlYmM4ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNTAs
NyArNTAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGF0ZVRpbWVG
b3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5EYXRl
VGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5m
byA9IHsgIkludGwuRGF0ZVRpbWVGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZkYXRlVGltZUZv
cm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRl
VGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3Bw
CmluZGV4IGZiZTg2ZTRiN2VhYTA2M2NiYjY0NjNiOWExZmE5ZjcxYjI5MTg3ZTQuLmE4YmNmYmJh
ZDE2ZDMxZTViZGI0YjhjODZmNWI0NDJhOTRhMTExMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwCkBAIC0zNiw3ICszNiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lczo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIElu
dGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9Owog
CiBJbnRsRGlzcGxheU5hbWVzKiBJbnRsRGlzcGxheU5hbWVzOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwCmluZGV4IGVhMDUx
YmIzNGM1ZTFkOTIyZDdiZjA4NGYxM2E1ZTQ2ZjEwYzQzMjQuLjBhM2JmOGQ0OTQ0ODI3NGQ2MTdk
YTE5OWE0NDIwMGJhNmNiNjRlMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGlzcGxheU5h
bWVzQ29uc3RydWN0b3JTdXBwb3J0ZWRMb2NhbGVzT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmZGlzcGxheU5hbWVzQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1lc0NvbnN0cnVjdG9y
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lc0NvbnN0
cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIGRpc3BsYXlOYW1lc0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKaW5kZXggNDVhNjIwNWQxMmI4ZDhiMzZkMmY4YmFhOWU3NzNlZTQxMmMwMjU0Mi4uNmMx
ODVlYTU5MDBhMDQzZTI0MmZjZGE1MzFmNGE2Y2ZkODAwZmM5YiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc1Byb3RvdHlw
ZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
aW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIiwgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1l
c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1lc1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50bC5EaXNwbGF5TmFtZXMiX3MsICZCYXNlOjpzX2luZm8sICZk
aXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGlzcGxheU5hbWVzUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNwbGF5
TmFtZXNQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkaXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwCmlu
ZGV4IGY1YzMwNTcwOThjOTQ4ZjMxNGNmMWJjZmQ2OWNkZTg4ZDI1ZTkzM2YuLjc4NWM5M2ZjNTQ0
ZWM3ZDhjZWVlYmMxOTg5ZDA3ZmFkMjJiNTQ1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdDo6c19pbmZvID0g
eyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1h
dDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0KSB9OwogCiAvLyBXZSBkbyBub3Qg
dXNlIElDVURlbGV0ZXI8dWxpc3RmbXRfY2xvc2U+IGJlY2F1c2Ugd2UgZG8gbm90IHdhbnQgdG8g
aW5jbHVkZSB1bGlzdGZvcm1hdHRlci5oIGluIEludGxMaXN0Rm9ybWF0LmguCiAvLyB1bGlzdGZv
cm1hdHRlci5oIG5lZWRzIHRvIGJlIGluY2x1ZGVkIHdpdGggI3VuZGVmIFVfSElERV9EUkFGVF9B
UEksIGFuZCB3ZSB3b3VsZCBsaWtlIHRvIG1pbmltaXplIHRoaXMgZWZmZWN0IGluIEludGxMaXN0
Rm9ybWF0LmNwcC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWQwMDg0NTNmZmY2ZmY3YWQ3
M2JmNjk2OTZhNTI5NzQ1MTAwZWZhNS4uNjJmZjJkZTk0NWZiZDg0NGI5N2ZjZjYyYzk3MDlhMjdk
NmJjOTFiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExp
c3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvclN1cHBv
cnRlZExvY2FsZXNPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19p
bmZvLCAmbGlzdEZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRs
TGlzdEZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgJmxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50
bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIGxpc3RGb3JtYXRDb25zdHJ1Y3Rv
clRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlz
dEZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
TGlzdEZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggYmY3MzdhYzViYTRhYmUxMjFiZWM2MTVmODMw
ZjJiYjNjNjA2YjBiZi4uMjFhZWIwNTc2NTNmYzkzYTBhMzQ5YjcwM2JjNWM3MWViMTBkNjg1MyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0
Rm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihpbnRsTGlzdEZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGlvbnMp
OwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmbGlz
dEZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxM
aXN0Rm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQiX3MsICZCYXNlOjpzX2luZm8sICZs
aXN0Rm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bExpc3RGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBsaXN0Rm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5jcHAKaW5kZXggZmNjYWQzMTE4OWE4
YWQ3ZTAwMjQ5ZDQ5MjBjOWFhOGJjNjA0N2RhNS4uZWIzYmY5MmZjYzQ3NjQwNzRiZmUzMjQ1YTc1
ODE5N2QyNjY4OTA4MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bExvY2FsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExv
Y2FsZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsTG9jYWxlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07Citjb25z
dCBDbGFzc0luZm8gSW50bExvY2FsZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGUpIH07
CiAKIG5hbWVzcGFjZSBJbnRsTG9jYWxlSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKQEAgLTI1MSwyMSArMjUxLDIxIEBAIHZvaWQgSW50bExvY2FsZTo6
aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJp
bmcmIHRhCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgbGFuZ3VhZ2UgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bGFuZ3VhZ2UsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIGxhbmd1YWdlID0g
aW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMt
Pmxhbmd1YWdlLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwo
KSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWxh
bmd1YWdlLmlzTnVsbCgpICYmICFpc1VuaWNvZGVMYW5ndWFnZVN1YnRhZyhsYW5ndWFnZSkpIHsK
ICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJsYW5ndWFnZSBp
cyBub3QgYSB3ZWxsLWZvcm1lZCBsYW5ndWFnZSB2YWx1ZSJfcyk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmpl
Y3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBudWxscHRyLCBudWxs
cHRyKTsKKyAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3Qs
IG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51
bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHZvaWQoKSk7CiAgICAgaWYgKCFzY3JpcHQuaXNOdWxsKCkgJiYgIWlzVW5pY29kZVNjcmlw
dFN1YnRhZyhzY3JpcHQpKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAic2NyaXB0IGlzIG5vdCBhIHdlbGwtZm9ybWVkIHNjcmlwdCB2YWx1ZSJfcyk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9
LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgcmVnaW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnJlZ2lvbiwgeyB9LCBB
U0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFyZWdpb24uaXNOdWxsKCkgJiYg
IWlzVW5pY29kZVJlZ2lvblN1YnRhZyhyZWdpb24pKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAicmVnaW9uIGlzIG5vdCBhIHdlbGwtZm9ybWVkIHJlZ2lv
biB2YWx1ZSJfcyk7CkBAIC0yNzUsNyArMjc1LDcgQEAgdm9pZCBJbnRsTG9jYWxlOjppbml0aWFs
aXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgdGEK
ICAgICBpZiAoIWxhbmd1YWdlLmlzTnVsbCgpIHx8ICFzY3JpcHQuaXNOdWxsKCkgfHwgIXJlZ2lv
bi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQub3ZlcnJpZGVMYW5ndWFnZVNjcmlwdFJlZ2lv
bihsYW5ndWFnZSwgc2NyaXB0LCByZWdpb24pOwogCi0gICAgU3RyaW5nIGNhbGVuZGFyID0gaW50
bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNh
bGVuZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYWxlbmRhciA9IGlu
dGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5j
YWxlbmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYWxl
bmRhci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJU
eXBlKGNhbGVuZGFyKSkgewpAQCAtMjg1LDcgKzI4NSw3IEBAIHZvaWQgSW50bExvY2FsZTo6aW5p
dGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJpbmcm
IHRhCiAgICAgICAgIGxvY2FsZUlELnNldEtleXdvcmRWYWx1ZSgiY2FsZW5kYXIiX3MsIGNhbGVu
ZGFyKTsKICAgICB9CiAKLSAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihn
bG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjb2xsYXRpb24uaXNOdWxs
KCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShjb2xsYXRp
b24pKSB7CkBAIC0yOTUsMTIgKzI5NSwxMiBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVM
b2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGxhdGlvbiJfcywgY29sbGF0aW9uKTsK
ICAgICB9CiAKLSAgICBTdHJpbmcgaG91ckN5Y2xlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXJDeWNsZSwgeyAiaDExIiwgImgx
MiIsICJoMjMiLCAiaDI0IiB9LCAiaG91ckN5Y2xlIG11c3QgYmUgXCJoMTFcIiwgXCJoMTJcIiwg
XCJoMjNcIiwgb3IgXCJoMjRcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBob3VyQ3ljbGUgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
aG91ckN5Y2xlLCB7ICJoMTEiLCAiaDEyIiwgImgyMyIsICJoMjQiIH0sICJob3VyQ3ljbGUgbXVz
dCBiZSBcImgxMVwiLCBcImgxMlwiLCBcImgyM1wiLCBvciBcImgyNFwiIl9zLCBBU0NJSUxpdGVy
YWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAg
ICBpZiAoIWhvdXJDeWNsZS5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZh
bHVlKCJob3VycyJfcywgaG91ckN5Y2xlKTsKIAotICAgIFN0cmluZyBjYXNlRmlyc3QgPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2Fz
ZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJl
IGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIiwgbnVsbHB0cik7Cisg
ICAgU3RyaW5nIGNhc2VGaXJzdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRp
b25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsgInVwcGVyIiwgImxvd2VyIiwgImZh
bHNlIiB9LCAiY2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwidXBwZXJcIiwgXCJsb3dlclwiLCBv
ciBcImZhbHNlXCIiX3MsIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2FzZUZpcnN0LmlzTnVsbCgpKQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGNhc2VmaXJzdCJfcywgY2FzZUZpcnN0
KTsKQEAgLTMxMCw3ICszMTAsNyBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAgIGlmIChu
dW1lcmljICE9IFRyaVN0YXRlOjpJbmRldGVybWluYXRlKQogICAgICAgICBsb2NhbGVJRC5zZXRL
ZXl3b3JkVmFsdWUoImNvbG51bWVyaWMiX3MsIG51bWVyaWMgPT0gVHJpU3RhdGU6OlRydWUgPyAi
eWVzIiA6ICJubyIpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdP
cHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdT
eXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51bWJlcmluZ1N5c3Rl
bSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0
ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwog
ICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmlj
b2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzc2NTNiYjM3MTM5NTc3MjI2NWVhZWVjM2UxMTVkYjBmMThlYmJiYy4uMDkyZDhhNDRm
MjFlYWIxZjQ5NTIxOWJhNmQxZjdmYWQxNjBiZTQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoSW50bExvY2FsZUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIElu
dGxMb2NhbGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1Y3RvcikgfTsKIAogSW50bExvY2FsZUNvbnN0
cnVjdG9yKiBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBJbnRsTG9jYWxlUHJvdG90eXBlKiBsb2NhbGVQcm90b3R5cGUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUu
Y3BwCmluZGV4IDA5MGM5MjUzMjMxZDYyMzlmOTQ5ZDM4MjZiMGRmNjQ2NDI2MDkyOGYuLjMyZDIy
ODI0ZGVjNmVkYTVmYzRmYmZjZTAwNGRmN2U4ZTAyNmQ4ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCkBAIC01OSw3
ICs1OSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGludGxMb2NhbGVQcm90
b3R5cGVHZXR0ZXJXZWVrSW5mbyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bExvY2FsZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Mb2NhbGUiLCAmQmFzZTo6
c19pbmZvLCAmbG9jYWxlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bExvY2FsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxvY2FsZSJfcywgJkJhc2U6OnNfaW5mbywgJmxvY2Fs
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExvY2FsZVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGxvY2FsZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCmluZGV4IDk1M2MzOWZlNjRhOWU4NGQwYmI2
YzEwYzA0MmIwNzNhZjY5ZTM1NjkuLmNhMDQyNDk4NTAxZjI2ODA4N2Y0NDUxZWJmZWU3MjljYWVk
OTEzOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1i
ZXJGb3JtYXQuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVy
Rm9ybWF0KSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbyA9IHsg
Ik9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0KSB9OwogCiBuYW1lc3BhY2UgSW50bE51bWJlckZvcm1h
dEludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CkBAIC0z
MDQsNyArMzA0LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0Ojppbml0aWFsaXplTnVtYmVyRm9y
bWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmEKICAgICBMb2NhbGVNYXRjaGVy
IGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1hdGNoZXI+KGdsb2JhbE9iamVjdCwg
b3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0Y2hlciwgeyB7ICJsb29rdXAiX3Ms
IExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZpdCJfcywgTG9jYWxlTWF0Y2hlcjo6
QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUgZWl0aGVyIFwibG9va3VwXCIgb3Ig
XCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0KTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51
bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxs
KCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAg
IGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpA
QCAtMzI4LDcgKzMyOCw3IEBAIHZvaWQgSW50bE51bWJlckZvcm1hdDo6aW5pdGlhbGl6ZU51bWJl
ckZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhCiAgICAgbV9zdHlsZSA9
IGludGxPcHRpb248U3R5bGU+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+c3R5bGUsIHsgeyAiZGVjaW1hbCJfcywgU3R5bGU6OkRlY2ltYWwgfSwgeyAicGVyY2VudCJf
cywgU3R5bGU6OlBlcmNlbnQgfSwgeyAiY3VycmVuY3kiX3MsIFN0eWxlOjpDdXJyZW5jeSB9LCB7
ICJ1bml0Il9zLCBTdHlsZTo6VW5pdCB9IH0sICJzdHlsZSBtdXN0IGJlIGVpdGhlciBcImRlY2lt
YWxcIiwgXCJwZXJjZW50XCIsIFwiY3VycmVuY3lcIiwgb3IgXCJ1bml0XCIiX3MsIFN0eWxlOjpE
ZWNpbWFsKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAg
U3RyaW5nIGN1cnJlbmN5ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5jeSIpLCB7IH0sIG51bGxwdHIsIG51
bGxwdHIpOworICAgIFN0cmluZyBjdXJyZW5jeSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2Jq
ZWN0LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiY3VycmVuY3kiKSwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjdXJyZW5jeS5pc051bGwo
KSkgewogICAgICAgICBpZiAoIWlzV2VsbEZvcm1lZEN1cnJlbmN5Q29kZShjdXJyZW5jeSkpIHsK
QEAgLTM1NSw3ICszNTUsNyBAQCB2b2lkIEludGxOdW1iZXJGb3JtYXQ6OmluaXRpYWxpemVOdW1i
ZXJGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYQogICAgIG1fY3VycmVu
Y3lTaWduID0gaW50bE9wdGlvbjxDdXJyZW5jeVNpZ24+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
SWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImN1cnJlbmN5U2lnbiIpLCB7IHsgInN0YW5kYXJk
Il9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkIH0sIHsgImFjY291bnRpbmciX3MsIEN1cnJlbmN5
U2lnbjo6QWNjb3VudGluZyB9IH0sICJjdXJyZW5jeVNpZ24gbXVzdCBiZSBlaXRoZXIgXCJzdGFu
ZGFyZFwiIG9yIFwiYWNjb3VudGluZ1wiIl9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIHVuaXQg
PSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJv
bVN0cmluZyh2bSwgInVuaXQiKSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcg
dW5pdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCBJZGVudGlmaWVy
Ojpmcm9tU3RyaW5nKHZtLCAidW5pdCIpLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJ
SUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgp
KTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlbGxGb3JtZWRVbml0PiB3ZWxsRm9ybWVkVW5pdDsKICAg
ICBpZiAoIXVuaXQuaXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDQx
NjQwODk5N2MxOGY3Yzc2MjhmNzc1YjhkNDFkZjc3MjQyYTRkMTYuLjZiZmI4OTllYjlkMjgyNDEy
Y2UyODM1NTFiYjJiOTM0NThlMDE1NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAt
NDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsTnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxlcwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVyRm9ybWF0Q29uc3RydWN0b3JUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdENvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIG51bWJlckZvcm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKaW5kZXggOGRiMjk0MDhhZGZhYmNhMTgzNmQxOTBkOGNkMWI4ZTU1ODU5ZmFlYi4u
MDUxZmZlOGFiMzQ4Mjc2MTdiZjU1ODA4ZTM4OGZmNGE2YTg5YjQxYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bE51bWJlckZvcm1hdFByb3RvdHlwZUZ1bmNGb3JtYXRSYW5nZVRvUGFydHMKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZudW1iZXJG
b3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuTnVtYmVyRm9ybWF0Il9zLCAmQmFzZTo6c19pbmZv
LCAmbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsTnVt
YmVyRm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKaW5kZXgg
MDQ5YmMzOTQ2ODI1NmRlMzZmYmNkZGE4ZmEyNzIyMTliYjMxOGVmNC4uNWUxNzY5ZTNmNTlhZjkw
NThkZmFlOTJlNTc5NjBlZWJkOGZlMGExZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTE2OCw3ICsxNjgsNyBAQCBzdHJ1Y3QgTWF0Y2hlclJl
c3VsdCB7CiAgICAgc2l6ZV90IGV4dGVuc2lvbkluZGV4IHsgMCB9OwogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsgIkludGwiLCAmQmFzZTo6c19pbmZvLCAmaW50
bE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxPYmplY3QpIH07
Citjb25zdCBDbGFzc0luZm8gSW50bE9iamVjdDo6c19pbmZvID0geyAiSW50bCJfcywgJkJhc2U6
OnNfaW5mbywgJmludGxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsT2JqZWN0KSB9OwogCiB2b2lkIFVGaWVsZFBvc2l0aW9uSXRlcmF0b3JEZWxldGVyOjpvcGVy
YXRvcigpKFVGaWVsZFBvc2l0aW9uSXRlcmF0b3IqIGl0ZXJhdG9yKSBjb25zdAogewpAQCAtNTg4
LDcgKzU4OCw3IEBAIFRyaVN0YXRlIGludGxCb29sZWFuT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wCiAgICAgcmV0dXJuIHRyaVN0YXRl
KHZhbHVlLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKTsKIH0KIAotU3RyaW5nIGludGxTdHJpbmdP
cHRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3QqIG9wdGlvbnMsIFBy
b3BlcnR5TmFtZSBwcm9wZXJ0eSwgc3RkOjppbml0aWFsaXplcl9saXN0PGNvbnN0IGNoYXIqPiB2
YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBjaGFyKiBmYWxsYmFjaykKK1N0cmlu
ZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0
KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHksIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjaykKIHsKICAgICAvLyBHZXRPcHRpb24gKG9wdGlvbnMsIHByb3BlcnR5LCB0eXBlPSJz
dHJpbmciLCB2YWx1ZXMsIGZhbGxiYWNrKQogICAgIC8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8v
ZWNtYTQwMi8jc2VjLWdldG9wdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bE9iamVjdC5oCmluZGV4IDk4ZTliYjU4M2U1NWJiN2NmOTdiMGE4NTgxYzBiOGM2NWNmMWM5OTcu
LjM0MTE3NjQyMjhmYWI0ODIyYTZjYmU4MDZlODhlODYxZjM0MmZiOTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKQEAgLTEyMiw3ICsxMjIsNyBAQCBUaW1l
Wm9uZUlEIHV0Y1RpbWVab25lSURTbG93KCk7CiBDYWxlbmRhcklEIHV0Y1RpbWVab25lSUQoKTsK
IAogVHJpU3RhdGUgaW50bEJvb2xlYW5PcHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU09iamVjdCog
b3B0aW9ucywgUHJvcGVydHlOYW1lKTsKLVN0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFs
T2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgc3RkOjppbml0aWFsaXpl
cl9saXN0PGNvbnN0IGNoYXIqPiB2YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBj
aGFyKiBmYWxsYmFjayk7CitTdHJpbmcgaW50bFN0cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCos
IEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90Rm91bmQsIEFTQ0lJTGl0ZXJhbCBm
YWxsYmFjayk7CiB1bnNpZ25lZCBpbnRsTnVtYmVyT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNP
YmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgdW5zaWduZWQgbWluaW11bSwgdW5zaWduZWQg
bWF4aW11bSwgdW5zaWduZWQgZmFsbGJhY2spOwogdW5zaWduZWQgaW50bERlZmF1bHROdW1iZXJP
cHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIG1p
bmltdW0sIHVuc2lnbmVkIG1heGltdW0sIHVuc2lnbmVkIGZhbGxiYWNrKTsKIFZlY3RvcjxjaGFy
LCAzMj4gbG9jYWxlSURCdWZmZXJGb3JMYW5ndWFnZVRhZ1dpdGhOdWxsVGVybWluYXRvcihjb25z
dCBDU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUGx1cmFsUnVsZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzLmNwcAppbmRleCBhODUxMzExYzc0NGI1ZWFiMTY1YWM3ZjRkNTY3MTAwNmQ4NjY3
ODNlLi42OGVkZjE2M2JkNDc5ZmExODYxZTAyM2IyZDc3MjQ3ODNjNmRmZGViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlcy5jcHAKQEAgLTUy
LDcgKzUyLDcgQEAgdm9pZCBVUGx1cmFsUnVsZXNEZWxldGVyOjpvcGVyYXRvcigpKFVQbHVyYWxS
dWxlcyogcGx1cmFsUnVsZXMpCiAgICAgICAgIHVwbHJ1bGVzX2Nsb3NlKHBsdXJhbFJ1bGVzKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlczo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsUGx1cmFsUnVsZXMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzOjpzX2lu
Zm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzKSB9OwogCiB1c2luZyBVRW51bWVyYXRpb25E
ZWxldGVyID0gSUNVRGVsZXRlcjx1ZW51bV9jbG9zZT47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNw
cAppbmRleCA4MTJhYWEyMDAwZTMwYjllNmI5Y2Y3MzA1N2JlZDQ0NDAyMjc4ODE2Li4wMGVmYmE1
YzFkZWUyZDY5MjQ0YjJiYTBhNWE0YWUxODU4MzI5NDlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3Iu
Y3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGlu
dGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsZXNPCiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnBsdXJhbFJ1
bGVzQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1
cmFsUnVsZXNDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXND
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sICZwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBwbHVyYWxSdWxlc0NvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwCmluZGV4IDYyYzA4YmY5NTdhMTMyZjEyZDZk
NGJmYjJkODFjZGIwOThkM2E1OTEuLjJiNGU5NTZjODU0NTlmNTQ1YTIwYzJmMmQ3OTE2YmVkNjUx
Yzk4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVy
YWxSdWxlc1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUGx1cmFsUnVsZXNQcm90b3R5cGVGdW5jUmVzb2x2
ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUGx1
cmFsUnVsZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUGx1cmFsUnVsZXMiLCAmQmFzZTo6
c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50
bFBsdXJhbFJ1bGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlBsdXJhbFJ1bGVzIl9zLCAm
QmFzZTo6c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBm
b3IgSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcGx1cmFsUnVsZXNQcm90
b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcAppbmRleCBlMzI4YTFjMWY0MGM0OWU2OTU0NTFhNTNk
Mjk5ZTUyMzE3YjlkNzU2Li45NWM0M2FmNzdlNzc5OWMyZWFiMzNlNzRmZTBhMTMxYzUwYTU2NjZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVU
aW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVs
YXRpdmVUaW1lRm9ybWF0LmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXQ6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkg
fTsKIAogbmFtZXNwYWNlIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRJbnRlcm5hbCB7CiB9CkBAIC05
Niw3ICs5Niw3IEBAIHZvaWQgSW50bFJlbGF0aXZlVGltZUZvcm1hdDo6aW5pdGlhbGl6ZVJlbGF0
aXZlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgTG9jYWxlTWF0Y2hlciBs
b2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVyPihnbG9iYWxPYmplY3QsIG9w
dGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsgeyAibG9va3VwIl9zLCBM
b2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3MsIExvY2FsZU1hdGNoZXI6OkJl
c3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwi
YmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBudW1i
ZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
dm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAgICAgICBp
ZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IGE4MjVjMzY2NzEzYzE0NDkw
Y2I2ZGRlYjQ1NzZkYmQ1NTZjZjM2NjQuLmQ2N2VjZjI1ZTg3NjMwODQyZTBjNmE0NThlZjM5MmMx
YTJlODI2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxS
ZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAtNDQs
NyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUmVsYXRpdmVU
aW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVsYXRpdmVUaW1l
Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
UmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFJl
bGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJklu
dGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggZDQ3OTQ1YWQ2YTk3MmFmZmY1
ZTYzOGJhZDk0ZTQyZTA5Zjk5ZTMyMS4uYWZiNDBhN2M3NzM1ZDc0OWQzNDNhYmVkODQyOWI1Zjhm
YjFmMjNmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJl
bGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTQyLDcgKzQy
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFJlbGF0aXZlVGltZUZv
cm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGkKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlJlbGF0aXZlVGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZyZWxhdGl2ZVRpbWVGb3Jt
YXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuUmVsYXRpdmVUaW1lRm9ybWF0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKaW5kZXgg
YTVjZDAzYmU4YmQwOGRlZjExZjYwNGZkNWNlZTc2NTBkMDFhMDE5ZC4uMDE2YTFjMzIyNjk2YTY3
NWIwZmFkNGQ5YmZlOWQyMGU4ZDUyMzQxNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudEl0ZXJhdG9y
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSW50bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRl
cmF0b3IpIH07CiAKIEludGxTZWdtZW50SXRlcmF0b3IqIEludGxTZWdtZW50SXRlcmF0b3I6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFr
SXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4mJiBzZWdtZW50ZXIsIEJveDxWZWN0b3I8
VUNoYXI+PiBidWZmZXIsIEpTU3RyaW5nKiBzdHJpbmcsIEludGxTZWdtZW50ZXI6OkdyYW51bGFy
aXR5IGdyYW51bGFyaXR5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwN2Mw
NWNiYzBiY2FlOWMyNWEzZjNjYjAxMWVjMzJhZDhjNTYzMzI1Li41NTljNThjMzQ0YmI4MzliNGY0
NDk5MzIxYTFhMDk4ODYyMDkwODZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAt
MzksNyArMzksNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVu
dEl0ZXJhdG9yUHJvdG90eXBlRnVuY05leHQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNlZ21l
bnQgU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0
b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiU2VnbWVudCBTdHJpbmcgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sICZzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50SXRlcmF0
b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFNlZ21lbnRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmNwcAppbmRleCA4ZDg1ZmU3YzljYzJlNjBjZmU2YjIyMzgzMzQ5N2RkZjliNGY3
Y2IzLi4zZmRhMDVkMjkwNzkwNTg0N2EwYThmMWYxMjVkNDBjODFlNWQxZmMzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcApAQCAtMzQsNyAr
MzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50
ZXI6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsU2VnbWVudGVyOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikgfTsKIAogSW50
bFNlZ21lbnRlciogSW50bFNlZ21lbnRlcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcAppbmRleCAyNTkwNjEwNTBjZWNiYmFlZDljYTQx
MmM0NjA3MTE3OTA5NWU5ZDA0Li5mMWQxZWM0MWQ4YmI2OTM1ODU1MjM0ZDkzMjY5N2UzNGFlMTIy
MjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRlckNvbnN0cnVjdG9yU3VwcG9ydGVkTG9j
YWxlc09mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnNl
Z21lbnRlckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFNlZ21lbnRlckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZzZWdt
ZW50ZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50ZXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IubHV0LmgKIEBiZWdpbiBzZWdtZW50ZXJDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5
cGUuY3BwCmluZGV4IDY2YTVjYzNhOTdlZGY2OThiYmI5YTFlMjMxNmUwYzFmYzk5YTllNWEuLmJi
ZTA5NDdhZGMzZmQyZTcwOWVjNjk2OTJhMDU3MzUwOTNkNjg4NTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3Bw
CkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxT
ZWdtZW50ZXJQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlNlZ21lbnRlciIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50ZXJQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudGVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
U2VnbWVudGVyIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVyUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlclByb3RvdHlwZSkgfTsKIAog
LyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2VnbWVu
dGVyUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudHMuY3BwCmluZGV4IDhkZTM0YTMwNGVkZTAzZTBiODRiMjBjMjgwMTEzNDQxOTk2YWI0
ZjguLjUxNWU1OTUyNjUzNmU3ZDVmZWMxMGNjNTUyYTk2MGJkZDc5MmRiOWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMzcsNyArMzcs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50czo6
c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHMpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNl
Z21lbnRzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRzKSB9OwogCiBJbnRsU2VnbWVu
dHMqIEludGxTZWdtZW50czo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHN0
ZDo6dW5pcXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPiYmIHNl
Z21lbnRlciwgQm94PFZlY3RvcjxVQ2hhcj4+JiYgYnVmZmVyLCBKU1N0cmluZyogc3RyaW5nLCBJ
bnRsU2VnbWVudGVyOjpHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCmlu
ZGV4IDUzZTNlY2YwMmZmODRhMjkzNjljNTQ5YTY2ZDA3ODk2ZTVlZjZkZDcuLjBjZTU1Y2RjMGYx
ZjEwNjkxZTllZmIzN2U2MjMxMGJmYWY5ZGFmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcApAQCAtNDAsNyAr
NDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVudHNQcm90
b3R5cGVGdW5jSXRlcmF0b3IpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEludGxTZWdtZW50c1Byb3RvdHlwZTo6c19pbmZvID0geyAiJVNlZ21lbnRzJSIsICZCYXNlOjpz
X2luZm8sICZzZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxTZWdtZW50c1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVu
dHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdtZW50cyUiX3MsICZCYXNlOjpzX2luZm8sICZz
ZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxT
ZWdtZW50c1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudHNQcm90b3R5
cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50c1Byb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMDkyYmE1
NTU5ZDVmYzJkNTllYjFkYzZiNDc0ZTNjZTk3MWFkMTA5YS4uYTIxZWVkM2IzODk2MmZjN2VjOGI2
NGM4ZWY3ZDllYzVkOWI1YmUxYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2
b2lkIEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0FycmF5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJy
YXkuY3BwCmluZGV4IDMxNzk4NWZmZWQ2YWViM2U4ODU5Mzg0MzAyMDNlYzliYTQzZDBjYzAuLjRh
ODQwZWVkNmRlMWQ3NTM1ZDY5YWY1ODljMzllOTk1ZmY4NjVhODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCkBAIC0zNiw3ICszNiw3IEBAIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBMZW5ndGhFeGNlZWRlZFRoZU1heGltdW1BcnJheUxlbmd0aEVycm9yIHsgIkxlbmd0
aCBleGNlZWRlZCB0CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShK
U0FycmF5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9IHsiQXJyYXkiLCAm
SlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQXJyYXkpfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FycmF5OjpzX2luZm8gPSB7ICJB
cnJheSJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FycmF5KSB9OwogCiBKU0FycmF5KiBKU0FycmF5Ojp0cnlDcmVh
dGVVbmluaXRpYWxpemVkUmVzdHJpY3RlZChPYmplY3RJbml0aWFsaXphdGlvblNjb3BlJiBzY29w
ZSwgR0NEZWZlcnJhbENvbnRleHQqIGRlZmVycmFsQ29udGV4dCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIHVuc2lnbmVkIGluaXRpYWxMZW5ndGgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCmluZGV4IGRhNmQxZGNlYjIxZTdjMGQ3ZmFkNDc0
YmE1MTA5OGMxM2NhNjczNTYuLjlmOGU0MmRiNjYxNDEzNzZhYjQ5Yjc1NDllNDc3OGY4OGUxYTI3
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIu
Y3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUJ1ZmZlcjo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZl
cil9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXI6OnNfaW5mbyA9IHsgIkFycmF5QnVm
ZmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXlCdWZmZXIpIH07CiAKIEpTQXJyYXlCdWZmZXI6OkpTQXJyYXlCdWZmZXIoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPEFycmF5QnVmZmVyPiYmIGFycmF5QnVm
ZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
YjkyY2UxNTczYzBjOTUxYjkwYjFiOTE5NzA1NmExMTU2OTE5YjZmYS4uMzhmMmFkZWNmOGQwNDE0
ZTc5MjljYjYzMDc0NDI1ZTY0NDM1Yzg5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCkBAIC00MSwx
MyArNDEsMTMgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0U2hh
cmVkQXJyYXlCdWZmZXIpOwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1
ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyQ29u
c3RydWN0b3IpCiB9OwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSlNTaGFyZWRBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZEFycmF5
QnVmZmVyQ29uc3RydWN0b3IpCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCmluZGV4IGNmYTA4Y2JlZjUx
ZjExNTgxOTY5NTVkMDUyNzFmNjc2MjFlYmU4YzUuLjE5MGJlZjExMmNjNWRiOTEwODExYmNlYjhj
NDA0ZTQyN2MyOTIwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCkBAIC05OCw3ICs5OCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU0FycmF5
QnVmZmVyKj4gc3BlY2llc0NvCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgc3BlY2llcy52YWx1ZSgpLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBn
ZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiBuZXdPYmplY3QgPSBjb25z
dHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLnZhbHVlKCksIGFyZ3MsICJTcGVjaWVzIGNvbnN0
cnVjdGlvbiBkaWQgbm90IGdldCBhIHZhbGlkIGNvbnN0cnVjdG9yIl9zKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCBlcnJvclJlc3VsdCk7CiAKICAgICAvLyAxNy4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QobmV3LCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KQEAgLTI1Nyw3
ICsyNTcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc2hhcmVkQXJyYXlCdWZmZXJQcm90
b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYgogfQogCiBjb25zdCBDbGFzc0luZm8g
SlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZSkKKyAgICAiQXJyYXlCdWZmZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclByb3RvdHlw
ZSkKIH07CiAKIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OkpTQXJyYXlCdWZmZXJQcm90b3R5cGUo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcAppbmRleCA5MTliMzE1OWNjMzc2MDQ1
ZDlhYjk2YTNiZTYyZTBhYWQyMjZiZTYyLi42ZjhkNWFkMGM5MzRhZWIyNTM5NDBjYjdhZThlZTBi
YzBiZDk0YmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Fy
cmF5QnVmZmVyVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
cnJheUJ1ZmZlclZpZXcuY3BwCkBAIC0zNyw3ICszNyw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJWaWV3OjpzX2luZm8gPSB7Ci0gICAgIkFycmF5
QnVmZmVyVmlldyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZpZXcpCisgICAgIkFycmF5QnVmZmVyVmlldyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5
QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlCdWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0
OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5kZXggMWNhMjUxNDZkYTIxNTUwZDczMzQ4OWYzMGIz
MWQ1NGM2MDc4YTA4Yi4uYTI0MWFmODA5NTg3Y2RmZmZmYzBlZTU4ZDliZDhjZTcxMWQ2MmI2NyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5SXRlcmF0b3Iu
Y3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5SXRlcmF0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQXJyYXlJdGVyYXRvcikgfTsKIAogSlNBcnJheUl0ZXJhdG9yKiBKU0FycmF5
SXRlcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCog
aXRlcmF0ZWRPYmplY3QsIEpTVmFsdWUga2luZCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwCmluZGV4IDkwODU3ZjRiOGM1NTc1MTA4
OGUyODIyOWU0ZmFjNmUyYmU5MzFlMGEuLjVjMGMzMjlhNDU0OTIwNTE5ZmYyZmI1YTA0ZGMzYWRh
MzhhNDcxZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3lu
Y0Z1bmN0aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTQXN5bmNGdW5jdGlvbjo6c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiIs
ICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
QXN5bmNGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jRnVuY3Rpb246OnNfaW5m
byA9IHsgIkFzeW5jRnVuY3Rpb24iX3MsICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNGdW5jdGlvbikgfTsKIAogSlNBc3luY0Z1bmN0
aW9uOjpKU0FzeW5jRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFi
bGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0s
IGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCmluZGV4IGVkNTA2ZWVlMTVmOTM4ZTI1
MTQ0YWY0NzI2YmNhMjljNDQxZTk0ODIuLmZjZjFkOTJlMTAzNzVkZTQzNmQ2MGNhOGM3ZTEwZjRl
ZWM1MDQ4ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQXN5bmNHZW5lcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6
c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvcikgfTsKIAogSlNBc3lu
Y0dlbmVyYXRvciogSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcAppbmRleCA0YjAwMjVjNTQ0YzU5OTFkNDhh
NDg0YWJjZGJmNDliN2I1Njg0YTkyLi4zNDJiYWFjMDczMTg5NjQ1NjgzNmE5NjdhMTM0YWJhMWJm
NDg2ZGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3JGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9
IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uKSB9
OwogCiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbihW
TSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmln
SW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmlnSW50LmNwcAppbmRl
eCAwM2Q5NDQwYmE1ZDBlNzhiZDMxNzFkZjczYzYyMjljMzI1ZjE0MzJkLi44OWQ3YmNlZWE5NTk2
NTc1ZTJkOTcyZTFjNmNhNDhhNjhlYmRlOWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCaWdJbnQuY3BwCkBAIC02MCw3ICs2MCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCIsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCaWdJbnQpIH07Citjb25z
dCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JpZ0ludCkgfTsKIAogSlNCaWdJ
bnQ6OkpTQmlnSW50KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIERpZ2l0KiBkYXRhLCB1
bnNpZ25lZCBsZW5ndGgpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBAIC0yNDU5LDcgKzI0
NTksNyBAQCBKU1ZhbHVlIEpTQmlnSW50OjpwYXJzZUludChKU0dsb2JhbE9iamVjdCogbnVsbE9y
R2xvYmFsT2JqZWN0Rm9yT09NLCBWTSYgdm0sIENoYQogICAgICAgICBBU1NFUlQobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NKTsKICAgICAgICAgaWYgKGVycm9yUGFyc2VNb2RlID09IEVycm9yUGFy
c2VNb2RlOjpUaHJvd0V4Y2VwdGlvbnMpIHsKICAgICAgICAgICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9i
YWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmpl
Y3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRvIEJpZ0ludCIpKTsKKyAgICAgICAg
ICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVT
eW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3Ry
aW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBKU1ZhbHVlKCk7
CiAgICAgfQpAQCAtMjU3Niw3ICsyNTc2LDcgQEAgSlNWYWx1ZSBKU0JpZ0ludDo6cGFyc2VJbnQo
SlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgVk0mIHZtLCBDaGEKICAg
ICAgICAgICAgICAgICBpZiAoZXJyb3JQYXJzZU1vZGUgPT0gRXJyb3JQYXJzZU1vZGU6OlRocm93
RXhjZXB0aW9ucykgewogICAgICAgICAgICAgICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9U
SFJPV19TQ09QRSh2bSk7CiAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChudWxsT3JHbG9iYWxP
YmplY3RGb3JPT00pOwotICAgICAgICAgICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xv
YmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2Jq
ZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiKSk7CisgICAgICAg
ICAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3Bl
LCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8g
cGFyc2UgU3RyaW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICByZXR1cm4gSlNWYWx1ZSgpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKaW5kZXggYzdhMTY3OTU1
M2UwODEzMjU0NTA2NGE1MjVlOTFhMDRiMDdkNGJjOC4uMWVlODExZTBkNWY5ZWQzN2EzZDY5MGZl
YWZhOGUzMzgyYWZhYmIwNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNCb3VuZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0JvdW5kRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNCb3VuZEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNCb3VuZEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNCb3VuZEZ1bmN0aW9uKSB9OwogCiBKU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oYm91bmRUaGlzTm9BcmdzRnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwCmluZGV4IGQ1NDcyZTYwNjA2NzNkYjk0ODRmYmVjNWRi
NjY4YzIyMjBiYzZiMWIuLjNkMjEzYWViYzRjZWIwNTJlYzgxMThlYjFhNDNiYWZhM2U3ZDdiYTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NhbGxlZS5jcHAKQEAgLTMwLDcg
KzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxlZTo6
c19pbmZvID0geyAiQ2FsbGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGVlKSB9OwogCiBKU0NhbGxlZTo6SlNDYWxsZWUoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NlbGwuY3BwCmluZGV4IDYzOTQyODY3YTEzMGZlNmM1ZmUwMThlNzQ0ZjE0ZDYxMTlkYjRjMmEu
LjE2NTU0NDhjODliYjllM2Q4MjJjZWExZjQxNmI1ZDZhOGI4YTc5N2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtNDgsNyArNDgsNyBAQCB2b2lkIEpTQ2Vs
bDo6ZHVtcChQcmludFN0cmVhbSYgb3V0KSBjb25zdAogCiB2b2lkIEpTQ2VsbDo6ZHVtcFRvU3Ry
ZWFtKGNvbnN0IEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKLSAgICBvdXQucHJp
bnRmKCI8JXAsICVzPiIsIGNlbGwsIGNlbGwtPmNsYXNzTmFtZShjZWxsLT52bSgpKSk7CisgICAg
b3V0LnByaW50ZigiPCVwLCAlcz4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUoY2VsbC0+dm0oKSku
Y2hhcmFjdGVycygpKTsKIH0KIAogc2l6ZV90IEpTQ2VsbDo6ZXN0aW1hdGVkU2l6ZUluQnl0ZXMo
Vk0mIHZtKSBjb25zdApAQCAtMjEwLDcgKzIxMCw3IEBAIHZvaWQgSlNDZWxsOjpnZXRPd25TcGVj
aWFsUHJvcGVydHlOYW1lcyhKU09iamVjdCosIEpTR2xvYmFsT2JqZWN0KiwgUHJvcGVydHlOYW1l
CiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotY29uc3QgY2hhciogSlND
ZWxsOjpjbGFzc05hbWUoVk0mIHZtKSBjb25zdAorQVNDSUlMaXRlcmFsIEpTQ2VsbDo6Y2xhc3NO
YW1lKFZNJiB2bSkgY29uc3QKIHsKICAgICByZXR1cm4gY2xhc3NJbmZvKHZtKS0+Y2xhc3NOYW1l
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAppbmRleCA3Yzg4ODM0Mzky
YjAxNjQzYTFjNTg3ODBkZGVkOTVmNmM0MjViM2ZiLi5kZjA2OTc3NzFhZGNmNjViM2VmMWI3ZGNm
NDFkMTk4MjM2M2NkMzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaApA
QCAtMTM5LDcgKzEzOSw3IEBAIHB1YmxpYzoKIAogICAgIFR5cGVJbmZvOjpJbmxpbmVUeXBlRmxh
Z3MgaW5saW5lVHlwZUZsYWdzKCkgY29uc3QgeyByZXR1cm4gbV9mbGFnczsgfQogICAgIAotICAg
IGNvbnN0IGNoYXIqIGNsYXNzTmFtZShWTSYpIGNvbnN0OworICAgIEFTQ0lJTGl0ZXJhbCBjbGFz
c05hbWUoVk0mKSBjb25zdDsKIAogICAgIC8vIEV4dHJhY3RpbmcgdGhlIHZhbHVlLgogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgZ2V0U3RyaW5nKEpTR2xvYmFsT2JqZWN0KiwgU3RyaW5nJikg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3Rv
bUdldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3Vz
dG9tR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IDhiOGE0MWY0YzhiZmUwODQ1OWFlYTJhY2VkNzAy
OGVhYmEwYTY1YmEuLmZmZTZiZmQzNTI3NjQyNjE2ZmQ5MWY3NjM3N2Q2ODZhMGIwNjQ4MzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVu
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0
dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0
ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21HZXR0ZXJGdW5jdGlvbikg
fTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbUdldHRlckZ1bmN0aW9u
Q2FsbCk7CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21HZXR0ZXJGdW5jdGlvbkNh
bGwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRl
ckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0
dGVyRnVuY3Rpb24uY3BwCmluZGV4IDM5ZTI3MDI5OTBhYTExNTU3MTliNjlkMWJhZmNkNzg0NjA0
MjdlN2UuLjg2MjgxODU3OGYwOTFlZDc0NzViMDgwMTFhYWY4ZTgwODM3MDI0YzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVuY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVu
Y3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3Vz
dG9tU2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5j
dGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21TZXR0ZXJGdW5jdGlvbikgfTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3RvbVNldHRlckZ1bmN0aW9uQ2FsbCk7
CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21TZXR0ZXJGdW5jdGlvbkNhbGwsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwCmluZGV4IGFiYTY4OGRl
NDg3MWY4NGM2MjUxYjc4ZjBiODNjZDYyODY2NzFkMjMuLjlhNDM1Y2M5Y2IyZTFhYjMwMTk0MzVh
ZDZkZDAzMjhkMzRjZGFiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTRGF0YVZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
RGF0YVZpZXcuY3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmll
dyl9OworY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXc6OnNfaW5mbyA9IHsgIkRhdGFWaWV3Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RGF0YVZpZXcpIH07CiAKIEpTRGF0YVZpZXc6OkpTRGF0YVZpZXcoVk0mIHZtLCBDb25zdHJ1Y3Rp
b25Db250ZXh0JiBjb250ZXh0LCBBcnJheUJ1ZmZlciogYnVmZmVyKQogICAgIDogQmFzZSh2bSwg
Y29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRh
Vmlld1Byb3RvdHlwZS5jcHAKaW5kZXggZTk4Yzc4YWJhYmY5ODMxY2ZmMDY1YzFiZTkwMmJmYWM4
MGEwNmQyYS4uMzhjY2ZhZTYzNTAwYmQwM2JmNGQyZWZkYWRmZTFkNWI2NmE0Y2YzMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlw
ZS5jcHAKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIo
ZGF0YVZpZXdQcm90b0dldHRlckJ5dGVPZmZzZXQpOwogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0
IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7Ci0gICAgIkRhdGFWaWV3
IiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51bGxwdHIsCisgICAgIkRhdGFWaWV3
Il9zLCAmQmFzZTo6c19pbmZvLCAmZGF0YVZpZXdUYWJsZSwgbnVsbHB0ciwKICAgICBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRGF0YVZpZXdQcm90b3R5cGUpCiB9OwogCkBAIC0yMzAsNyArMjMwLDcg
QEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCdWZmZXIsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5
bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8dGhpc3wgdG8g
YmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZmZXIgZXhwZWN0cyB8
dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUodmlldy0+cG9zc2libHlTaGFyZWRKU0J1ZmZlcihn
bG9iYWxPYmplY3QpKSk7CiB9CkBAIC0yNDIsNyArMjQyLDcgQEAgSlNDX0RFRklORV9DVVNUT01f
R0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE8KIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcq
Pih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghdmlldykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3
LnByb3RvdHlwZS5ieXRlTGVuZ3RoIGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2Jq
ZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZUxlbmd0aCBleHBlY3RzIHx0aGlzfCB0byBiZSBh
IERhdGFWaWV3IG9iamVjdCJfcyk7CiAgICAgaWYgKHZpZXctPmlzRGV0YWNoZWQoKSkKICAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVuZGVybHlp
bmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNoZWQgZnJvbSB0aGUgdmlldyJfcyk7CiAKQEAg
LTI1Niw3ICsyNTYsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIoZGF0YVZpZXdQcm90b0dl
dHRlckJ5dGVPZmZzZXQsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwogCiAgICAgSlNEYXRhVmll
dyogdmlldyA9IGpzRHluYW1pY0Nhc3Q8SlNEYXRhVmlldyo+KHZtLCBKU1ZhbHVlOjpkZWNvZGUo
dGhpc1ZhbHVlKSk7CiAgICAgaWYgKCF2aWV3KQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0YVZpZXcucHJvdG90eXBlLmJ5dGVPZmZzZXQg
ZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlw
ZS5ieXRlT2Zmc2V0IGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Il9zKTsK
ICAgICBpZiAodmlldy0+aXNEZXRhY2hlZCgpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiVW5kZXJseWluZyBBcnJheUJ1ZmZlciBoYXMgYmVl
biBkZXRhY2hlZCBmcm9tIHRoZSB2aWV3Il9zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAppbmRleCBkZjc4
ODkyYmExMjljZDViNWYwZWFkZWIyZmIxNWRjZTk1MTkwNGE2Li40YThjZDQ5Yjc2OGRhYjExNDJh
YzE3MGJjZjk5Nzk0NGZjZGY5MDhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcApAQCAtMzMsNyArMzMsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVn
aXN0cnk6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsaXphdGlvblJlZ2lz
dHJ5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnNfaW5mbyA9
IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxpemF0aW9uUmVnaXN0cnkpIH07CiAKIFN0
cnVjdHVyZSogSlNGaW5hbGl6YXRpb25SZWdpc3RyeTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CkBAIC0x
NjksNyArMTY5LDcgQEAgdm9pZCBKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5OjpydW5GaW5hbGl6YXRp
b25DbGVhbnVwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QKICAgICB3aGlsZSAoSlNWYWx1
ZSB2YWx1ZSA9IHRha2VEZWFkSG9sZGluZ3NWYWx1ZSgpKSB7CiAgICAgICAgIE1hcmtlZEFyZ3Vt
ZW50QnVmZmVyIGFyZ3M7CiAgICAgICAgIGFyZ3MuYXBwZW5kKHZhbHVlKTsKLSAgICAgICAgY2Fs
bChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUgdmlz
aWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciKTsKKyAgICAgICAg
Y2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJUaGlzIHNob3VsZCBub3QgYmUg
dmlzaWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndlYmtpdC5vcmciX3MpOwogICAg
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIH0KIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggZDkzN2IzNmIz
MDQ1NzQ0MGNlYThiZWE1MThkMTk4MTlhNjRhOWQ1Yy4uYTM3NmFmNWVlYTBkZTZiNTE3MGM0ZmI0
NDczNzMwZDI1ODMzMWM1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAKQEAgLTUzLDEwICs1MywxMCBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y2FsbEhvc3RGdW5jdGlvbkFzQ29uc3RydWN0b3IsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwog
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlTm90QUNv
bnN0cnVjdG9yRXJyb3IoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUtPmpzQ2FsbGVlKCkpKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1bmN0
aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmljdEZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU2xvcHB5RnVuY3Rp
b246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nsb3BweUZ1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJ
bmZvIEpTQXJyb3dGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dGdW5jdGlvbikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Z1
bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTU3RyaWN0RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNTbG9wcHlG
dW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTbG9wcHlGdW5jdGlvbikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0Fycm93RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyb3dG
dW5jdGlvbikgfTsKIAogYm9vbCBKU0Z1bmN0aW9uOjppc0hvc3RGdW5jdGlvbk5vbklubGluZSgp
IGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvci5j
cHAKaW5kZXggMTU2MmFjMjYyYmQ4MDExMDYxNGRlNDlkYjM5ZGU2YjgxOGRkOGZjYS4uMjRmYmRm
NjNhNjQzMzcwM2YwNWFlMWFkZGZjNDA0NGQwY2NkOTVlOSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2luZm8gPSB7ICJH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTR2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yOjpzX2lu
Zm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNHZW5lcmF0b3IpIH07CiAKIEpTR2VuZXJhdG9yKiBKU0dlbmVy
YXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCmlu
ZGV4IDA2YWUwNTE4YWIxOTBhNDNhMTM5NmU4MGM5M2RkMTZkMDBlYTI2YjguLmE2OTU0NjM2YWJl
NGExODU5ZGVmM2NjZmEyOTk3MTVhYTJkNjc5MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5j
dGlvbjo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yRnVuY3Rpb24pIH07
Citjb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5jdGlvbjo6c19pbmZvID0geyAiR2VuZXJh
dG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNHZW5lcmF0b3JGdW5jdGlvbikgfTsKIAogSlNHZW5lcmF0b3JGdW5jdGlv
bjo6SlNHZW5lcmF0b3JGdW5jdGlvbihWTSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0
YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2
bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVz
LmgKaW5kZXggZDMyYTJiMGMwYzAzYjNjMjliYjhlNWZlOTRjM2MwN2VmYmQ4YjU3MC4uMTRhNmNm
MzlhZGI1OTQyYWE5MDFmZDVjYWUwZjNjNWNjMjRiOWFlNCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVzLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdJ
bmxpbmVzLmgKQEAgLTEwNiwxMSArMTA2LDExIEBAIEpTR2VuZXJpY1R5cGVkQXJyYXlWaWV3PEFk
YXB0b3I+KiBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKAogICAgIHNp
emVfdCBlbGVtZW50U2l6ZSA9IHNpemVvZih0eXBlbmFtZSBBZGFwdG9yOjpUeXBlKTsKICAgICBB
U1NFUlQoYnVmZmVyKTsKICAgICBpZiAoIUFycmF5QnVmZmVyVmlldzo6dmVyaWZ5U3ViUmFuZ2VM
ZW5ndGgoKmJ1ZmZlciwgYnl0ZU9mZnNldCwgbGVuZ3RoLCBlbGVtZW50U2l6ZSkpIHsKLSAgICAg
ICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihn
bG9iYWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciIpKTsKKyAgICAgICAg
dGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9i
YWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1ZmZlciJfcykpOwogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgICAgaWYgKCFBcnJheUJ1ZmZlclZpZXc6OnZlcmlmeUJ5
dGVPZmZzZXRBbGlnbm1lbnQoYnl0ZU9mZnNldCwgZWxlbWVudFNpemUpKSB7Ci0gICAgICAgIHRo
cm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFs
T2JqZWN0LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiKSk7CisgICAgICAgIHRocm93RXhj
ZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogICAgIENvbnN0cnVjdGlvbkNvbnRleHQgY29udGV4dCh2bSwgc3RydWN0dXJl
LCBXVEZNb3ZlKGJ1ZmZlciksIGJ5dGVPZmZzZXQsIGxlbmd0aCk7CkBAIC0xNTIsNyArMTUyLDcg
QEAgYm9vbCBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6dmFsaWRhdGVSYW5nZSgK
ICAgICBpZiAoY2FuQWNjZXNzUmFuZ2VRdWlja2x5KG9mZnNldCwgbGVuZ3RoKSkKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgCi0gICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJSYW5nZSBjb25zaXN0aW5nIG9mIG9m
ZnNldCBhbmQgbGVuZ3RoIGFyZSBvdXQgb2YgYm91bmRzIikpOworICAgIHRocm93RXhjZXB0aW9u
KGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmFu
Z2UgY29uc2lzdGluZyBvZiBvZmZzZXQgYW5kIGxlbmd0aCBhcmUgb3V0IG9mIGJvdW5kcyJfcykp
OwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJv
dG90eXBlRnVuY3Rpb25zLmgKaW5kZXggZGYwNDM1ZjZlMzc5ODA2MWQ5ZjZjY2M2ZDc1OWRmZTY2
YmQ2ZDlmYS4uYjk0ZWIzZmIyMjZjNTAwMDVjYzgxYjU5OWQ2NjU1ZmRmOGJkODlmMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZp
ZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCkBAIC02Niw3ICs2
Niw3IEBAIGlubGluZSBKU0FycmF5QnVmZmVyVmlldyogc3BlY2llc0NvbnN0cnVjdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjCiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVS
TihzY29wZSwgZGVmYXVsdENvbnN0cnVjdG9yKCkpOwogCiAKLSAgICBKU1ZhbHVlIHJlc3VsdCA9
IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBh
IGNvbnN0cnVjdG9yIik7CisgICAgSlNWYWx1ZSByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2Jq
ZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciJfcyk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKICAgICBpZiAoSlNBcnJh
eUJ1ZmZlclZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXJWaWV3Kj4odm0s
IHJlc3VsdCkpIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBBTFdBWVNfSU5MSU5FIEVuY29kZWRKU1Zh
bHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldChWTSYgdm0sIEpTR2xvYmFsTwog
ICAgICAgICBkb3VibGUgb2Zmc2V0TnVtYmVyID0gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVu
dCgxKS50b0ludGVnZXJPckluZmluaXR5KGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoVU5MSUtF
TFkob2Zmc2V0TnVtYmVyIDwgMCkpCi0gICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIl9zKTsKICAgICAgICAgaWYgKG9mZnNl
dE51bWJlciA8PSBtYXhTYWZlSW50ZWdlcigpICYmIG9mZnNldE51bWJlciA8PSBzdGF0aWNfY2Fz
dDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8c2l6ZV90Pjo6bWF4KCkpKQogICAgICAgICAg
ICAgb2Zmc2V0ID0gb2Zmc2V0TnVtYmVyOwogICAgICAgICBlbHNlCkBAIC02MjUsNyArNjI1LDcg
QEAgQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcml2
YXRlRnVuY1N1YmFycmF5Q3JlYXRlKFZNJgogICAgIGFyZ3MuYXBwZW5kKGpzTnVtYmVyKGxlbmd0
aCkpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwogCi0gICAgSlNPYmplY3Qq
IHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVz
IGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBhIGNvbnN0cnVj
dG9yIl9zKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgSlNB
cnJheUJ1ZmZlclZpZXcqIHZhbGlkYXRlZCA9IHZhbGlkYXRlVHlwZWRBcnJheShnbG9iYWxPYmpl
Y3QsIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXggOWE4MWM5NjkzYTBmY2Q1
ZTMyODljOTFmMDYzNGJhMTc2YjNlNDVkOC4uNjVhMjlmOWRkY2JjZDU1YTQwMjdkZDQ1MmFmZTEz
NmQ2Y2U2ZDQ5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
bG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsTGV4aWNhbEVudmly
b25tZW50OjpzX2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxMZXhp
Y2FsRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9iYWxMZXhpY2FsRW52aXJv
bm1lbnQ6OnNfaW5mbyA9IHsgIkpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsTGV4
aWNhbEVudmlyb25tZW50KSB9OwogCiB2b2lkIEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Ojpk
ZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAppbmRleCBmYTYyM2UwOTA3NGMzOGZiZTMyMzQxNjdkY2Q1
OTIwMmY4ZjE1MWI2Li4wMTJmMTkxY2Q5YWFlZjcyODgzYjA1MmI1NGIwYjM0NzgzZThjOTdmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3Bw
CkBAIC01MTksNyArNTE5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGRpc2FibGVTdXBl
clNhbXBsZXIsIChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSopKQogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNHbG9i
YWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmds
b2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsT2Jq
ZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU0dsb2JhbE9iamVjdDo6
c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5m
bywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxl
QnV0dGVyZmx5LmNwcAppbmRleCBkNTdjNmU3ODgwMWQ5N2U3OTRiYzgyYjgzN2VhNTYzYTA3M2Uz
YTU3Li41MWMxNzdkZjlmOThlZjJlMWRhN2Y5MDYzMDg2NWFhNjIwZDZkYmViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZseS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbW11dGFibGVCdXR0ZXJmbHku
Y3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNJbW11dGFibGVCdXR0ZXJmbHk6OnNfaW5mbyA9IHsgIkltbXV0YWJsZSBCdXR0ZXJmbHki
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRh
YmxlQnV0dGVyZmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW1tdXRhYmxlQnV0dGVyZmx5Ojpz
X2luZm8gPSB7ICJJbW11dGFibGUgQnV0dGVyZmx5Il9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRhYmxlQnV0dGVyZmx5KSB9OwogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0ltbXV0YWJsZUJ1dHRlcmZseTo6dmlzaXRD
aGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwCmluZGV4IGZm
MWQ4ZDBlOWRlYjBhZDFkNzZjODVjMzJkMTY5YTBkOTYwNmI5ZWIuLjRlMGUxYjNjNTYwNzEyYzA1
ZWMwNzg0MTc5NDY3MjUyYjFmOGFlNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZv
ID0geyAiSW50ZXJuYWxQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlzZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50ZXJu
YWxQcm9taXNlKSB9OwogCiBKU0ludGVybmFsUHJvbWlzZSogSlNJbnRlcm5hbFByb21pc2U6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVj
dG9yLmNwcAppbmRleCAzMjZmMGU3Y2E5OWI0NTIxNGY0YWM3MzJkMzg4MThkMzk0MWRhZDg3Li41
OWI1NTllOTg1MTE5ZWIzNTE3MTJjMDg1MjEzNWIwMTJhMjNkMmQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTSW50ZXJuYWxQcm9taXNlQ29uc3Ry
dWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJv
bWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmaW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTSW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBpbnRlcm5hbFByb21pc2VDb25zdHJ1
Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lu
dGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKaW5kZXggYTY5ZDI3MGQ0OGFjMDU0YmMw
Yzk0OGJmZjgxNjUyZTVjMDNkZjMyZi4uZTE3MWMzMmY0MTg3Nzk1ODA3MzkwNzZhZDVkZGZjYWM4
NmQyMjUwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpT
SW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQ
cm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50
ZXJuYWxQcm9taXNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFByb21pc2VQcm90b3R5cGUiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUpIH07CiAKIEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKiBK
U0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAKaW5kZXgg
YzE1MWY0ZDljYWJkOTU3MGQ4NjE0MjRkMDBkMjliYjIxNjVmYTE5My4uOTEyNTk4OWZmMzllOGUw
ZWYzODMxNThkNjI2YThhODE1OGNkMmZkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTGV4aWNhbEVudmlyb25tZW50LmNwcApAQCAtMzQsNyArMzQsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTGV4aWNhbEVudmlyb25t
ZW50OjpzX2luZm8gPSB7ICJKU0xleGljYWxFbnZpcm9ubWVudCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNMZXhpY2FsRW52aXJvbm1lbnQp
IH07Citjb25zdCBDbGFzc0luZm8gSlNMZXhpY2FsRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpT
TGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4aWNhbEVudmlyb25tZW50KSB9OwogCiB0ZW1wbGF0ZTx0
eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0xleGljYWxFbnZpcm9ubWVudDo6dmlzaXRDaGlsZHJl
bkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNNYXAuY3BwCmluZGV4IDE5ZGI1MTYxOWQwOTdlNTA3YmQ3OTZmYzEwNzcwN2Uy
MjAwYjcwMjMuLjY2NzAxNWQyYjE2MmRkODVjNmJhMTU1ZWY0OTYwYjRhN2FkZDE4YWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAiTWFwIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTWFwKSB9
OwogCiBKU01hcCogSlNNYXA6OmNsb25lKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCmluZGV4IDU1MWVjMzU2MmM0ZDQzYTM4NTk4OGQ4
M2U4ODY0YWFhOTQ2NDIyMTMuLjU3MzExM2I3ZDE5MDI4YmExODZkYzUxYmNhN2JmMWZmZmRlZGNk
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNNYXBJdGVyYXRvcjo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcEl0ZXJhdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1hcCBJdGVyYXRv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU01hcEl0ZXJhdG9yKSB9OwogCiBKU01hcEl0ZXJhdG9yKiBKU01hcEl0ZXJhdG9yOjpjcmVh
dGVXaXRoSW5pdGlhbFZhbHVlcyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVu
dC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50
LmNwcAppbmRleCA4NWQwYzJlMDMwYzBhOTQ3YzlhNzUzNDVlY2NkNzYzNDBjNjgyY2U0Li40YjRh
MjA2NzI2ODhlOTQ0YzkwOWZjNmQ4ZTUyYjI2ZTc5NGUxN2NmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmlyb25tZW50LmNwcApAQCAtMzQs
NyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxl
RW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9kdWxlRW52aXJvbm1lbnQiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlRW52aXJv
bm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNNb2R1bGVFbnZpcm9ubWVudDo6c19pbmZvID0g
eyAiSlNNb2R1bGVFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUVudmlyb25tZW50KSB9OwogCiBKU01vZHVs
ZUVudmlyb25tZW50KiBKU01vZHVsZUVudmlyb25tZW50OjpjcmVhdGUoCiAgICAgVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTY29wZSogY3VycmVudFNjb3BlLCBTeW1ib2xUYWJsZSog
c3ltYm9sVGFibGUsIEpTVmFsdWUgaW5pdGlhbFZhbHVlLCBBYnN0cmFjdE1vZHVsZVJlY29yZCog
bW9kdWxlUmVjb3JkKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNb2R1bGVMb2FkZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwCmluZGV4IGI4YjkyMTI4ZDFkYmRhOWI2YTEwYjU3Y2QxOGU0MzcwNDk1OGUx
ODcuLmVlZDQ2MzUwMTMxNmUzYTNkNDA0ZjFkNjZkZDhmNTYxMWFhZjM1ZTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUxvYWRlci5jcHAKQEAgLTYyLDcg
KzYyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShKU01vZHVsZUxvYWRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZUxv
YWRlcjo6c19pbmZvID0geyAiTW9kdWxlTG9hZGVyIiwgJkJhc2U6OnNfaW5mbywgJm1vZHVsZUxv
YWRlclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlTG9hZGVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTG9hZGVyOjpzX2luZm8gPSB7ICJNb2R1bGVMb2Fk
ZXIiX3MsICZCYXNlOjpzX2luZm8sICZtb2R1bGVMb2FkZXJUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU01vZHVsZUxvYWRlcikgfTsKIAogLyogU291cmNlIGZvciBKU01vZHVs
ZUxvYWRlci5sdXQuaAogQGJlZ2luIG1vZHVsZUxvYWRlclRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAK
aW5kZXggOTZhMGY3ZGE0M2QzY2U4MzExZmVjOTZkOTYzODM5YWFjOTg2ZTkxNC4uMjE4MTA0ZjI5
MjljZDczZGZmYzljYTllYTlkMjVjNTkwMGFkNmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcApAQCAt
MzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9k
dWxlTmFtZXNwYWNlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTmFtZXNwYWNl
T2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VPYmplY3QiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVOYW1lc3Bh
Y2VPYmplY3QpIH07CiAKIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpKU01vZHVsZU5hbWVzcGFj
ZU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNv
cmQuY3BwCmluZGV4IGNiZTY5NTg1M2QyZjFlZmE2ODllMWZkN2I3YmM3Y2Y5YmM0YTZhYjUuLmFi
N2JlY2Q5YzY3YTA4YzJmZTI1OGY3ZGI5MTA1NGYyYmFkNzlkMTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29yZC5jcHAKQEAgLTM2LDcgKzM2LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZVJlY29yZDo6
c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZVJlY29yZCkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU01vZHVsZVJlY29yZDo6c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlUmVjb3Jk
KSB9OwogCiAKIFN0cnVjdHVyZSogSlNNb2R1bGVSZWNvcmQ6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9u
LmNwcAppbmRleCA4MDY0MzlmZGYyNTg3YjE2OGVhNjc0ODAzNzg1MDYyMzM0ZWIxOTk1Li4xMGNm
NmY5OTY0NWRjMzk3YTJiNmMzZWU4YWNlYjM5MjQ2OWE4MTFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcApAQCAtMzEs
NyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZl
U3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU05hdGl2ZVN0ZEZ1bmN0aW9uKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZlU3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmF0aXZlU3RkRnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKHJ1blN0ZEZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U09OT2JqZWN0LmNwcAppbmRleCA2YjdjNTg4MWFkOWJmZmRjYTVhMjQ5YTQzNzEwMjVhMmNmNDdm
ODBiLi5iZjkwNmEyN2Y4MzU5NzBjODU1OTkwZDA1MmIzZGUzYzY5OGFhYWQ0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNjI4LDcgKzYyOCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U09OT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTT05PYmplY3Q6OnNfaW5mbyA9IHsgIkpT
T04iX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZqc29uVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNPTk9iamVjdCkgfTsKIAogLyogU291cmNlIGZvciBKU09OT2Jq
ZWN0Lmx1dC5oCiBAYmVnaW4ganNvblRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU09iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5jcHAKaW5kZXggZDU0NGE0M2JhMTllYTMyN2ZiZDI4MTVhZGM3YWYzNDE2YzU2
MWE2Ni4uMDVhYmVlMjljYjk3NjBmZmU0MjY3MTAyZGI5MDU5OTAwMDUxNGM4YSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcApAQCAtNjUsOSArNjUsOSBAQCBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZUNvbmZpZ3VyYWJp
bGl0eUVycm9yIHsgIkF0dGVtcHRpbgogY29uc3QgQVNDSUlMaXRlcmFsIFVuY29uZmlndXJhYmxl
UHJvcGVydHlDaGFuZ2VFbnVtZXJhYmlsaXR5RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ug
ZW51bWVyYWJsZSBhdHRyaWJ1dGUgb2YgdW5jb25maWd1cmFibGUgcHJvcGVydHkuIl9zIH07CiBj
b25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9wZXJ0eUNoYW5nZVdyaXRhYmlsaXR5
RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ugd3JpdGFibGUgYXR0cmlidXRlIG9mIHVuY29u
ZmlndXJhYmxlIHByb3BlcnR5LiJfcyB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNf
aW5mbyA9IHsgIk9iamVjdCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU09iamVjdCkgfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxPYmplY3Q6OnNfaW5m
byA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2Jq
ZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlzaXRvcj4KIEFMV0FZU19JTkxJTkUgdm9pZCBKU09iamVjdDo6bWFya0F1eGlsaWFy
eUFuZFZpc2l0T3V0T2ZMaW5lUHJvcGVydGllcyhWaXNpdG9yJiB2aXNpdG9yLCBCdXR0ZXJmbHkq
IGJ1dHRlcmZseSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0IG1heE9mZnNl
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmluZGV4IDFh
MWQ3YzNmM2M5YTNmNzdhMmI0YWFiYjU2ZTdkNDc1NmY0YWY1OTMuLjVhMmM1ZmRjNGQ2NzBiNWVj
YWI3ZTJjNDhhOTcwNzdlOTk2ZTY3NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNQcm9taXNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0geyAiUHJvbWlzZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcAppbmRleCA4ZDNiOWI4NjYzYjcwYWE0YWRiZjhhNWUx
MDU4MjI4OWI0NWNmM2FmLi42MThiZGJmYTIzYjY5ODM4NTc4MTU5ZWY2ODc0YTY3ZTc2YjEyOGVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNl
Q29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklB
TExZX0RFU1RSVUNUSUJMRShKU1Byb21pc2VDb25zdHJ1Y3Rvcik7CiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJv
bWlzZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUu
Y3BwCmluZGV4IDkxNzJmZTU3MjQ5ODhjYjBhNzE5MTc1MDRlMWViZTk1MWRjNjBkZTcuLjY2NjZj
N2Q1MDE5ZjUxYWU4ZTA0OTRjN2VhY2JiOWU5ZDkxNzY0Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNQcm9taXNl
UHJvdG90eXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlByb21pc2UiLCAmQmFzZTo6c19pbmZvLCAmcHJvbWlz
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlByb21pc2UiX3MsICZCYXNlOjpzX2luZm8sICZwcm9taXNlUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByb21pc2VQcm90b3R5
cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9w
ZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAKaW5kZXggNmVlMzIwZjdlM2Q5MDliNmNkMGUzNzkz
NjFkYTBhYTBlODc1N2M0My4uNTI1MDliYjZlNDcyMTQzMGEyYWIxMGNkMzM4NmJlNDMxYWViNjM0
OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpzX2luZm8g
PSB7ICJKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3I6OnNfaW5mbyA9IHsgIkpTUHJvcGVy
dHlOYW1lRW51bWVyYXRvciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IpIH07CiAKIEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvciogSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgdWludDMyX3QgaW5kZXhlZExlbmd0aCwgdWludDMyX3QgbnVtYmVy
U3RydWN0dXJlUHJvcGVydGllcywgUHJvcGVydHlOYW1lQXJyYXkmJiBwcm9wZXJ0eU5hbWVzKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb3h5LmNwcAppbmRleCBmNDUzZmFi
OWM4ZGE3ZDJjZDQxNjNiNTUzMzA4NjU1OGU3ZmU2MmNhLi40ODFkODU3OTNlYzM5YjFiNDM1ZDlm
YmVlMmJiNmU5NDJhZGY0ZTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3h5LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTUHJveHkpOwogCi1jb25zdCBDbGFzc0luZm8g
SlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb3h5OjpzX2luZm8gPSB7ICJKU1Byb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTUHJveHk6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKaW5kZXggNTkzOWQ4ZjJkNTFmYTBiM2JmYjU2MjVmMmIx
ZWY1NDdiMjlkZTFmMC4uYWYwNzE4ZTlhYWNkYTc5NzJmZTc1MDQ4YjhmODBmNGQxN2Y2NWM1ZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlv
bi5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1JlbW90ZUZ1bmN0aW9uKSB9OwogCiBKU1JlbW90ZUZ1bmN0aW9uOjpKU1JlbW90ZUZ1
bmN0aW9uKFZNJiB2bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTT2JqZWN0KiB0YXJnZXRG
dW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIGdsb2JhbE9iamVjdCwgc3RydWN0
dXJlKQpAQCAtNjYsNyArNjYsNyBAQCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcEFyZ3VtZW50
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZWN0KgogICAgIEpTVmFs
dWUgcmVzdWx0ID0gd3JhcFZhbHVlKGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2
YWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJl
c3VsdCkKLSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVl
IHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsK
KyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3Np
bmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsKIH0KIApAQCAtNzcsNyArNzcsNyBA
QCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcFJldHVyblZhbHVlKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZQogICAgIEpTVmFsdWUgcmVzdWx0ID0gd3JhcFZhbHVl
KGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2YWx1ZSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgdGhyb3dU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFs
bXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVz
dCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihz
Y29wZSwgcmVzdWx0KTsKIH0KIApAQCAtMjI4LDcgKzIyOCw3IEBAIHZvaWQgSlNSZW1vdGVGdW5j
dGlvbjo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZt
KQogICAgIGF1dG8qIGV4Y2VwdGlvbiA9IHNjb3BlLmV4Y2VwdGlvbigpOwogICAgIGlmIChVTkxJ
S0VMWShleGNlcHRpb24gJiYgIXZtLmlzVGVybWluYXRpb25FeGNlcHRpb24oZXhjZXB0aW9uKSkp
IHsKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24oKTsKLSAgICAgICAgdGhyb3dUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIndyYXBwaW5nIHJldHVybmVkIGZ1bmN0aW9uIHRocm93
cyBhbiBlcnJvciIpOworICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAid3JhcHBpbmcgcmV0dXJuZWQgZnVuY3Rpb24gdGhyb3dzIGFuIGVycm9yIl9zKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY29wZS5jcHAKaW5kZXggNDk1
ZGM2M2M0ZmFiYWE0NTE1NmQ1MzNlYzU3YTU3MjQ0NTA4NjMwNC4uODM0Y2QzMzQwMTZhMjM3YTQ3
ZDYyNmQ5ZjExOTg3MjcxZTU1NDE5OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTY29wZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Njb3BlKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3BlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NvcGUpIH07CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFZpc2l0b3I+CiB2b2lkIEpTU2NvcGU6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2Vs
bCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcAppbmRleCA5ZjIxNTFmYjkzYTkz
NTlmNTVkYjY5YjE1NWUxOTVhMWY1NWNlMzU5Li5mZjA2YWZlOGIyYjBlNzBhYmVkNTk0MWMwYjE1
MWEyODBhNzlmZGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzIiwgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoUGFyYW1ldGVycykgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoUGFyYW1ldGVyczo6c19pbmZvID0geyAiSlNT
Y3JpcHRGZXRjaFBhcmFtZXRlcnMiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaFBhcmFtZXRlcnM6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hlci5jcHAKaW5kZXggMjZjOWM3
NjZjZjAxNTFmNmIzYWU3MDNmODMyNzNkNzFmMzA0ZTNiNC4uZTQzNGFkZTg0OWMxNmRiNGVkMTRi
ZjljYTViNDI1NTJkMGUxZWEyMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1NjcmlwdEZldGNoZXIuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaGVyOjpzX2luZm8gPSB7ICJKU1Nj
cmlwdEZldGNoZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2NyaXB0RmV0Y2hlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoZXI6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hlciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoZXIpIH07CiAKIHZvaWQgSlNTY3Jp
cHRGZXRjaGVyOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
aW5kZXggZWJjYTIxZTg5OWVkOTdjOTcxNzllMGQyNDAyZGYzNzIxNTNhYjExNy4uYTc0ODM2NDU0
ZDc1ODM4NTZiZGI0MzRlMjU3ZDcyNjM2MzEzZjEyNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdC5jcHAK
QEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlZ21l
bnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0KSB9OwogCiBTY29wZU9mZnNldCBKU1NlZ21lbnRlZFZh
cmlhYmxlT2JqZWN0OjpmaW5kVmFyaWFibGVJbmRleCh2b2lkKiB2YXJpYWJsZUFkZHJlc3MpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOTQ0ZTBmYTA5ZWM0
YWNjMmU5MzY2NDY5MDVjYTE4MzkzOGMwZDUzZi4uOWFmM2Q5NDlmMTc2ODEzNDdmNDJiNmMwNTI1
ZTFlOTMyOTY1MmE2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApA
QCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
U2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2lu
Zm8gPSB7ICJTZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNTZXQpIH07CiAKIEpTU2V0KiBKU1NldDo6Y2xvbmUoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKaW5kZXggYmYx
NzlhZWJkZTFkMmUxODdlZjk0ZDJhNWY3OTI4OTAxMzIzMDhkYy4uMTI1ZWI5NjA2MzdlZjBkN2Vm
N2E5ZmQ5M2VlMzBiYzM4OGUxMDIyNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NldEl0ZXJhdG9yOjpzX2luZm8gPSB7ICJTZXQgSXRl
cmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2V0SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19p
bmZvID0geyAiU2V0IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0SXRlcmF0b3IpIH07CiAKIEpTU2V0SXRlcmF0b3Iq
IEpTU2V0SXRlcmF0b3I6OmNyZWF0ZVdpdGhJbml0aWFsVmFsdWVzKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1NvdXJjZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3Vy
Y2VDb2RlLmNwcAppbmRleCA5MTNjNTgxNmQ1NzhmZmYwZmJiOGMyN2E5MDQ4YWExM2VlMzg1MjY3
Li40ZTIwMGU1NmRjZmE0NzMwMzlkYzg5MDliNzg0YmI5ZTQwNjY4ZWExIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU291cmNlQ29kZS5jcHAKQEAgLTMwLDcgKzMwLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NvdXJjZUNvZGU6OnNf
aW5mbyA9IHsgIkpTU291cmNlQ29kZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTb3VyY2VDb2RlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU291cmNl
Q29kZTo6c19pbmZvID0geyAiSlNTb3VyY2VDb2RlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU291cmNlQ29kZSkgfTsKIAogdm9pZCBKU1NvdXJj
ZUNvZGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNTdHJpbmcuY3BwCmluZGV4IDU4MjUyMDNiMzIwY2I3M2QzOTc1ZWNlYTZiZmY5NzNh
MTBkMGJiNDguLmI2NzNjZDgyMTAyMzBmODYyZmExN2M3MmNiMDQ2N2Y0ZWMyOTE1NWQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNf
aW5mbyA9IHsgInN0cmluZyIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNTdHJpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmc6OnNfaW5mbyA9
IHsgInN0cmluZyJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1N0cmluZykgfTsKIAogU3RydWN0dXJlKiBKU1N0cmluZzo6Y3JlYXRlU3RydWN0dXJl
KFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90bykKIHsK
QEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBKU1N0cmluZzo6ZHVtcFRvU3RyZWFtKGNvbnN0IEpTQ2Vs
bCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKICAgICBWTSYgdm0gPSBjZWxsLT52bSgpOwog
ICAgIGNvbnN0IEpTU3RyaW5nKiB0aGlzT2JqZWN0ID0ganNDYXN0PGNvbnN0IEpTU3RyaW5nKj4o
Y2VsbCk7Ci0gICAgb3V0LnByaW50ZigiPCVwLCAlcywgWyV1XSwgIiwgdGhpc09iamVjdCwgdGhp
c09iamVjdC0+Y2xhc3NOYW1lKHZtKSwgdGhpc09iamVjdC0+bGVuZ3RoKCkpOworICAgIG91dC5w
cmludGYoIjwlcCwgJXMsIFsldV0sICIsIHRoaXNPYmplY3QsIHRoaXNPYmplY3QtPmNsYXNzTmFt
ZSh2bSkuY2hhcmFjdGVycygpLCB0aGlzT2JqZWN0LT5sZW5ndGgoKSk7CiAgICAgdWludHB0cl90
IHBvaW50ZXIgPSB0aGlzT2JqZWN0LT5maWJlckNvbmN1cnJlbnRseSgpOwogICAgIGlmIChwb2lu
dGVyICYgaXNSb3BlSW5Qb2ludGVyKSB7CiAgICAgICAgIGlmIChwb2ludGVyICYgSlNSb3BlU3Ry
aW5nOjppc1N1YnN0cmluZ0luUG9pbnRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKaW5kZXggZDRjMTJlOWI4NGJmYTk4ZWNjYmM0
OTc3NzJhZTI1M2Y1N2ZjZjU1ZC4uMjk1NWI3Y2Y4YzAxZTQ0MTY5NDk3ZmE4NjhmMGE3YzhiMTYy
OTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJ
dGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1N0cmluZ0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3RyaW5nSXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNTdHJpbmdJdGVyYXRvcjo6c19p
bmZvID0geyAiU3RyaW5nIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNT
dHJpbmdJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU1N0cmluZyogaXRlcmF0ZWRT
dHJpbmcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5
bWJvbFRhYmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3lt
Ym9sVGFibGVPYmplY3QuY3BwCmluZGV4IDhmMGE5Y2NlYTcxZTVhMTEwNjc0NGUxNjAxMmUwZDlj
YWM1OTI4OTcuLmZiNjBmY2UwMDg1ZTI4ZjBhOWI5ODdiZjUxZTczMGIyZDkzYWQ3NjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmpl
Y3QuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNTeW1ib2xUYWJsZU9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
U3ltYm9sVGFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNTeW1ib2xUYWJsZU9iamVj
dDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTeW1ib2xUYWJsZU9iamVjdCkgfTsK
IAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNTeW1ib2xUYWJsZU9iamVjdDo6
dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVjdERlc2Ny
aXB0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVj
dERlc2NyaXB0b3IuY3BwCmluZGV4IDQyODk5MGEzYWI0YTRhYmE1Mjg2ODk2OTc3OGUzMWMzMDA2
NTljOTguLjA4ODNlODhiNzAzY2ZhMTljYThiZTNhMjQ1NzE2YTA3ZjZlNWFiMmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlw
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1RlbXBsYXRlT2Jq
ZWN0RGVzY3JpcHRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAi
VGVtcGxhdGVPYmplY3REZXNjcmlwdG9yIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6c19pbmZvID0geyAiVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yKSB9OwogCiAKIEpTVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yOjpKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcihWTSYgdm0sIFJlZjxU
ZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I+JiYgZGVzY3JpcHRvciwgaW50IGVuZE9mZnNldCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMuY3BwCmluZGV4IDk1YWJlYzU0MDlhMzFlYTc4MzEzZDNjNWYzOWFkYjQ1ODVi
OGZhZDQuLmJlOWEyNWFiYzNlOWFjODhiOGQ2NmI3YzM3OGQ5ZDRhZTRmMzQyZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Q29u
c3RydWN0b3JzLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogI3VuZGVm
IE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rp
b24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0KKyAgICB0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKSB9
CiAKIE1BS0VfU19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3Rv
dHlwZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJv
dG90eXBlcy5jcHAKaW5kZXggYmE4MThlYTMwODJmZjQwNGM5ZDRhN2YxNDE4MWVjOTc3YjgxOTMw
YS4uOGQxNzZmOTQ0Y2VkZDBiNmI1NTY2YWNkMTg2NDcxMTg3MjhhODM3NyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBlcy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBl
cy5jcHAKQEAgLTMxLDEyICszMSwxMSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OnNfaW5mbyA9IHsiUHJvdG90eXBlIiwg
JkpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKLSAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUpfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7ICJQ
cm90b3R5cGUiX3MsICZKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZSkgfTsKIAogI3VuZGVmIE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5cGUp
IFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpz
X2luZm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1By
b3RvdHlwZSl9CisgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI1Byb3Rv
dHlwZTo6c19pbmZvID0geyAjdHlwZSAiUHJvdG90eXBlIl9zLCAmSlMjI3R5cGUjI1Byb3RvdHlw
ZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
IyN0eXBlIyNQcm90b3R5cGUpIH0KIAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19J
TkZPKEludDE2QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmEzMzM4MmVm
YzgzYzA1ZjE5NWQ1NGJlNmY0NTA4NDNjMTBhZjUyMS4uNDczOGYwZWVmNTc0ZjIyZGY4NDdhNmM0
M2FiODdhMDU3ODJhY2I0NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IuY3BwCkBAIC0zOSw3ICsz
OSw3IEBAIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6SlNUeXBlZEFycmF5Vmlld0NvbnN0
cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1CiB7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJy
YXlWaWV3Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0
b3IpIH07CiAKIHZvaWQgSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVHlwZWRBcnJheVZpZXdQ
cm90b3R5cGUqIHByb3RvdHlwZSwgR2V0dGVyU2V0dGVyKiBzcGVjaWVzU3ltYm9sKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1By
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcAppbmRleCA4ODI3YjNkZTk4ZmUwNWZlNThiOTE3MDQyOWUzODY0OTk1
ZTE5ZjU4Li4zZjllYzg0MDBlOWVjZjllYWEwNTkzMjdkNTIwNjU4NzlkNjZhZTliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlLmNwcApAQCAtMjYzLDcgKzI2Myw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTih0eXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFs
dWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUoKTsKICAgICBpZiAoIXRoaXNWYWx1
ZS5pc09iamVjdCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJSZWNlaXZlciBzaG91bGQgYmUg
YSB0eXBlZCBhcnJheSB2aWV3IGJ1dCB3YXMgbm90IGFuIG9iamVjdCIpKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiUmVjZWl2ZXIgc2hvdWxkIGJlIGEgdHlwZWQgYXJyYXkgdmlldyBidXQgd2Fz
IG5vdCBhbiBvYmplY3QiX3MpKTsKICAgICBzY29wZS5yZWxlYXNlKCk7CiAgICAgQ0FMTF9HRU5F
UklDX1RZUEVEQVJSQVlfUFJPVE9UWVBFX0ZVTkNUSU9OKGdlbmVyaWNUeXBlZEFycmF5Vmlld1By
b3RvRnVuY0luY2x1ZGVzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5cy5jcHAKaW5kZXggOTBiMzA0NTY3MGFmMGFiZTJmNmQwMjdlZGU5ZDg4NWZm
ZjA0YWYzOS4uZDliMjI2Mjk0NDBjOGM3MGExZDZhM2YyOTE5ZTI3Y2QxNDhkNGQwYiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKQEAgLTQ2
LDcgKzQ2LDcgQEAgY29uc3QgQVNDSUlMaXRlcmFsIHR5cGVkQXJyYXlCdWZmZXJIYXNCZWVuRGV0
YWNoZWRFcnJvck1lc3NhZ2UgeyAiVW5kZXJseWluZyBBcnIKICN1bmRlZiBNQUtFX1NfSU5GTwog
I2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCiAgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlMjI3R5cGUjI0FycmF5OjpzX2luZm8gPSB7IFwKLSAgICAgICAgI3R5cGUgIkFycmF5Iiwg
JkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBcCisgICAg
ICAgICN0eXBlICJBcnJheSJfcywgJkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBcCiAgICAgICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0Fy
cmF5KSBcCiAgICAgfTsgXAogICAgIGNvbnN0IENsYXNzSW5mbyogZ2V0IyN0eXBlIyNBcnJheUNs
YXNzSW5mbygpIHsgcmV0dXJuICZKUyMjdHlwZSMjQXJyYXk6OnNfaW5mbzsgfSBcCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtNYXAuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNwcAppbmRleCA0MWViZDhmN2VmNTQ3
ZjQxMGYyNjMwYWVmZWM5YzlkZmVkNjE0NDE1Li5jMTIwODU1NGI5MWExZDdkMTM4NWRiODQwOTAy
ZDhkOTgyOGRlNDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01h
cC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha01hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrTWFwKSB9OwogCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RS
ZWYuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNw
cAppbmRleCAxNTYxM2QzODkwYThkOTE3YWMyMDJkNjc2MjI3M2RlODY4NmVmYWU2Li4yODNkN2Vm
MjgzN2VlZTUwMDczYmZhYWM5MGY4ZGJiOGM0Njc1MzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHAKQEAgLTMwLDcgKzMwLDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtPYmplY3RSZWY6OnNf
aW5mbyA9IHsgIldlYWtSZWYiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2Vha09iamVjdFJlZikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dl
YWtPYmplY3RSZWY6OnNfaW5mbyA9IHsgIldlYWtSZWYiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrT2JqZWN0UmVmKSB9OwogCiB2
b2lkIEpTV2Vha09iamVjdFJlZjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU09iamVjdCogdmFs
dWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtT
ZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrU2V0LmNwcAppbmRl
eCBiZmRkOTRlZDA5ZGYzOGRhYThiMWY2MmQ4NTQzZWYxYmJiYmZhMmYxLi5hMDFiNzhhNzU0OTJl
OGU4MDc5MjU5MDY5MWZkOWI3MzE4ODcwOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTV2Vha1NldC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha1Nl
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5mbyA9IHsgIldlYWtTZXQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWFrU2V0KSB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dpdGhT
Y29wZS5jcHAKaW5kZXggYWMxZmEyNWZiYjQ4NmIwNGYzZDJkYTQzNzIyYjY5YTU3MDc0NTYxZS4u
MTE5ZThhYzJkODQ2NTk0MmE4YzFkNjhmNGVhZmU3ZTdhM2I2ZDY5ZSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8g
PSB7ICJXaXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3Bl
OjpzX2luZm8gPSB7ICJXaXRoU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXaXRoU2NvcGUpIH07CiAKIEpTV2l0aFNjb3BlKiBK
U1dpdGhTY29wZTo6Y3JlYXRlKAogICAgIFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNTY29wZSogbmV4dCwgSlNPYmplY3QqIG9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAKaW5kZXggNDEyZTI1OGFiMDk1OWYx
OGIzMmRhOTkxZGIzZjk2MDRmMjk4YjdmNC4uYjM5NTFkZWVhN2VkY2EyYTk1MmJmODY5NGRkYjY2
NGVmODU4YmEwMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0
ZXJhbFBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJh
bFBhcnNlci5jcHAKQEAgLTExNjEsNyArMTE2MSw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBM
aXRlcmFsUGFyc2VyPENoYXJUeXBlPjo6cGFyc2VQcmltaXRpdmVWYWx1ZShWTSYgdm0pCiAgICAg
ICAgICAgICBpZiAodG9rZW4tPnN0cmluZ0xlbmd0aCA+IHNob3J0TGVuZ3RoKQogICAgICAgICAg
ICAgICAgIGVycm9yU3RyaW5nID0gdHJ5TWFrZUVycm9yU3RyaW5nKHNob3J0TGVuZ3RoKTsKICAg
ICAgICAgICAgIGlmICghZXJyb3JTdHJpbmcpCi0gICAgICAgICAgICAgICAgZXJyb3JTdHJpbmcg
PSAiVW5leHBlY3RlZCBpZGVudGlmaWVyIjsKKyAgICAgICAgICAgICAgICBlcnJvclN0cmluZyA9
ICJVbmV4cGVjdGVkIGlkZW50aWZpZXIiX3M7CiAgICAgICAgIH0KIAogICAgICAgICBtX3BhcnNl
RXJyb3JNZXNzYWdlID0gZXJyb3JTdHJpbmc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTVhMjg5ODY3NTg0ODI5ZmVhMjE0MWY5
Njg4MjQ5NTA2MDhjYjc4Yi4uMzU0MDEyZGJkNDhmNGM3ODI3YjZiOWQ2ZWE2OWQ5MDVjNDI0YTVj
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9y
LmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIE1hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIE1hcFByb3RvdHlwZSogbWFwUHJvdG90eXBlLCBHZXR0ZXJTZXR0ZXIqIHNwZWNpZXNT
eW1ib2wpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggNmFjNTg3YjVlODY5OTcxM2NjZGNiY2MzZjVhMjEx
MWVjZmJhOTIyNy4uZjczMWM1ZDM0NWUyYjQxZGE1OWM3MjAwNjcwMzIwYjQ3OGE1YjljZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJv
dG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3Ii
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwSXRlcmF0b3JQcm90b3R5cGUpIH07CiAK
IHZvaWQgTWFwSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBQcm90b3R5cGUuY3BwCmluZGV4IDkzZWJlMDAzYzQ3MmJjODk0M2E4NThkYTgzNTM0
ZjJiYjdhMTgwNmUuLmZmY2JkNzhmMTY0OWQ0YWJjYzcyNTY0NDcyMDQ0YjZmMDVlNTM0ODEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcApAQCAt
MzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgJm1hcFByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCJfcywgJkJhc2U6OnNfaW5m
bywgJm1hcFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFBy
b3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBNYXBQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBt
YXBQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTWF0aE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2Jq
ZWN0LmNwcAppbmRleCA1YjBjYTk3N2QwODUxYzRiYjY3YzllNDY0ZTVhMTAzYzIyYzE0YjM3Li5k
ZTY4YWE5NzQ0NmU3MDlhOGY0MTExMDBiY2QyZmIwYjRiYWVjMTk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcApAQCAtNjMsNyArNjMsNyBAQCBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jVGFuKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNUYW5oKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNJTXVsKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIE1hdGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hdGhPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gTWF0aE9iamVjdDo6c19pbmZvID0geyAiTWF0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9OwogCiBNYXRo
T2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBK
U05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggMWQ1
M2JmNWQxMGE2ZjQ0OGQzOTMzY2YxNDFiNzA0OWRkMjYyY2M3NC4uMjQ3ZmFhNjVlYmNlNmVhMzk0
NzZjYzI2ZWY0ZDJlNTI2ZDU5ZTU2OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01vZHVsZVByb2dyYW1FeGVjdXRhYmxlLmNwcApAQCAtMzAsNyArMzAs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1vZHVsZVByb2dyYW1F
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTW9kdWxlUHJvZ3Jh
bUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGU6
OnNfaW5mbyA9IHsgIk1vZHVsZVByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1vZHVsZVByb2dyYW1FeGVjdXRh
YmxlKSB9OwogCiBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZTo6TW9kdWxlUHJvZ3JhbUV4ZWN1dGFi
bGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNl
KQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkubW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGVT
dHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZl
ZENvbnRleHRUeXBlOjpOb25lLCBmYWxzZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwg
Tm9JbnRyaW5zaWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
YXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDIxM2Q5ZmI3YTY4YWIyYWM4Zjk2ZDg2
NzBkOGFlMzQ2ZjEzOWUzZmMuLjcwMmUzNjkwMDYyZjVjYmRlNjZlYzc2ZjM3NDc0ZGNkODRhZDY5
NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2
ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JDb25z
dHJ1Y3RvckJhc2UpOwogCi1jb25zdCBDbGFzc0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJh
c2U6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yQmFzZTo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFdmFsRXJyb3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0RXZhbEVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKaW5kZXggNjRmOWQxZmQ2Mzg4NjNjZmVm
NTEwZDg0MDFhZmM4OWM3ZDdiOWE2YS4uZTA5NjYzYjJkYTMzN2YyMzMzOGU3ZTliYzYwOTNlNWFk
YzJmMTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZl
RXhlY3V0YWJsZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBOYXRpdmVFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRh
YmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOYXRpdmVF
eGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRhYmxlIl9zLCAmRXhlY3V0YWJsZUJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OwogCiBOYXRpdmVFeGVjdXRhYmxlKiBOYXRpdmVFeGVjdXRhYmxlOjpjcmVh
dGUoVk0mIHZtLCBSZWY8SklUQ29kZT4mJiBjYWxsVGh1bmssIFRhZ2dlZE5hdGl2ZUZ1bmN0aW9u
IGZ1bmN0aW9uLCBSZWY8SklUQ29kZT4mJiBjb25zdHJ1Y3RUaHVuaywgVGFnZ2VkTmF0aXZlRnVu
Y3Rpb24gY29uc3RydWN0b3IsIGNvbnN0IFN0cmluZyYgbmFtZSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IGFh
ZTIwYTViYzc1OWIwNTJjZjE5Mzk3ODhiNmMwMGMyYWRiMjJjZmIuLjYyNzBkNTM0NzE3MmMyNDI5
Zjg3ZTAxODRhMjVkZjllZDM4MWUzN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE51bGxHZXR0ZXJGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBO
dWxsR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlv
bikgfTsKIAogbmFtZXNwYWNlIE51bGxHZXR0ZXJGdW5jdGlvbkludGVybmFsIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAK
aW5kZXggZjIxOWI5MzI2YmJkYWFlZGZlM2ZhMWM2Yjg2ZjFhYWMzYTUxOGJjMy4uMDk1YzYwNWIx
OTIwZjc1MTA1YWRjMWQ0NGY4ZDMzYjgwNzIyNzBiOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVsbFNldHRlckZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIE51bGxTZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRl
ckZ1bmN0aW9uKSB9OwogCiAKICNpZiBBU1NFUlRfRU5BQkxFRApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyM2ExNmI1
MjM1ZGY4MzlmYjllNWRlZWVmYjY1Mjg1YWNhNjI3ZDAuLmQyYTA1MDVmZDcyNDFmMTdlNjNjOTMw
YTBjYjA3ODY2MzdjMDBmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25z
dHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmbnVtYmVyQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZudW1iZXJDb25zdHJ1Y3RvclRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlckNvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIE51bWJlckNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gbnVtYmVyQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVj
dC5jcHAKaW5kZXggZWZlYmIyOWExM2I5NWQxNzg3NmUwZjFmMmRkYTU3NmE3ZDEwZjJiNy4uNTEy
ZGVmZTc2MTYwMzU1MTA5MTEyNGM0NDA0ZDNmMzI2ZjVhYzViNCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShOdW1iZXJPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyT2JqZWN0Ojpz
X2luZm8gPSB7ICJOdW1iZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyT2JqZWN0KSB9OwogCiBOdW1iZXJPYmplY3Q6Ok51bWJl
ck9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3Rv
dHlwZS5jcHAKaW5kZXggODg4NTkxZGRjMDZmZmFjYWQyZjBhMDk3M2JmMDI1NTRkNjUxODBiNi4u
NjliMzBmZjVlMWU3Yzc2YjBiMTc0NTE3N2NiYjhmZWEwNTYzZjBlYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwCkBAIC01MSw3ICs1
MSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG51bWJlclByb3RvRnVuY1Rv
UHJlY2lzaW9uKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIk51bWJlciIsICZOdW1iZXJPYmplY3Q6OnNfaW5mbywgJm51
bWJlclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsg
Ik51bWJlciJfcywgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRh
YmxlCkBAIC0zNzUsNyArMzc1LDcgQEAgU3RyaW5nIHRvU3RyaW5nV2l0aFJhZGl4KGRvdWJsZSBk
b3VibGVWYWx1ZSwgaW50MzJfdCByYWRpeCkKICAgICAgICAgcmV0dXJuIFN0cmluZzo6bnVtYmVy
KGRvdWJsZVZhbHVlKTsKIAogICAgIFJhZGl4QnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gdG9T
dHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCk7CisgICAg
cmV0dXJuIFN0cmluZyB7IHRvU3RyaW5nV2l0aFJhZGl4SW50ZXJuYWwoYnVmZmVyLCBkb3VibGVW
YWx1ZSwgcmFkaXgpIH07CiB9CiAKIC8vIHRvRXhwb25lbnRpYWwgY29udmVydHMgYSBudW1iZXIg
dG8gYSBzdHJpbmcsIGFsd2F5cyBmb3JtYXR0aW5nIGFzIGFuIGV4cG9uZW50aWFsLgpAQCAtNDEy
LDcgKzQxMiw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihudW1iZXJQcm90b0Z1bmNUb0V4
cG9uZW50aWFsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAgICAgIGNvbnZlcnRlci5U
b0V4cG9uZW50aWFsKHgsIC0xLCAmYnVpbGRlcik7CiAgICAgZWxzZQogICAgICAgICBjb252ZXJ0
ZXIuVG9FeHBvbmVudGlhbCh4LCBkZWNpbWFsUGxhY2VzLCAmYnVpbGRlcik7Ci0gICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgYnVpbGRlci5GaW5hbGl6ZSgpKSk7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nIHsgYnVpbGRlci5GaW5h
bGl6ZSgpIH0pKTsKIH0KIAogLy8gdG9GaXhlZCBjb252ZXJ0cyBhIG51bWJlciB0byBhIHN0cmlu
ZywgYWx3YXlzIGZvcm1hdHRpbmcgYXMgYW4gYSBkZWNpbWFsIGZyYWN0aW9uLgpAQCAtNTEzLDcg
KzUxMyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTU3RyaW5nKiBudW1iZXJUb1N0cmluZ0lu
dGVybmFsKFZNJiB2bSwgZG91YmxlIGRvdWJsZVZhbHVlCiAgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sIFN0cmluZzo6bnVtYmVyKGRvdWJsZVZhbHVlKSk7CiAKICAgICBSYWRp
eEJ1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIGpzU3RyaW5nKHZtLCB0b1N0cmluZ1dpdGhSYWRp
eEludGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4KSk7CisgICAgcmV0dXJuIGpzU3Ry
aW5nKHZtLCBTdHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFsKGJ1ZmZlciwgZG91Ymxl
VmFsdWUsIHJhZGl4KSB9KTsKIH0KIAogSlNTdHJpbmcqIGludDMyVG9TdHJpbmcoVk0mIHZtLCBp
bnQzMl90IHZhbHVlLCBpbnQzMl90IHJhZGl4KQpAQCAtNTQxLDcgKzU0MSw3IEBAIEpTU3RyaW5n
KiBpbnQ1MlRvU3RyaW5nKFZNJiB2bSwgaW50NjRfdCB2YWx1ZSwgaW50MzJfdCByYWRpeCkKICAg
ICBjaGFyKiBzdGFydE9mUmVzdWx0U3RyaW5nID0gZGVjaW1hbFBvaW50OwogICAgICpkZWNpbWFs
UG9pbnQgPSAnXDAnOwogCi0gICAgcmV0dXJuIGpzTm9udHJpdmlhbFN0cmluZyh2bSwgaW50NTJU
b1N0cmluZ1dpdGhSYWRpeChzdGFydE9mUmVzdWx0U3RyaW5nLCB2YWx1ZSwgcmFkaXgpKTsKKyAg
ICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCBTdHJpbmcgeyBpbnQ1MlRvU3RyaW5nV2l0
aFJhZGl4KHN0YXJ0T2ZSZXN1bHRTdHJpbmcsIHZhbHVlLCByYWRpeCkgfSk7CiB9CiAKIEpTU3Ry
aW5nKiBudW1iZXJUb1N0cmluZyhWTSYgdm0sIGRvdWJsZSBkb3VibGVWYWx1ZSwgaW50MzJfdCBy
YWRpeCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0
cnVjdG9yLmNwcAppbmRleCA1ODQwNmVhNzMxYzk0YWViNzQ5MTE5MmViZTZkMTRjOTNhMjM4Yzc3
Li4yNmFmNjE5ZGNhM2QyNmQ4ZWRjNTdiOWM5NTI2YmFlMDVjOWVmMjZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01
Niw3ICs1Niw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxM
WV9ERVNUUlVDVElCTEUoT2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2Jq
ZWN0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm9iamVjdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoT2JqZWN0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZv
LCAmb2JqZWN0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShP
YmplY3RDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBPYmplY3RDb25zdHJ1Y3Rvci5s
dXQuaAogQGJlZ2luIG9iamVjdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3BwCmluZGV4IDk1YmJhM2NiMzIwZWE1
YzcwZjk4MDQzZmUwZDI2NzAxNzczYTBlMmMuLjU5NWNiNDJhOWM4NzM5YTMxYjIzMWU2MTVjZTEx
ZWY3NDAyZGUwNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09i
amVjdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2Jq
ZWN0UHJvdG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihvYmplY3RQcm90b0Z1bmNUb0xvY2FsZVN0cmluZyk7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShPYmplY3RQcm90b3R5cGUpOwogCi1jb25zdCBD
bGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmSlNOb25GaW5h
bE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmplY3RQcm90b3R5cGU6OnNfaW5m
byA9IHsgIk9iamVjdCJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUpIH07CiAKIE9iamVjdFBy
b3RvdHlwZTo6T2JqZWN0UHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHVjdHVyZSkKICAg
ICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvT3BlcmF0aW9ucy5oCmluZGV4IDA5MTllNzIxODZkMzlkNmQ1NmVkZDcxOGE5Y2Zi
OGEzMDRmNTkxNzEuLjJlODE4YmZmYTc5YzRhZjZmMGQzYzEyNTI4ZmFhNTY1NThlYzVmM2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcGVyYXRpb25zLmgKQEAgLTU3Myw3ICs1
NzMsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUganNBZGQoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MgogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBE
b3VibGVPcGVyYXRpb24sIHR5cGVuYW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBkb3VibGVPcCwgQmlnSW50T3AmJiBi
aWdJbnRPcCwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9i
YWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0p
OwpAQCAtNzgwLDcgKzc4MCw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBzaGlmdChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyCiAgICAgfQogI2Vu
ZGlmCiAKLSAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVmdCA/ICJJbnZhbGlkIG1peCBvZiBC
aWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBvcGVyYXRpb24uIiA6ICJJbnZhbGlk
IG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gc2lnbmVkIHJpZ2h0IHNoaWZ0IG9wZXJh
dGlvbi4iOworICAgIGF1dG8gZXJyb3JNZXNzYWdlID0gaXNMZWZ0ID8gIkludmFsaWQgbWl4IG9m
IEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBsZWZ0IHNoaWZ0IG9wZXJhdGlvbi4iX3MgOiAiSW52
YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGluIHNpZ25lZCByaWdodCBzaGlmdCBv
cGVyYXRpb24uIl9zOwogICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCBlcnJvck1lc3NhZ2UpOwogfQogCkBAIC04MTUsNyArODE1LDcgQEAgQUxXQVlTX0lOTElO
RSBKU1ZhbHVlIGpzVVJTaGlmdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGxlZnQsIEpTVmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgSW50MzJPcGVyYXRpb24sIHR5cGVu
YW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVlIGJpdHdpc2VCaW5hcnlPcChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyLCBJbnQzMk9w
ZXJhdGlvbiYmIGludDMyT3AsIEJpZ0ludE9wJiYgYmlnSW50T3AsIGNvbnN0IGNoYXIqIGVycm9y
TWVzc2FnZSkKK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3aXNlQmluYXJ5T3AoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgSW50MzJPcGVyYXRp
b24mJiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNz
YWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5kZXggZWFiZmE4NWFjYTM3ZWYwYWE3
YzdkZjg5NWVhZTQxNzM5ZDE1NDkwZS4uNzMyOWZlMjcwMTg2ODRhYjA1YzZhNDc3NmZhZDI5NmU1
ODI4OWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvZ3Jh
bUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb2dy
YW1FeGVjdXRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhl
Y3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUHJvZ3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1
dGFibGU6OnNfaW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1FeGVjdXRhYmxlKSB9
OwogCiBQcm9ncmFtRXhlY3V0YWJsZTo6UHJvZ3JhbUV4ZWN1dGFibGUoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNlKQogICAgIDogQmFzZShnbG9i
YWxPYmplY3QtPnZtKCkucHJvZ3JhbUV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9i
amVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZlZENvbnRleHRUeXBlOjpOb25lLCBmYWxz
ZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCmluZGV4IGFiNDE2Njk5
ZTk2Mjc3YjJlY2ExMjE4ODkxNjgwMTkxZmIzMzI2ZmEuLjYyMzE0YzdiZTJiYTkzYTg3ZmRiNjVh
ZGRiMTk1ZjU1YzRjZmJjMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBE
RUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKFByb3BlcnR5VGFibGUpOwogCi1j
b25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVydHlUYWJsZSIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlU
YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9w
ZXJ0eVRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFByb3BlcnR5VGFibGUpIH07CiAKIFByb3BlcnR5VGFibGUqIFByb3BlcnR5VGFibGU6OmNy
ZWF0ZShWTSYgdm0sIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjcyZjhm
N2FlZTUzMDkwNzE4NjM5NmMyMzE0NWNiYWJkZmJiMWYzYy4uODhjMTc3NGY4MDgwOWMxNzg1OGI1
ZGMwYzRkMjU0ZjkwMzY2NjdmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eUNvbnN0
cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlByb3h5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShQcm94eUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlByb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5Q29uc3RydWN0b3IpIH07CiAKIFByb3h5Q29uc3Ry
dWN0b3IqIFByb3h5Q29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogewpAQCAtNzYsNyArNzYsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04obWFrZVJl
dm9jYWJsZVByb3h5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogCiB2b2lk
IFByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKIHsKLSAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5
IiwgUHJvcGVydHlBZGRpdGlvbk1vZGU6OldpdGhvdXRTdHJ1Y3R1cmVUcmFuc2l0aW9uKTsKKyAg
ICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5Il9zLCBQcm9wZXJ0eUFkZGl0aW9u
TW9kZTo6V2l0aG91dFN0cnVjdHVyZVRyYW5zaXRpb24pOwogICAgIEpTQ19OQVRJVkVfRlVOQ1RJ
T05fV0lUSE9VVF9UUkFOU0lUSU9OKCJyZXZvY2FibGUiLCBtYWtlUmV2b2NhYmxlUHJveHksIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCAyKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3Qu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3QuY3BwCmluZGV4
IDQ1ZjU4ZDk5ZDM1ZDVhMTNkZGI5OWUwYTY0Y2Y5MWZiNjZkOTM4ZGYuLjFiOWNmNzA2ZGZkN2Zl
NjdjNDU5NGM3ZDdkM2RlMGM5ZTJiMWU2OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Qcm94eU9iamVjdC5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eU9iamVjdCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eU9iamVjdDo6c19pbmZvID0geyAiUHJveHlPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFBy
b3h5T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5T2JqZWN0OjpzX2luZm8gPSB7ICJQ
cm94eU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShQcm94eU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04ocGVyZm9ybVByb3h5Q2FsbCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihwZXJmb3JtUHJveHlDb25zdHJ1Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUHJveHlSZXZva2UuY3BwCmluZGV4IGY1MGNmZTY4MWFjYjk4NGRkODY4MGNmODA2NzlhYjI2
NTFlOTc3ZjAuLjNlNjIxYWI3MzQzMjk3MjkyMTA2NDdiZjhjMTMxNTY1ODQwYWQyNzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5UmV2b2tlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eVJldm9rZS5jcHAKQEAgLTMzLDcg
KzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShQcm94eVJldm9rZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJldm9rZTo6
c19pbmZvID0geyAiUHJveHlSZXZva2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5UmV2b2tlKSB9OworY29uc3QgQ2xhc3NJbmZvIFBy
b3h5UmV2b2tlOjpzX2luZm8gPSB7ICJQcm94eVJldm9rZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJldm9rZSkgfTsKIAogUHJv
eHlSZXZva2UqIFByb3h5UmV2b2tlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgUHJveHlPYmplY3QqIHByb3h5KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWZsZWN0T2JqZWN0LmNwcAppbmRleCAwODczN2RhYTc1NjIzN2Y2Y2EyZTA5ZGM4YzFh
ZDc1ZDFkYjhjNTE2Li4yMjdlMDEyMGVlMTk1YzNkOGE3OGFjNGUxYmFiYTQ1MDc2NDY1ZjEwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNwcApA
QCAtNTAsNyArNTAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKFJlZmxlY3RPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gUmVm
bGVjdE9iamVjdDo6c19pbmZvID0geyAiUmVmbGVjdCIsICZCYXNlOjpzX2luZm8sICZyZWZsZWN0
T2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVmbGVjdE9iamVjdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSZWZsZWN0T2JqZWN0OjpzX2luZm8gPSB7ICJSZWZsZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCAmcmVmbGVjdE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFJlZmxlY3RPYmplY3QpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVmbGVjdE9iamVj
dC5sdXQuaAogQGJlZ2luIHJlZmxlY3RPYmplY3RUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cC5jcHAKaW5kZXggNDQ5MDlkMTY5NGJjNTVjNzViMjc3Y2M1MTYwMDAwMjg0
YjRhZDMyZi4uYzhlZjYzZjg5NDdhNzJhNDc3OGFlMzUzZjBiNTk1MjBjODc0NDEyMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHAuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gUmVnRXhwOjpzX2luZm8gPSB7ICJS
ZWdFeHAiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJl
Z0V4cCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCJfcywg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07
CiAKICNpZiBSRUdFWFBfRlVOQ19URVNUX0RBVEFfR0VOCiBjb25zdCBjaGFyKiBjb25zdCBSZWdF
eHBGdW5jdGlvbmFsVGVzdENvbGxlY3Rvcjo6c19maWxlTmFtZSA9ICIvdG1wL1JlZ0V4cFRlc3Rz
RGF0YSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
YWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5jcHAK
aW5kZXggMGY1ZDUwZmVjMGI3NDI0NDRiZDY2ODUxNWQ2YWJhMjM4MmJlNDc3Mi4uNzQ3NzAxZjhh
MGQ0YWJiMzA2NDllZDZmYTJmYTUxMTdlZjRjNmYzZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWdFeHBDYWNo
ZTo6UmVnRXhwQ2FjaGUoVk0qIHZtKQogCiBSZWdFeHAqIFJlZ0V4cENhY2hlOjplbnN1cmVFbXB0
eVJlZ0V4cFNsb3coVk0mIHZtKQogewotICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVh
dGUodm0sICIiLCB7IH0pOworICAgIFJlZ0V4cCogcmVnRXhwID0gUmVnRXhwOjpjcmVhdGUodm0s
IGVtcHR5U3RyaW5nKCksIHsgfSk7CiAgICAgbV9lbXB0eVJlZ0V4cC5zZXQodm0sIHJlZ0V4cCk7
CiAgICAgcmV0dXJuIHJlZ0V4cDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRleCBmZDRjOTJiMzQxMWM1OWRlYmFhNmZi
ODBiZjkwMmMxOTNmOGM4OGNhLi4xNWYyN2QwYTRiYTI3OWExMmY2YjkzYWVjZDI0MmQ0NGYyMzE2
OTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
U0VUVEVSKHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5lKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZyZWdFeHBDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFJlZ0V4cENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcmVnRXhwQ29uc3RydWN0b3JUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5k
ZXggM2YzNDI2Y2UxZWZkMjQwNmU2MzU5MGUzNTljODI2OTI5ZmRmMzcyZS4uNzhmNWM4YTg1NWNl
OTQ0YmNlMTllNzg5MmJlY2QwNGY3OTQ1NTg2OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBK
U0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUmVnRXhwT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVjdDo6c19pbmZvID0geyAiUmVnRXhw
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShS
ZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7
ICJSZWdFeHAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NF
VFRFUihyZWdFeHBPYmplY3RTZXRMYXN0SW5kZXhTdHJpY3QpOwogc3RhdGljIEpTQ19ERUNMQVJF
X0NVU1RPTV9TRVRURVIocmVnRXhwT2JqZWN0U2V0TGFzdEluZGV4Tm9uU3RyaWN0KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4
IDU4MjRhNDJjM2I2YTE1NzNmMDAxNjU1YTY5MmQ2NzlmZGZhMDA5ZjQuLjk3NTcwMTJiNzNkOTU4
ODIyMTlkMDllMjdmMzk2NmM3MjIxNTAyZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihyZWdFeHBQcm90b0dldHRlclVuaWNvZGUpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UpOwog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncyk7
CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVn
RXhwUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cFByb3RvdHlwZTo6c19pbmZv
ID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFJlZ0V4cFByb3RvdHlwZSkgfTsKIAogUmVnRXhwUHJvdG90eXBlOjpSZWdF
eHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTTm9uRmlu
YWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKQEAgLTEwNSw3ICsxMDUsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9GdW5jRXhlYywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIENhbAogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUo
KTsKICAgICBhdXRvKiByZWdleHAgPSBqc0R5bmFtaWNDYXN0PFJlZ0V4cE9iamVjdCo+KHZtLCB0
aGlzVmFsdWUpOwogICAgIGlmIChVTkxJS0VMWSghcmVnZXhwKSkKLSAgICAgICAgcmV0dXJuIHRo
cm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkJ1aWx0aW4gUmVnRXhwIGV4ZWMg
Y2FuIG9ubHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVjdCIpOworICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQnVpbHRpbiBSZWdFeHAgZXhl
YyBjYW4gb25seSBiZSBjYWxsZWQgb24gYSBSZWdFeHAgb2JqZWN0Il9zKTsKICAgICBKU1N0cmlu
Zyogc3RyaW5nID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50b1N0cmluZ09yTnVsbChnbG9iYWxP
YmplY3QpOwogICAgIEVYQ0VQVElPTl9BU1NFUlQoISFzY29wZS5leGNlcHRpb24oKSA9PSAhc3Ry
aW5nKTsKICAgICBpZiAoIXN0cmluZykKQEAgLTM0Myw3ICszNDMsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncywgKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsCiAgICAgYXV0byBmbGFncyA9IGZsYWdzU3RyaW5nKGdsb2JhbE9iamVjdCwgYXNP
YmplY3QodGhpc1ZhbHVlKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBm
bGFncy5kYXRhKCkpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBT
dHJpbmcgeyBmbGFncy5kYXRhKCkgfSkpOwogfQogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
cmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXgg
MzkwMjk5MGM3YWVkOTdlNWUwYWFkYWFiNWJhYzRkZTY5MGFlYjdmYS4uM2U2MmU0YzE1MWFkOTQw
NjAyMWQwN2I3NDU0ZWQyOTc2NGVhYTQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNw
cApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFJlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAgU3RyaW5n
IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiUmVnRXhwIFN0cmlu
ZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBSZWdF
eHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKaW5kZXggNjA5MTE4MTA0Mzg3MDUxZDZiNmM1Y2Jh
NTJiOGQ3YWE5ZWNhZTk0My4uZDMxMzFlNmI5M2YxN2M5ZmMwZWYyMThkZmFhMDE2MDA0Njk4Zjhh
NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVu
dHMuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2NvcGVkQXJndW1lbnRzKTsKIAotY29uc3QgQ2xh
c3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVu
dHMpIH07Citjb25zdCBDbGFzc0luZm8gU2NvcGVkQXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1
bWVudHMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU2NvcGVkQXJndW1lbnRzKSB9OwogCiBTY29wZWRBcmd1bWVudHM6OlNjb3BlZEFyZ3Vt
ZW50cyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBXcml0ZUJhcnJpZXI8VW5rbm93bj4q
IHN0b3JhZ2UsIHVuc2lnbmVkIHRvdGFsTGVuZ3RoKQogICAgIDogR2VuZXJpY0FyZ3VtZW50cyh2
bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCmluZGV4IDE0ZmMyZmI2MDRiMzRlZjg5MDUzMzlhNjUx
YzRmZTVlZjA1ZjEwZDkuLmFhMmRmNGNkMTgwYjNiMjVkY2IwN2M4Y2JkYzhmZjdkYmMyOTAwYTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50
c1RhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1
bWVudHNUYWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHNUYWJsZTo6c19pbmZvID0geyAiU2NvcGVkQXJn
dW1lbnRzVGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFNjb3BlZEFyZ3VtZW50c1RhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3Vt
ZW50c1RhYmxlOjpzX2luZm8gPSB7ICJTY29wZWRBcmd1bWVudHNUYWJsZSJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVudHNUYWJs
ZSkgfTsKIAogU2NvcGVkQXJndW1lbnRzVGFibGU6OlNjb3BlZEFyZ3VtZW50c1RhYmxlKFZNJiB2
bSkKICAgICA6IEJhc2Uodm0sIHZtLnNjb3BlZEFyZ3VtZW50c1RhYmxlU3RydWN0dXJlLmdldCgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0
YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxl
LmNwcAppbmRleCA0MjFkNzAwZTQ2YWZiODA4ZTdkNWE1NzBkY2FmNWY1YzdiYTliNDFmLi5jNmE5
ZWFiNjcxNGNlNDJjNDEwODdiZGIwOGZjOTIxNzRhYzhlY2JmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcApAQCAtNDQsNyArNDQs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFi
bGU6OnNfaW5mbyA9IHsgIlNjcmlwdEV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY3JpcHRFeGVjdXRhYmxl
KSB9OworY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlNjcmlw
dEV4ZWN1dGFibGUiX3MsICZFeGVjdXRhYmxlQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjcmlwdEV4ZWN1dGFibGUpIH07CiAKIFNjcmlwdEV4ZWN1
dGFibGU6OlNjcmlwdEV4ZWN1dGFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFZNJiB2bSwgY29u
c3QgU291cmNlQ29kZSYgc291cmNlLCBMZXhpY2FsU2NvcGVGZWF0dXJlcyBsZXhpY2FsU2NvcGVG
ZWF0dXJlcywgRGVyaXZlZENvbnRleHRUeXBlIGRlcml2ZWRDb250ZXh0VHlwZSwgYm9vbCBpc0lu
QXJyb3dGdW5jdGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFs
Q29udGV4dFR5cGUgZXZhbENvbnRleHRUeXBlLCBJbnRyaW5zaWMgaW50cmluc2ljKQogICAgIDog
RXhlY3V0YWJsZUJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAppbmRleCBkNTQ0MzNiZmVlNGZkZGRhNWY0NzA2
NzdhZjQ1N2Y5YmY0Zjc0ZTQ1Li4zMWYzMDdlNjkwNzEyMjBhNzYyYjU5YjIyN2JkYzQwZGViMDBi
MWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTZXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU2V0UHJvdG90eXBlKiBzZXRQcm90b3R5cGUsIEdldHRlclNldHRlciogc3BlY2ll
c1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nl
dEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzZmFiNmUzODY1NTNmMzFkZDk5ZDQ0ZDMzMWFl
ZTZhYzY5NmVjMjM0Li45MDYxNzFiY2ZmNjMwNmFhYTc1YTMwYzgxYjE0ODE1MTdhY2Q4MGQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JQ
cm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvclByb3RvdHlwZSkgfTsK
IAogdm9pZCBTZXRJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldFByb3RvdHlwZS5jcHAKaW5kZXggYTZlZmMyZmJiMzE0NDZlODJhNDYzNDIxMmYy
N2I2ZDBkNGQ1OTJjZS4uNTRjMjJkYzE3NjUyN2I0YmFkZmY1NDRkMGRkNjNiZTdmY2JjMjVmOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRQcm90b3R5cGUuY3BwCkBA
IC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2V0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAmc2V0UHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFNldFByb3RvdHlwZTo6c19pbmZvID0geyAiU2V0Il9zLCAmQmFzZTo6c19p
bmZvLCAmc2V0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFNldEl0ZXJhdG9yUHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gc2V0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYzg4NmJhYzA2
M2I0MmM2NzJmMmZlYzk1MTgxZjEwMTdiNjZhZjFhZi4uNDU2NDg0NDc0NzkxNGQ2MGY4YzNlNTU2
Nzc2Y2IzNjM2ZTZkOWJiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbUNvbnN0cnVjdG9yKSB9OwogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcik7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxt
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtT2Jq
ZWN0LmNwcAppbmRleCAzMzYxNDZjNTJlNGFiODNiYTExZmEyZmI3ODNlMDhjOGQ5MjRmNGE0Li5l
MGZkNGVmNmM5MzliNzJkM2ZmZjAwYjk1MGU4MTdlNTBlNWYyMTNmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1PYmplY3QuY3BwCkBAIC0zOSw3
ICszOSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShTaGFkb3dS
ZWFsbU9iamVjdCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93
UmVhbG1PYmplY3Q6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbU9iamVjdCkgfTsK
K2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbU9iamVjdDo6c19pbmZvID0geyAiU2hhZG93UmVh
bG0iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU2hhZG93UmVhbG1PYmplY3QpIH07CiAKIFNoYWRvd1JlYWxtT2JqZWN0OjpTaGFkb3dSZWFs
bU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93
UmVhbG1Qcm90b3R5cGUuY3BwCmluZGV4IDhlODg2NjYzOTgzYWYzYTU3YzYzMTFlN2EwODhmYzY1
ZTdkYTNhNTIuLjc0Y2NhMDY1NzI0YmI0YTZhYjI5OWJhMTcxNTE5M2QwMTNlZDczMDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbVByb3Rv
dHlwZS5jcHAKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1j
b25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1Jl
YWxtIiwgJkJhc2U6OnNfaW5mbywgJnNoYWRvd1JlYWxtUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIl9zLCAm
QmFzZTo6c19pbmZvLCAmc2hhZG93UmVhbG1Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbVByb3RvdHlwZSkgfTsKIAogU2hhZG93UmVhbG1Qcm90
b3R5cGU6OlNoYWRvd1JlYWxtUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IDE2
MTU3Y2YwN2UwZWE2YWMwZjUwODlhNzM1YWFlMzNiZmI2ZDEwZTUuLjhkZDZiZDMzMmZiZDIzMGQ5
MGVhMDU0OTc0NzA3MDliY2ExODRkMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6
c19pbmZvID0geyAiU3BhcnNlQXJyYXlWYWx1ZU1hcCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJyYXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2luZm8gPSB7ICJTcGFyc2VBcnJheVZhbHVl
TWFwIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNw
YXJzZUFycmF5VmFsdWVNYXApIH07CiAKIFNwYXJzZUFycmF5VmFsdWVNYXA6OlNwYXJzZUFycmF5
VmFsdWVNYXAoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0uc3BhcnNlQXJyYXlWYWx1ZU1hcFN0
cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcAppbmRleCA0NGVkZDE1NmFmMDczYTIyMjVjY2U2NTBk
ZTU5ZmJmZjYxYjRjZTdkLi5lZWUzMzU3MDJiMjE1ZjFhMzZhZDQ4ZTEyOTk4MGRkNGZjYTMyYmQx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RFdmFsQWN0
aXZhdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZh
bEFjdGl2YXRpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaWN0RXZhbEFjdGl2YXRpb24p
OwogCi1jb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFjdGl2YXRpb246OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RyaWN0RXZhbEFjdGl2YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFj
dGl2YXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RFdmFsQWN0aXZhdGlvbikgfTsKIAog
U3RyaWN0RXZhbEFjdGl2YXRpb246OlN0cmljdEV2YWxBY3RpdmF0aW9uKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29wZSkKICAgICA6IEJhc2Uodm0sIHN0
cnVjdHVyZSwgY3VycmVudFNjb3BlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IDkyZGM5NDY5ZDJhODRjNTQ5MjIwZTIx
ZjVmMTZmNzdhMDA1NWZkODUuLjkyZmUzOTJkNjhjNGYyYTI4MGNmNDkyYTJjYTZjODYyODZkOGVj
YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25z
dHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oc3RyaW5nRnJvbUNvZGVQb2ludCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVy
bmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
U3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAmc3RyaW5nQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTdHJpbmdDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTdHJpbmdD
b25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN0cmluZ0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90
eXBlLmNwcAppbmRleCA2MTQ0YjMxNGRlMGI0MjZhNWMzNmNiYjRlNTYzZDRkM2I4YTNhM2UxLi5h
NmY3MzFmZjZiMTE3MjMwMzVkZTc1NDRkZjQzZDNlOTQxOTMyYWM5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Ry
aW5nSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKaW5kZXggNjFiZTMxOTIxZDA4MjUz
OGVlNTk3N2ZiYzY5OTY1MGYxMDRmNjg0Yi4uNjA1Y2M0ODYyNWUwNDViNmJlYmRhYjc2ZGU2N2Ew
Njk3MDgyYzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3Ry
aW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdP
YmplY3QuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaW5nT2JqZWN0KTsKIAotY29uc3QgQ2xh
c3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAiU3RyaW5nIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2Jq
ZWN0KSB9OwogCiBTdHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKaW5kZXggZjNiMzgzZGNiYTQy
NTNhNGFjOTI1NTg0ZDE5YmM4MDc2Yjk0YTU0YS4uMjRmMWUxNjUzOTMyOGQ4ZjlhODkyYmRkNjA5
NTRmZjUxNDBmYWZjYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdQcm90b3R5cGUuY3BwCkBAIC04NSw3ICs4NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY0l0ZXJhdG9yKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyIs
ICZTdHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0cmluZ1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBT
dHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyJfcywgJlN0cmluZ09iamVjdDo6c19p
bmZvLCAmc3RyaW5nUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RyaW5nUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFN0cmluZ0NvbnN0cnVjdG9yLmx1
dC5oCiBAYmVnaW4gc3RyaW5nUHJvdG90eXBlVGFibGUKQEAgLTE2MjEsNyArMTYyMSw3IEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSB0b0xvY2FsZUNhc2UoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgQ2FsbEZyYW1lKiBjYWxsCiAgICAgYXV0byBjb252ZXJ0Q2FzZSA9IG1vZGUgPT0gQ2Fz
ZUNvbnZlcnNpb25Nb2RlOjpMb3dlciA/IHVfc3RyVG9Mb3dlciA6IHVfc3RyVG9VcHBlcjsKICAg
ICBhdXRvIHN0YXR1cyA9IGNhbGxCdWZmZXJQcm9kdWNpbmdGdW5jdGlvbihjb252ZXJ0Q2FzZSwg
YnVmZmVyLCBTdHJpbmdWaWV3IHsgcyB9LnVwY29udmVydGVkQ2hhcmFjdGVycygpLmdldCgpLCBz
Lmxlbmd0aCgpLCBsb2NhbGUudXRmOCgpLmRhdGEoKSk7CiAgICAgaWYgKFVfRkFJTFVSRShzdGF0
dXMpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCB1X2Vycm9yTmFtZShzdGF0dXMpKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgU3RyaW5nIHsgdV9lcnJvck5hbWUoc3RhdHVzKSB9KTsKIAog
ICAgIC8vIDE4LiBSZXR1cm4gTC4KICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFs
dWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nKGJ1ZmZlcikpKSk7CkBAIC0xNzE4LDcgKzE3
MTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jU3RhcnRzV2l0
aCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVz
c2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhwcmVz
c2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUgYSBS
ZWdFeHAiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCBjYW5ub3QgYmUg
YSBSZWdFeHAiX3MpOwogCiAgICAgU3RyaW5nIHNlYXJjaFN0cmluZyA9IGEwLnRvV1RGU3RyaW5n
KGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CkBAIC0xNzUyLDcgKzE3NTIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
c3RyaW5nUHJvdG9GdW5jRW5kc1dpdGgsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAog
ICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3Qs
IGEwKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsK
ICAgICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUu
ZW5kc1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBl
LmVuZHNXaXRoIGNhbm5vdCBiZSBhIFJlZ0V4cCJfcyk7CiAKICAgICBTdHJpbmcgc2VhcmNoU3Ry
aW5nID0gYTAudG9XVEZTdHJpbmcoZ2xvYmFsT2JqZWN0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKQEAgLTE4MDIsNyArMTgwMiw3IEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTihzdHJpbmdQcm90b0Z1bmNJbmNsdWRlcywgKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgYm9vbCBpc1JlZ3VsYXJFeHByZXNzaW9uID0gaXNSZWdF
eHAodm0sIGdsb2JhbE9iamVjdCwgYTApOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUs
IGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIGlmIChpc1JlZ3VsYXJFeHByZXNzaW9uKQotICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQXJndW1lbnQg
dG8gU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlcyBjYW5ub3QgYmUgYSBSZWdFeHAiKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50
IHRvIFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90IGJlIGEgUmVnRXhwIl9zKTsKIAog
ICAgIFN0cmluZyBzZWFyY2hTdHJpbmcgPSBhMC50b1dURlN0cmluZyhnbG9iYWxPYmplY3QpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAKaW5kZXggYjYwZTNjYjBlM2Jm
NTYzODczMmY4NWMwZGNiMDdjMzk2ZDNmZDY4Yi4uNzI1ODk3Y2E0ODI4YTUwNDhiNzgwMDA1ZjEy
NmM0ZmM0YzU5NzIxZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1
cmUuY3BwCkBAIC0yMzQsNyArMjM0LDcgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSwgY28KICAgICB2
YWxpZGF0ZUZsYWdzKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZTo6c19pbmZvID0g
eyAiU3RydWN0dXJlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0cnVjdHVyZSkgfTsKIAogU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBDcmVh
dGluZ0Vhcmx5Q2VsbFRhZykKICAgICA6IEpTQ2VsbChDcmVhdGluZ0Vhcmx5Q2VsbCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAppbmRleCBj
YTYwYTJmYmY5YjBlYzJmNTZkNTI5YzZlMDBmMmZlMjM0YjMyZGNhLi5iYmIwYjMxYTA4OTM2NTUx
OGRmOGYwZjhiOThjMjExZjhmOTA0ZGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZUNoYWluOjpzX2luZm8gPSB7
ICJTdHJ1Y3R1cmVDaGFpbiIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RydWN0dXJlQ2hhaW4pIH07Citjb25zdCBDbGFzc0luZm8gU3RydWN0dXJlQ2hh
aW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVD
aGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgU3RydWN0
dXJlSUQqIHZlY3RvcikKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAppbmRleCBjMjJh
YWZiODYzYmVlN2MyNTEzZWEwZWY2ZDZjYTNkZDhmZDJjM2Y0Li43MzYzN2Q4NGNkY2Q2MjY4YTc4
ZGFjM2NmMzNjMDI0MjlhMTNlZTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJlUmFyZURhdGE6OnNfaW5mbyA9
IHsgIlN0cnVjdHVyZVJhcmVEYXRhIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVSYXJlRGF0YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1
Y3R1cmVSYXJlRGF0YTo6c19pbmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiX3MsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlUmFyZURhdGEp
IH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6OmNyZWF0ZVN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5jcHAKaW5kZXggYzNkYjE5NmZiOTM0
NmUwNmUwYzVjMWYwZmU0OWI0MWJmMGEzZjdlYi4uMDc1ODk0MTVkOTExOGRiNjVmMjVmZGUwZjU3
MmVhYTEyODZiYzk1ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2wuY3Bw
CkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
U3ltYm9sOjpzX2luZm8gPSB7ICJzeW1ib2wiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2w6OnNf
aW5mbyA9IHsgInN5bWJvbCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTeW1ib2wpIH07CiAKIFN5bWJvbDo6U3ltYm9sKFZNJiB2bSkKICAgICA6IEJh
c2Uodm0sIHZtLnN5bWJvbFN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcAppbmRleCBjNWQwMWI0NDM1YmE3
ZTFiMTk1NDcwMjkwOTk0YmYzODYzOTRiOWM4Li4wNmJmOWQ0YTY1YjVlNTRhZTkzYTVhZGM2YWVl
YWFjMTJhMjFkZmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
eW1ib2xDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3ltYm9sQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3ltYm9sQ29uc3RydWN0
b3IpOwogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnN5bWJvbENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmc3ltYm9sQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTeW1ib2xDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBTeW1ib2xDb25zdHJ1Y3Rv
ci5sdXQuaAogQGJlZ2luIHN5bWJvbENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwCmluZGV4IDc0NzY5OGRhMThjMTAwNzMy
NzJlM2EzZjM0N2NhODk0NmI2OWEyMDUuLmM4NTdiYzQxNjcxM2Q3ODE0NmI3OGViMTI5NmM4NGRl
ZjBjMmUyZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJv
bE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sT2Jq
ZWN0LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN5bWJvbE9iamVjdCk7CiAKLWNvbnN0IENsYXNz
SW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sT2JqZWN0KSB9OworY29u
c3QgQ2xhc3NJbmZvIFN5bWJvbE9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbE9iamVj
dCkgfTsKIAogU3ltYm9sT2JqZWN0OjpTeW1ib2xPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCmluZGV4IGJjZjE2MzUxNjljMDI0
NzcyNGM3MTAzOTE1NTMxYzEyMGQ4OWMzODguLjM1Y2YwMjc0NzY3M2IxYjQwYTIwNmIwZjIzY2M3
YWVmZGRmYmU1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihzeW1ib2xQcm90b0Z1bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBTeW1ib2xQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN5bWJvbCIsICZC
YXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJTeW1ib2wiX3MsICZCYXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgU3ltYm9sUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc3ltYm9sUHJv
dG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5
bWJvbFRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxl
LmNwcAppbmRleCAxYzI3YWQ0OTZjY2Q3Mzc2MTBmYWEwMmExOTAzMDViNmQ1MTRkZjA2Li5iOGJm
YzcyZjI3ODBiMDMwMjY0NDYzNGUyNTkyZDhhMjc0MjZiNDMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sVGFibGU6OnNfaW5mbyA9IHsg
IlN5bWJvbFRhYmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTeW1ib2xUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZv
ID0geyAiU3ltYm9sVGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIERFRklORV9BTExPQ0FUT1JfV0lUSF9IRUFQ
X0lERU5USUZJRVIoU3ltYm9sVGFibGVFbnRyeUZhdEVudHJ5KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAppbmRleCAwNmRmMjU1
Yjk5ODdiZWZiM2Y0MWU1OTExNTZhYTUyYTFmY2JiZGQyLi4zYTUwM2M4NWQ4NzQyMjkxZjQ3YmRk
ZGM5ZmQzYWZkMWM1YzBiZTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2FsZW5kYXI6OnNfaW5mbyA9IHsgIk9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFy
OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKIAogbmFtZXNwYWNlIFRl
bXBvcmFsQ2FsZW5kYXJJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9
IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDk3OTkzMTU2NDZkODc0NzUw
Y2IwNGJmNWVmZDM1ODM3NzcxYWE3MS4uYmU1ZDJjOGY4NTk5ZmQ1OWViNDBkYjFlNTNkYWQzZDI0
YjVkODE2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rv
ckZ1bmNGcm9tKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVu
Y3Rpb246OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmdGVtcG9yYWxDYWxlbmRhckNv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxl
bmRhckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsQ2FsZW5kYXJDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFy
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCmluZGV4IDhmYjNhNTM0Y2RlNDhhMzM0M2Y4MTI5NzY0ZjUyZWJj
OGM3YWI5MzUuLjMzNzA0YjBjOWY5M2I3YzMzNTQwMGMyZDZkODM4Njc5MzkwZGEyYjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGUuY3BwCkBAIC00Niw3ICs0Niw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9D
VVNUT01fR0VUVEVSKHRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVHZXR0ZXJJZCk7CiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxD
YWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRh
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiX3MsICZCYXNlOjpzX2lu
Zm8sICZ0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBU
ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxDYWxlbmRhclBy
b3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbER1cmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsRHVyYXRpb24uY3BwCmluZGV4IDc3ZDk5YWEzZDBjN2ZkODM5Mzk0MTY2MmQxMjVhMWJiN2Jk
MTlhMGMuLmQ3YmVhNDA2MGNjYzVlNzlkNjc1ODUzZjQwMTA5MWQ4MGMxNDllZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCkBA
IC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBzdGF0aWMgY29uc3RleHByIGRvdWJs
ZSBuYW5vc2Vjb25kc1BlckRheSA9IDI0LjAgKiA2MCAqIDYwICogMTAwMCAqIDEwMDAgKiAxMDAw
OwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbjo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbER1cmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb246OnNf
aW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uKSB9OwogCiBUZW1wb3JhbER1cmF0aW9u
KiBUZW1wb3JhbER1cmF0aW9uOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SVNPODYwMTo6RHVyYXRpb24mJiBkdXJhdGlvbikKIHsKQEAgLTUxNSw3ICs1MTUsNyBAQCBkb3Vi
bGUgVGVtcG9yYWxEdXJhdGlvbjo6dG90YWwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNWYWx1ZSBvcHRpb25zVmFsdQogICAgIEpTT2JqZWN0KiBvcHRpb25zID0gaW50bEdldE9wdGlv
bnNPYmplY3QoZ2xvYmFsT2JqZWN0LCBvcHRpb25zVmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIDApOwogCi0gICAgU3RyaW5nIHVuaXRTdHJpbmcgPSBpbnRsU3RyaW5nT3B0
aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dW5pdCwgeyB9LCBu
dWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgdW5pdFN0cmluZyA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT51bml0LCB7IH0sIEFT
Q0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgMCk7CiAKICAgICBhdXRvIHVuaXRUeXBlID0gdGVtcG9yYWxVbml0
VHlwZSh1bml0U3RyaW5nKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkM2NlZjEw
NTY2M2I3MzgzZmM5MzhhOGQ0NjhiOTc5NmE1OGM2MGMuLjYxOWJmMjdiOGFkM2U0OWQ3YzVkNTE1
ZTAxMmQwZDliYzg1OTYxMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyAr
NDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbER1cmF0aW9u
Q29uc3RydWN0b3JGdW5jQ29tcGFyZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1
Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiB0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcAppbmRleCAwY2I0NDJlMjkwYmY4ZmExYTJkNmRlODhmOTYxOWQ3NmIyYmFmM2M0Li4y
ODJmODhhYWQxNTgyMDY2N2RjMjY0NzkzZWQ2NDhjODVmZTcwM2IxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uUHJvdG90
eXBlLmNwcApAQCAtNjIsNyArNjIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRF
Uih0ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlR2V0dGVyQmxhbmspOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlbXBvcmFsLkR1cmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZW1wb3JhbC5EdXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmR1cmF0aW9uUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlv
blByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gZHVyYXRpb25Qcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5jcHAKaW5kZXggNmY2OGNmMGZmM2Nk
MmM4NTcxMzc0YWJiM2UwMmM3MTNjMjA1ZmY1MC4uNWE4NTE5ZDNjYjdhMmE3MDg0NzNmNDc5ZTI3
ZDAwYzFlMzg1ZTM3YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxJbnN0YW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbEluc3RhbnQuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50OjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsSW5zdGFudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnQ6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnQpIH07CiAKIFN0cnVjdHVyZSogVGVtcG9yYWxJbnN0
YW50OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcAppbmRleCA4NjFk
ODBjMTg4N2UyNjUwZjBjZDc3MmE3Mzc1Zjk5Y2Q2NGFlNTNmLi4zZDJiMTBmOTY5YWJhNDRmNjRh
Y2MxYzRhZWRiMTQ1OGM1MjEyZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IuY3BwCkBAIC00OCw3
ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsSW5zdGFu
dENvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3Ip
IH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiB0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlLmNwcApp
bmRleCBhNDI2YmUwNmZmZDM5NDEwNjNjMWZmMmI1MTg3Yjk5YzYxNTY1YzMzLi43MzAxYmYzMTQ3
NTNkODEwOWMxYmI1YWVmYmI2ZWE2MDdkZWM3YmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHAKQEAg
LTU1LDcgKzU1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxJ
bnN0YW50UHJvdG90eXBlR2V0dGVyRXBvY2hOYW5vc2Vjb25kcykKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiLCAmQmFzZTo6c19pbmZvLCAmaW5zdGFudFByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLkluc3RhbnQiX3MsICZCYXNlOjpzX2luZm8sICZpbnN0YW50UHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50UHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5sdXQuaAogQGJl
Z2luIGluc3RhbnRQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwCmluZGV4IDVkYWU5OGNjNjQwZmU5MmM2OGQyYzE1MDEwZjU3NGYy
Yjc2OTRjYjkuLjNlNWY1NGQ2OWRkMjA1MjY3ZDNkZGM5ZjkzMGVmOGU1YjM1ZDJhNWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5vdy5jcHAKQEAgLTQ4LDcg
KzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVt
cG9yYWxOb3c6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLk5vdyIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9
OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2luZm8gPSB7ICJUZW1wb3JhbC5Ob3ci
X3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9OwogCiBUZW1wb3JhbE5vdzo6VGVtcG9yYWxOb3coVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcAppbmRl
eCAzY2QyZmEzNzMzYmE3MDBmYjZhZTcyZGIwOTkyMDRlMTkzODdiYTIwLi42NmI4Yjk2NWM5ZWYy
OWNlMDU1ZmUzZjkxOTVmZTRjZDJhZDMwMjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCkBAIC0xMTYsNyArMTE2LDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNf
aW5mbyA9IHsgIlRlbXBvcmFsIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsT2JqZWN0VGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlbXBvcmFsIl9zLCAmQmFzZTo6
c19pbmZvLCAmdGVtcG9yYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbE9iamVjdCkgfTsKIAogVGVtcG9yYWxPYmplY3Q6OlRlbXBvcmFsT2JqZWN0KFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCkBA
IC0yMzAsNyArMjMwLDcgQEAgc3RkOjpvcHRpb25hbDxUZW1wb3JhbFVuaXQ+IHRlbXBvcmFsTGFy
Z2VzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlMKICAgICBWTSYgdm0gPSBn
bG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgU3RyaW5nIGxhcmdlc3RVbml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxhcmdlc3RVbml0LCB7IH0sIG51bGxw
dHIsIG51bGxwdHIpOworICAgIFN0cmluZyBsYXJnZXN0VW5pdCA9IGludGxTdHJpbmdPcHRpb24o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYXJnZXN0VW5pdCwgeyB9
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVsbG9wdCk7CiAKICAgICBpZiAoIWxhcmdlc3RV
bml0KQpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0ZDo6b3B0aW9uYWw8VGVtcG9yYWxVbml0PiB0ZW1w
b3JhbFNtYWxsZXN0VW5pdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9X
X1NDT1BFKHZtKTsKIAotICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3RyaW5nT3B0aW9u
KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxlc3RVbml0LCB7
IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBzbWFsbGVzdFVuaXQgPSBpbnRsU3Ry
aW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c21hbGxl
c3RVbml0LCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgc3RkOjpudWxsb3B0KTsKIAogICAgIGlm
ICghc21hbGxlc3RVbml0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpbkRhdGUuY3BwCmluZGV4IGRhMmJiNzQ4MDcwN2VhNDU4OTdkZmJkN2I3ZWEy
NjE4ODZjNzdmMGYuLmJhMmNkYjgyOGM0NGU4NTE1OTZhZTM0NDkzZjYzN2I4ZDMwZmZjMDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0
ZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRlbXBvcmFsUGxhaW5EYXRlSW50ZXJu
YWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxh
aW5EYXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8gPSB7
ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGUpIH07CiAKIFRlbXBvcmFsUGxhaW5EYXRlKiBUZW1w
b3JhbFBsYWluRGF0ZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIElTTzg2
MDE6OlBsYWluRGF0ZSYmIHBsYWluRGF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzllNjBmMTU3MWNhMTk2YTlmNzA5ZmE3NmYwZmFlOTNiNGJmMGQzZS4uNTRjNWM5NmZh
NWI2OWIyYjgwOTdlZjFjMjkyYWI4MWRlMjk2NGJlMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
dGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRh
dGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcAppbmRleCBjZDg4MzBiYmEyOTRlZTcz
ZWQ4ODM0YjZlYjliODY0N2I2OTNhMDI4Li5iZmVhOTA3NDlmZmY4ZmFjN2MxZWU5MDM3NjZjMzgx
NzY0NzNmMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBl
R2V0dGVyRGF5KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuUGxhaW5EYXRlIiwgJkJh
c2U6OnNfaW5mbywgJnBsYWluRGF0ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5QbGFpbkRh
dGUiX3MsICZCYXNlOjpzX2luZm8sICZwbGFpbkRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBsYWlu
RGF0ZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKaW5kZXggZjMzZjZhZmZiOTA4MGY2MDA4OGRjMTA0YTk0
NTRmMjIzYmViOTZlNS4uYWE1YTU4YzA2NzZmNDAxNDEwMTZmNDJmNTQ5NDg4YzcyMzEzOTVmZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5U
aW1lLmNwcApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2UgVGVtcG9yYWxQbGFpblRpbWVJbnRl
cm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwogfQogCi1jb25z
dCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQ
bGFpblRpbWUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZSkgfTsKIAogVGVtcG9yYWxQbGFpblRpbWUqIFRl
bXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSVNP
ODYwMTo6UGxhaW5UaW1lJiYgcGxhaW5UaW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNw
cAppbmRleCBkNjdjZmM5YTUwYTZmYmZmOTgyZjI4MDY2Y2VhNzcyYTE4YzEzMWE4Li43ZjI4YTgx
MWY5MDI4NDkwNDdlYzk5M2MwNTI0OGZjZjU2NjAyYWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZUNvbnN0cnVj
dG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
Tih0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWlu
VGltZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsUGxhaW5UaW1lQ29u
c3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwCmluZGV4IGU0OTY3ZDRmOTQ5NThk
M2NjM2EyYjc1N2M3MDNjMWI4NDg0ZGQ1NDguLmZjODhmNzI4NDFhNmVlOTk5MTQ4NjE0NWNlYzVk
YzI4NDUyODA5YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZS5jcHAKQEAgLTU5LDcgKzU5LDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxQbGFpblRpbWVQcm90b3R5
cGVHZXR0ZXJDYWxlbmRhcik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlBsYWluVGlt
ZSIsICZCYXNlOjpzX2luZm8sICZwbGFpblRpbWVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwu
UGxhaW5UaW1lIl9zLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5UaW1lUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUubHV0LmgKIEBiZWdp
biBwbGFpblRpbWVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcAppbmRleCAxMDFhZDc2ZTc2NjY0MDc2Njk1OTA2
NWFhNWM3NGRlNjk2YWM4MWU0Li4wYzY1YzM4YjE5NGVkNjhiODk1ZjBhNTFjNDczZmMxYTBmZjZi
M2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRp
bWVab25lLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmU6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1l
Wm9uZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lOjpzX2luZm8gPSB7ICJP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVtcG9yYWxUaW1lWm9uZSkgfTsKIAogVGVtcG9yYWxUaW1lWm9uZSogVGVtcG9yYWxU
aW1lWm9uZTo6Y3JlYXRlRnJvbUlEKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFRpbWVa
b25lSUQgaWRlbnRpZmllcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwCmluZGV4IGRkNzUz
YzAzMWUxY2RiN2RhMjAzMmNlODgwODBhMzM5ZWM0YjQwYWYuLjQzYzdhMDYzZGQyZTM5MTE4Zjg2
ZjI0YWVlYTk5MzEyMGRkZWUyZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbFRpbWVa
b25lQ29uc3RydWN0b3JGdW5jRnJvbSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRlbXBv
cmFsVGltZVpvbmVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3Jh
bFRpbWVab25lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcAppbmRleCA2ZjU3NTU3OWUzZWFmYjYxMzkz
ZjE1MWM2YmZiYjRhM2NhY2Y3YTgxLi5iM2I0MzkzN2NiZTdjNmQzYzU0OWE1YTYzMTk5MDllYjAw
MDhhMGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bFRpbWVab25lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMg
SlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFRpbWVab25lUHJvdG90eXBlR2V0dGVy
SWQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpv
bmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIiwgJkJhc2U6OnNfaW5m
bywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsVGltZVpvbmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRpbWVab25lIl9z
LCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZVRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUpIH07CiAKIC8q
IFNvdXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHRlbXBv
cmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1R5cGVQcm9maWxlci5jcHAKaW5kZXggN2UxYmNlMjliYWZlZmZiY2E2NGZjNTQ1ZWE0YWI4
OGM4ZWUxZmQ2Mi4uNWZhYjFiODMwNTNjMzgyZWJhMDgyYTk0YWQ4ZTYzZDY5ZjU3NDU5NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwCkBAIC01
Myw5ICs1Myw5IEBAIHZvaWQgVHlwZVByb2ZpbGVyOjpsb2dUeXBlc0ZvclR5cGVMb2NhdGlvbihU
eXBlTG9jYXRpb24qIGxvY2F0aW9uLCBWTSYgdm0pCiAKICAgICBkYXRhTG9nKCJcdFx0IiwgbG9j
YXRpb24tPm1fZ2xvYmFsVmFyaWFibGVJRCA9PSBUeXBlUHJvZmlsZXJSZXR1cm5TdGF0ZW1lbnQg
PyAiW1JldHVybiBTdGF0ZW1lbnRdIiA6ICJbTm9ybWFsIFN0YXRlbWVudF0iLCAiXG4iKTsKIAot
ICAgIGRhdGFMb2coIlx0XHQjTG9jYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1faW5zdHJ1Y3Rpb25U
eXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIsICJcblx0XHQiKSwgIlxuIik7CisgICAg
ZGF0YUxvZygiXHRcdCNMb2NhbCNcblx0XHQiLCBsb2NhdGlvbi0+bV9pbnN0cnVjdGlvblR5cGVT
ZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIl9zLCAiXG5cdFx0Il9zKSwgIlxuIik7CiAgICAg
aWYgKGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQpCi0gICAgICAgIGRhdGFMb2coIlx0XHQjR2xv
YmFsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQtPmR1bXBUeXBlcygpLnJlcGxh
Y2UoIlxuIiwgIlxuXHRcdCIpLCAiXG4iKTsKKyAgICAgICAgZGF0YUxvZygiXHRcdCNHbG9iYWwj
XG5cdFx0IiwgbG9jYXRpb24tPm1fZ2xvYmFsVHlwZVNldC0+ZHVtcFR5cGVzKCkucmVwbGFjZSgi
XG4iX3MsICJcblx0XHQiX3MpLCAiXG4iKTsKIH0KIAogdm9pZCBUeXBlUHJvZmlsZXI6Omluc2Vy
dE5ld0xvY2F0aW9uKFR5cGVMb2NhdGlvbiogbG9jYXRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1R5cGVTZXQuY3BwCmluZGV4IGQ4OGJhMjhjM2YzMDkyNzJlM2RhMmVjNDI2Yjkz
OWVkMWU5OTUxY2YuLjczM2Y5ODEyZjE4ZThmNjE4ZTRlYTkwN2Y5MWNiMjUzZjdjMDhlY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCkBAIC0zNDgsNyArMzQ4
LDcgQEAgU3RyaW5nIFN0cnVjdHVyZVNoYXBlOjpwcm9wZXJ0eUhhc2goKQogICAgIGJ1aWxkZXIu
YXBwZW5kKCc6Jyk7CiAgICAgZm9yIChhdXRvJiBrZXkgOiBtX2ZpZWxkcykgewogICAgICAgICBT
dHJpbmcgcHJvcGVydHkgPSBrZXkuZ2V0KCk7Ci0gICAgICAgIHByb3BlcnR5LnJlcGxhY2UoIjoi
LCAiXFw6Iik7IC8vIEVuc3VyZSB0aGF0IGhhc2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsi
Zm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdyZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3Ig
YW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFjdGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KKyAg
ICAgICAgcHJvcGVydHkucmVwbGFjZSgiOiJfcywgIlxcOiJfcyk7IC8vIEVuc3VyZSB0aGF0IGhh
c2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsiZm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdy
ZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3IgYW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFj
dGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KICAgICAgICAgYnVpbGRlci5hcHBlbmQocHJvcGVy
dHkpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ViMGZlNDU1NDE3OWE1MTRiMzMyOGYzZDJkNzYy
NDRkYmE0ZWU0Zi4uMTc3ZDFlODE3Mzc4YTFjMTgyNjI1YjkwYTljODA0NzM4ZDhmMzNmNyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0
b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gV2Vha01hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcENvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2Vha01hcENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIFdlYWtNYXBDb25zdHJ1
Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBXZWFrTWFwUHJvdG90eXBlKiBwcm90b3R5cGUp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5
cGUuY3BwCmluZGV4IGI4NTZkNzYxMzViZjYxYmZhM2QzODM0YjZjZTA1M2Q3YmM0ZjZmODMuLjE0
NDRjZjZjODI1NzgyNzg3ZDliMjBlZGNlZjM2NmI1NWFiNTgyODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBBU0NJSUxpdGVyYWwgV2Vha01hcE5vbk9i
amVjdEtleUVycm9yIHsgIkF0dGVtcHRlZCB0byBzZXQgYSBub24tb2JqZWN0IGtleSBpbiBhIFdl
YWtNYXAiX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYWtNYXBQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrTWFwRGVsZXRlKTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtNYXBHZXQpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZD
b25zdHJ1Y3Rvci5jcHAKaW5kZXggZmJmYWYzNWM3OGJmNmU5Njg3MWNjMGQ3NDEwMWZjZmJiMDdk
ZTk4Ni4uZjU0ZGEyNTU5YzdkZWJhYjYzMGIwYmYwMmM5NDA2NzcyMjkzYTZhYiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29u
c3RydWN0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2Vha09iamVjdFJlZkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RS
ZWZDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZkNvbnN0cnVj
dG9yKSB9OwogCiB2b2lkIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBXZWFrT2JqZWN0UmVmUHJvdG90eXBlKiBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUu
Y3BwCmluZGV4IDgzYTIwNDYwOWQ5YWQ3YmFlOGFhODhiMTIyOGMxY2I3NjQ5ZWY4MDguLjgyOTRh
YTUyMWQyYWM2YThhMTRhYmI1NmU1NjI3NTgxNmM2MTYwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCkBA
IC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vh
a09iamVjdFJlZlByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1JlZiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZlByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrT2JqZWN0UmVmUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWFrUmVmIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtSZWZEZXJlZik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCmluZGV4
IGM4ZGFhYjQ2YjAzZGIwM2UwZTdhYWFmNzEwZjkxMzQ4NDE1ZjZhYjAuLjg3NGNhOTZiN2E5ZGQx
ZGU3ZjMzZjc1NDYwNDg1Y2VmNDQ1YzQwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtTZXRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWFrU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBXZWFrU2V0Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSwgV2Vha1NldFByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNwcAppbmRleCBjMTdmZmNmMDdiNjgx
ZWM4YWFkZmM4YTE5ZmYzNzUwMDAwOGNlMGQ3Li40MmEyMmFmODAyNjg1YjI1ZjY2YmE0MDk0OWQy
MTIzOGI1ZTE5YzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrU2V0UHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
Y29uc3QgQVNDSUlMaXRlcmFsIFdlYWtTZXROb25PYmplY3RWYWx1ZUVycm9yIHsgIkF0dGVtcHRl
ZCB0byBhZGQgYSBub24tb2JqZWN0IHZhbHVlIHRvIGEgV2Vha1NldCJfcyB9OwogCi1jb25zdCBD
bGFzc0luZm8gV2Vha1NldFByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1NldCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha1NldFByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrU2V0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWFrU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYWtTZXRQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKHByb3RvRnVuY1dlYWtTZXREZWxldGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04ocHJvdG9GdW5jV2Vha1NldEhhcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4
cC5jcHAKaW5kZXggODRiYzdjZjJkYmE2ZTYxZjM0ZmFlNWM0ZWRlMzNjNzczNTA0YWQxMi4uN2Qy
NmIxNmJmOWYzZmNiZDMwYWVlZmQwNmNmZGQ5OTk4NWMwMTA1NSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0UmVnRXhwLmNwcApAQCAtMTIyLDcgKzEyMiw3IEBAIHByaXZhdGU6CiB9OwogU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoR2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamVj
dCk7CiAKLWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIs
ICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNf
aW5mbyA9IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogCiBHbG9iYWxPYmpl
Y3Q6Okdsb2JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgYXJndW1lbnRzKQogICAgIDogSlNHbG9iYWxPYmplY3Qodm0sIHN0cnVjdHVy
ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93
bGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3Qu
Y3BwCmluZGV4IGFhY2Q3NWRhODdhYjkzYzJkNDBiZjdiZWM1OTE2ZDdjNjcwNjk1NzkuLjI0MmYx
MDc3ODQ0ZDQ3NjFkNDA4ODhkZWFiNGJiMWRhNzgyMTE1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uQWxsb3dsaXN0LmNwcApAQCAtNDQsNyArNDQsNyBA
QCBGdW5jdGlvbkFsbG93bGlzdDo6RnVuY3Rpb25BbGxvd2xpc3QoY29uc3QgY2hhciogZmlsZW5h
bWUpCiAgICAgaWYgKCFmKSB7CiAgICAgICAgIGlmIChlcnJubyA9PSBFTk9FTlQpIHsKICAgICAg
ICAgICAgIG1faGFzQWN0aXZlQWxsb3dsaXN0ID0gdHJ1ZTsKLSAgICAgICAgICAgIG1fZW50cmll
cy5hZGQoZmlsZW5hbWUpOworICAgICAgICAgICAgbV9lbnRyaWVzLmFkZChTdHJpbmcgeyBmaWxl
bmFtZSB9KTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBkYXRhTG9nRigiRmFpbGVkIHRv
IG9wZW4gZmlsZSAlcy4gRGlkIHlvdSBhZGQgdGhlIGZpbGUtcmVhZC1kYXRhIGVudGl0bGVtZW50
IHRvIFdlYlByb2Nlc3Muc2I/IEVycm9yIGNvZGU6ICVzXG4iLCBmaWxlbmFtZSwgc2FmZVN0cmVy
cm9yKGVycm5vKS5kYXRhKCkpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlkZXMuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcAppbmRleCA3YTNiMzc5MjRiZTU2
MDU0N2ZjMmRmZmUzMzJkM2U2NmJmOGE5NWY2Li45NTY4NmJhMTkyMGJiMGViMTI3NDA0ZjEzOTFi
YjAyZjViYjE2MDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVu
Y3Rpb25PdmVycmlkZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5j
dGlvbk92ZXJyaWRlcy5jcHAKQEAgLTEzMCw4ICsxMzAsOCBAQCBzdGF0aWMgdm9pZCBpbml0aWFs
aXplT3ZlcnJpZGVJbmZvKGNvbnN0IFNvdXJjZUNvZGUmIG9yaWdDb2RlLCBjb25zdCBTdHJpbmcm
IG5ldwogICAgIEZ1bmN0aW9uT3ZlcnJpZGVzQXNzZXJ0U2NvcGUgYXNzZXJ0U2NvcGU7CiAgICAg
U3RyaW5nIG9yaWdQcm92aWRlclN0ciA9IG9yaWdDb2RlLnByb3ZpZGVyKCktPnNvdXJjZSgpLnRv
U3RyaW5nKCk7CiAgICAgdW5zaWduZWQgb3JpZ1N0YXJ0ID0gb3JpZ0NvZGUuc3RhcnRPZmZzZXQo
KTsKLSAgICB1bnNpZ25lZCBvcmlnRnVuY3Rpb25TdGFydCA9IG9yaWdQcm92aWRlclN0ci5yZXZl
cnNlRmluZCgiZnVuY3Rpb24iLCBvcmlnU3RhcnQpOwotICAgIHVuc2lnbmVkIG9yaWdCcmFjZVN0
YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLmZpbmQoInsiLCBvcmlnU3RhcnQpOworICAgIHVuc2lnbmVk
IG9yaWdGdW5jdGlvblN0YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLnJldmVyc2VGaW5kKCJmdW5jdGlv
biJfcywgb3JpZ1N0YXJ0KTsKKyAgICB1bnNpZ25lZCBvcmlnQnJhY2VTdGFydCA9IG9yaWdQcm92
aWRlclN0ci5maW5kKCd7Jywgb3JpZ1N0YXJ0KTsKICAgICB1bnNpZ25lZCBoZWFkZXJMZW5ndGgg
PSBvcmlnQnJhY2VTdGFydCAtIG9yaWdGdW5jdGlvblN0YXJ0OwogICAgIFN0cmluZyBvcmlnSGVh
ZGVyID0gb3JpZ1Byb3ZpZGVyU3RyLnN1YnN0cmluZyhvcmlnRnVuY3Rpb25TdGFydCwgaGVhZGVy
TGVuZ3RoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9s
bGFyVk0uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9sbGFyVk0uY3BwCmlu
ZGV4IDNmYzcxMTg2YmUyM2M0Nzg2MTlmMzc4NTA2ZGU0MTJiYmQ1N2FjNjYuLmQxOWIwMTc3OWU4
MGMwYjhlMjlhMTQzNTEyZjJhYTc0NjY5ZGZlOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAKQEAgLTIwMyw3ICsyMDMsNyBAQCBwcml2YXRlOgogICAgIH0K
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNQ2FsbEZyYW1lOjpzX2luZm8gPSB7ICJD
YWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEb2xsYXJW
TUNhbGxGcmFtZTo6c19pbmZvID0geyAiQ2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07
CiAKIGNsYXNzIEVsZW1lbnRIYW5kbGVPd25lcjsKIGNsYXNzIFJvb3Q7CkBAIC0xNzgwLDMyICsx
NzgwLDMyIEBAIHZvaWQgSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1l
bnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEVsZW1lbnQpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkg
fTsKLWNvbnN0IENsYXNzSW5mbyBTaW1wbGVPYmplY3Q6OnNfaW5mbyA9IHsgIlNpbXBsZU9iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2ltcGxlT2JqZWN0KSB9OwotY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0g
eyAiSW1wdXJlR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbXB1cmVHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0
dGVyOjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1c3RvbUdldHRlcikgfTsKLWNvbnN0IENsYXNz
SW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJheSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OworY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9IHsgIkVsZW1lbnQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBSb290OjpzX2luZm8gPSB7ICJSb290Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3QpIH07Citjb25z
dCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8gPSB7ICJTaW1wbGVPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2ltcGxl
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdldHRlcjo6c19pbmZvID0geyAiSW1w
dXJlR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEltcHVyZUdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXI6
OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0ZXIpIH07Citjb25zdCBDbGFzc0lu
Zm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklUTm9kZTo6c19pbmZvID0g
eyAiRE9NSklUTm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVj
a1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29u
c3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVja1N1YkNsYXNzU25pcHBldCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OwogI2Vsc2UKLWNvbnN0IENsYXNzSW5mbyBE
T01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OworY29uc3QgQ2xh
c3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsK
ICNlbmRpZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlcjo6c19pbmZvID0geyAiRE9NSklU
R2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyTm9FZmZl
Y3RzOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJOb0VmZmVjdHMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0
cykgfTsKLWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJE
T01KSVRHZXR0ZXJDb21wbGV4IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJDb21wbGV4KSB9OwotY29uc3QgQ2xhc3NJbmZv
IERPTUpJVEdldHRlckJhc2VKU09iamVjdDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklU
R2V0dGVyOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIERPTUpJVEdldHRlck5vRWZmZWN0czo6c19pbmZvID0geyAiRE9NSklUR2V0dGVy
Tm9FZmZlY3RzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0cykgfTsKK2NvbnN0IENsYXNzSW5mbyBET01K
SVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJDb21wbGV4Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdl
dHRlckNvbXBsZXgpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0
OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyQmFzZUpT
T2JqZWN0KSB9OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8gRE9NSklURnVuY3Rp
b25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9uT2JqZWN0IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgJkRPTUpJVEZ1bmN0aW9uT2JqZWN0OjpjaGVja1N1YkNsYXNzU25pcHBldCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRGdW5jdGlvbk9iamVjdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBET01KSVRGdW5jdGlvbk9iamVjdDo6c19pbmZvID0geyAiRE9NSklURnVuY3Rpb25PYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVRGdW5jdGlvbk9iamVjdDo6Y2hl
Y2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmpl
Y3QpIH07CiAjZWxzZQotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2lu
Zm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmplY3QpIH07Citjb25z
dCBDbGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0
aW9uT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9OwogI2VuZGlmCi1jb25zdCBDbGFzc0lu
Zm8gRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVENoZWNrSlNDYXN0
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShET01KSVRDaGVja0pTQ2FzdE9iamVjdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
dXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q3VzdG9tR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVENoZWNrSlND
YXN0T2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRDaGVja0pTQ2FzdE9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRDaGVj
a0pTQ2FzdE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNldHRlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDdXN0b21HZXR0
ZXJTZXR0ZXIpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21BY2Nlc3Nvcjo6c19p
bmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3Vz
dG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0
b21BY2Nlc3NvcikgfTsKLWNvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21WYWx1ZTo6c19pbmZv
ID0geyAiU3RhdGljQ3VzdG9tVmFsdWUiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tVmFs
dWVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0b21WYWx1ZSkg
fTsKLWNvbnN0IENsYXNzSW5mbyBPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVj
dFNsb3RTdGF0dXM6OnNfaW5mbyA9IHsgIk9iamVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRD
b3JyZWN0U2xvdFN0YXR1cyIsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdERvaW5nU2lkZUVmZmVjdFB1
dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKK2NvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0
b21BY2Nlc3Nvcjo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiX3MsICZCYXNlOjpz
X2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0YXRpY0N1c3RvbUFjY2Vzc29yKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0YXRpY0N1
c3RvbVZhbHVlOjpzX2luZm8gPSB7ICJTdGF0aWNDdXN0b21WYWx1ZSJfcywgJkJhc2U6OnNfaW5m
bywgJnN0YXRpY0N1c3RvbVZhbHVlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3RhdGljQ3VzdG9tVmFsdWUpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0RG9pbmdTaWRlRWZm
ZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzOjpzX2luZm8gPSB7ICJPYmplY3REb2luZ1Np
ZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMiX3MsICZCYXNlOjpzX2luZm8sICZz
dGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKIAogRWxl
bWVudEhhbmRsZU93bmVyKiBFbGVtZW50OjpoYW5kbGVPd25lcigpCiB7CkBAIC0xODk1LDcgKzE4
OTUsNyBAQCBwdWJsaWM6CiAgICAgV2FzbTo6U3RyZWFtaW5nUGFyc2VyIG1fc3RyZWFtaW5nUGFy
c2VyOwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdQYXJzZXI6OnNfaW5mbyA9
IHsgIldhc21TdHJlYW1pbmdQYXJzZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdhc21TdHJlYW1pbmdQYXJzZXIpIH07Citjb25zdCBDbGFz
c0luZm8gV2FzbVN0cmVhbWluZ1BhcnNlcjo6c19pbmZvID0geyAiV2FzbVN0cmVhbWluZ1BhcnNl
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXYXNtU3RyZWFtaW5nUGFyc2VyKSB9OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25XYXNtU3RyZWFtaW5nUGFyc2VyQWRkQnl0ZXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCiB7CkBAIC0xOTk2LDcgKzE5OTYsNyBAQCB2
b2lkIFdhc21TdHJlYW1pbmdDb21waWxlcjo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxs
LCBWaXNpdG9yJiB2aXNpdG9yKQogCiBERUZJTkVfVklTSVRfQ0hJTERSRU4oV2FzbVN0cmVhbWlu
Z0NvbXBpbGVyKTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdDb21waWxlcjo6c19p
bmZvID0geyAiV2FzbVN0cmVhbWluZ0NvbXBpbGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nQ29tcGlsZXIpIH07Citj
b25zdCBDbGFzc0luZm8gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpzX2luZm8gPSB7ICJXYXNtU3Ry
ZWFtaW5nQ29tcGlsZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ0NvbXBpbGVyKSB9OwogCiBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25XYXNtU3RyZWFtaW5nQ29tcGlsZXJBZGRCeXRlcywgKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKIHsKQEAgLTIx
NDMsNyArMjE0Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9u
UmVzZXRKSVRTaXplU3RhdGlzdGljcyk7CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uRW5zdXJlQXJyYXlTdG9yYWdlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRG9s
bGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTRG9sbGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk0pIH07CiAKIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBkb1ByaW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbEZyYW1lLCBib29sIGFkZExpbmVGZWVkKQogewpAQCAtMjczMCw3ICsyNzMw
LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uSGF2ZUFCYWRUaW1lLCAoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2EKICAgICBpZiAoIWNhbGxGcmFtZS0+YXJndW1l
bnQoMCkuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU09iamVjdCogb2JqID0gY2FsbEZyYW1l
LT5hcmd1bWVudCgwKS5nZXRPYmplY3QoKTsKICAgICAgICAgaWYgKCFvYmopCi0gICAgICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiaGF2ZUFCYWRU
aW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiaGF2ZUFCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlm
IHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFyZ2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAg
ICB9CiAKQEAgLTI3NDksNyArMjc0OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5j
dGlvbklzSGF2aW5nQUJhZFRpbWUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAg
aWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNP
YmplY3QqIG9iaiA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkuZ2V0T2JqZWN0KCk7CiAgICAgICAg
IGlmICghb2JqKQotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgImlzSGF2aW5nQUJhZFRpbWUgZXhwZWN0cyBmaXJzdCBhcmd1bWVudCB0byBi
ZSBhbiBvYmplY3QgaWYgcHJvdmlkZWQiKTsKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJpc0hhdmluZ0FCYWRUaW1lIGV4cGVjdHMgZmly
c3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFy
Z2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAgICB9CiAKQEAgLTI3OTgsMjAgKzI3OTgsMjAg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxX
aXRoU3RhY2tTaXplLCBTVVBQUkVTU19BU0EKICNlbmRpZgogCiAgICAgaWYgKCFpc1N1cHBvcnRl
ZEJ5UGxhdGZvcm0pCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCAiTm90IHN1cHBvcnRlZCBmb3IgdGhpcyBwbGF0Zm9ybSIpOworICAgICAgICBy
ZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIk5vdCBzdXBwb3J0
ZWQgZm9yIHRoaXMgcGxhdGZvcm0iX3MpOwogCiAjaWYgRU5BQkxFKEFTU0VNQkxFUikKICAgICBp
ZiAoZ19qc2NDb25maWcuaXNQZXJtYW5lbnRseUZyb3plbigpIHx8ICFnX2pzY0NvbmZpZy5kaXNh
YmxlZEZyZWV6aW5nRm9yVGVzdGluZykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9i
YWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBmcm96ZW4iKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBm
cm96ZW4iX3MpOwogCiAgICAgaWYgKGNhbGxGcmFtZS0+YXJndW1lbnRDb3VudCgpIDwgMikKLSAg
ICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZh
bGlkIG51bWJlciBvZiBhcmd1bWVudHMiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMiX3Mp
OwogICAgIEpTVmFsdWUgYXJnMCA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCk7CiAgICAgSlNWYWx1
ZSBhcmcxID0gY2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKICAgICBpZiAoIWFyZzAuaXNDYWxsYWJs
ZSh2bSkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Nj
b3BlLCAiYXJnMCBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOworICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzAgc2hvdWxkIGJlIGEgZnVuY3Rp
b24iX3MpOwogICAgIGlmICghYXJnMS5pc051bWJlcigpKQotICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzEgc2hvdWxkIGJlIGEgbnVtYmVy
Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3Bl
LCAiYXJnMSBzaG91bGQgYmUgYSBudW1iZXIiX3MpOwogCiAgICAgSlNGdW5jdGlvbiogZnVuY3Rp
b24gPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KGFyZzApOwogICAgIHNpemVfdCBkZXNpcmVkU3RhY2tT
aXplID0gYXJnMS5hc051bWJlcigpOwpAQCAtMjgyMSw3ICsyODIxLDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlvbkNhbGxXaXRoU3RhY2tTaXplLCBT
VVBQUkVTU19BU0EKICAgICB1aW50OF90KiBlbmQgPSBiaXR3aXNlX2Nhc3Q8dWludDhfdCo+KGJv
dW5kcy5lbmQoKSk7CiAgICAgdWludDhfdCogZGVzaXJlZFN0YXJ0ID0gZW5kICsgZGVzaXJlZFN0
YWNrU2l6ZTsKICAgICBpZiAoZGVzaXJlZFN0YXJ0ID49IGN1cnJlbnRTdGFja1Bvc2l0aW9uKQot
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIlVu
YWJsZSB0byBzZXR1cCBkZXNpcmVkIHN0YWNrIHNpemUiKTsKKyAgICAgICAgcmV0dXJuIHRocm93
Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJVbmFibGUgdG8gc2V0dXAgZGVzaXJl
ZCBzdGFjayBzaXplIl9zKTsKIAogICAgIEpTRG9sbGFyVk1IZWxwZXIgaGVscGVyKHZtKTsKIApA
QCAtMzAzNSw3ICszMDM1LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uQ3Jl
YXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9yQ29tcGlsZSwgKEpTR2xvYmEKICAgICBhdXRvIGNv
bXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwg
V2FzbTo6Q29tcGlsZXJNb2RlOjpWYWxpZGF0aW9uLCBudWxscHRyKTsKICAgICBNYXJrZWRBcmd1
bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsKLSAgICBjYWxsKGds
b2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZb3Ugc2hvdWxkbid0
IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVm
aW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgaWYgKFVO
TElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24o
KTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6ZShnbG9iYWxPYmpl
Y3QpOwpAQCAtMzA2Miw3ICszMDYyLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0
aW9uQ3JlYXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9ySW5zdGFudGlhdGUsIChKU0cKICAgICBh
dXRvIGNvbXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgV2FzbTo6Q29tcGlsZXJNb2RlOjpGdWxsQ29tcGlsZSwgaW1wb3J0T2JqZWN0KTsKICAg
ICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNvbXBpbGVyKTsK
LSAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZ
b3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxi
YWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiJfcyk7
CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAgc2NvcGUuY2xl
YXJFeGNlcHRpb24oKTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIoKS5maW5hbGl6
ZShnbG9iYWxPYmplY3QpOwpAQCAtMzE3MCw3ICszMTcwLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKGZ1bmN0aW9uR2V0UHJpdmF0ZVByb3BlcnR5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamUKIAogICAgIFN5bWJvbEltcGwqIHN5bWJvbCA9IHZtLnByb3BlcnR5TmFtZXMtPmJ1aWx0
aW5OYW1lcygpLmxvb2tVcFByaXZhdGVOYW1lKHN0cik7CiAgICAgaWYgKCFzeW1ib2wpCi0gICAg
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVua25vd24gcHJp
dmF0ZSBuYW1lLiIpOworICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJVbmtub3duIHByaXZhdGUgbmFtZS4iX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5nZXQoZ2xv
YmFsT2JqZWN0LCBzeW1ib2wpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAKaW5kZXggZjZhNTliMGI3YWMyMjQxNGZjNjc2
NjRkMTdmZTY3NjAzNmIxNjliYy4uNmQ2OWE0ZGYyZTIzNzEzMDA0ZTUzMDcwMDVjZmQ4MjBlMGQy
MTIyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1NpZ2lsbENyYXNo
QW5hbHl6ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9TaWdpbGxDcmFz
aEFuYWx5emVyLmNwcApAQCAtMjc3LDcgKzI3Nyw3IEBAIGF1dG8gU2lnaWxsQ3Jhc2hBbmFseXpl
cjo6YW5hbHl6ZShTaWduYWxDb250ZXh0JiBjb250ZXh0KSAtPiBDcmFzaFNvdXJjZQogICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAotICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkpOworICAgICAgICBsb2coInBjICVwIGJlbG9uZ3MgdG8g
Q29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJsb2NrLCBKSVRDb2RlOjp0eXBlTmFt
ZShjb2RlQmxvY2stPmppdFR5cGUoKSkuY2hhcmFjdGVycygpKTsKIAogICAgICAgICBkdW1wQ29k
ZUJsb2NrKGNvZGVCbG9jaywgcGMpOwogICAgIH0gd2hpbGUgKGZhbHNlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwCmluZGV4IDdlM2FlN2Q4OTU4MmYyMWVl
MmQ2NzA0Y2ViN2IwZTRkZmFmZmFiYzMuLmI1NmQ3ZjRhMjEzMzQ5NjRlMmRkY2U3Nzk4ZGU0NWE1
OTM5ZDI4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3Bl
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNw
cApAQCAtNDExLDcgKzQxMSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBSZWdpc3RlcnMoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUpCiAgICAgICAgICAgICBKU1ZhbHVlIHYgPSBpdC0+anNWYWx1ZSgp
OwogICAgICAgICAgICAgaW50IHJlZ2lzdGVyTnVtYmVyID0gaXQgLSBjYWxsRnJhbWUtPnJlZ2lz
dGVycygpOwogICAgICAgICAgICAgU3RyaW5nIG5hbWUgPSAoaXQgPiBlbmRPZkNhbGxlZVNhdmVz
KQotICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWciCisgICAgICAgICAgICAgICAgPyAi
Q2FsbGVlU2F2ZVJlZyJfcwogICAgICAgICAgICAgICAgIDogY29kZUJsb2NrLT5uYW1lRm9yUmVn
aXN0ZXIoVmlydHVhbFJlZ2lzdGVyKHJlZ2lzdGVyTnVtYmVyKSk7CiAgICAgICAgICAgICBkYXRh
TG9nRigiW3IlIDNkICUxNHNdICAgICAgfCAlMTBwIHwgMHglLTE2bGx4ICVzXG4iLCByZWdpc3Rl
ck51bWJlciwgbmFtZS5hc2NpaSgpLmRhdGEoKSwgaXQsIChsb25nIGxvbmcpSlNWYWx1ZTo6ZW5j
b2RlKHYpLCB2YWx1ZUFzU3RyaW5nKHYpLmRhdGEoKSk7CiAgICAgICAgICAgICAtLWl0OwpAQCAt
NTE5LDcgKzUxOSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0o
SlNDZWxsKiBjZWxsLCBQcmludFN0cmVhbSYgb3V0KQogICAgICAgICBvdXQucHJpbnQoIlxuIik7
CiAgICAgfTsKIAotICAgIG91dC5wcmludGYoIjwlcCwgJXM+XG4iLCBjZWxsLCBjZWxsLT5jbGFz
c05hbWUodm0pKTsKKyAgICBvdXQucHJpbnRmKCI8JXAsICVzPlxuIiwgY2VsbCwgY2VsbC0+Y2xh
c3NOYW1lKHZtKS5jaGFyYWN0ZXJzKCkpOwogICAgIEluZGVudGF0aW9uU2NvcGUgc2NvcGUoaW5k
ZW50YXRpb24pOwogCiAgICAgSU5ERU5UIGR1bXBTbG90KHNsb3RzLCAwLCAiaGVhZGVyIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4Y2VwdGlvblR5cGUuaAppbmRleCAy
ODVkMzUyNGJlZTJiNWQxOWYxMmI1NTM0ZWJlMzY3NTg1YjRkZTc0Li4zYWYwOGE2MWU0YTI3ODhm
YjdiODc0ZDEwMDFjYTQ5YzMxMWIzNGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL1dhc21FeGNlcHRpb25UeXBlLmgKQEAgLTMyLDE4ICszMiwxOCBAQCBuYW1lc3BhY2UgSlND
IHsKIG5hbWVzcGFjZSBXYXNtIHsKIAogI2RlZmluZSBGT1JfRUFDSF9FWENFUFRJT04obWFjcm8p
IFwKLSAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFjY2VzcywgICJPdXQgb2YgYm91bmRzIG1l
bW9yeSBhY2Nlc3MiKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUYWJsZUFjY2VzcywgIk91dCBv
ZiBib3VuZHMgdGFibGUgYWNjZXNzIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzQ2FsbEluZGly
ZWN0LCAiT3V0IG9mIGJvdW5kcyBjYWxsX2luZGlyZWN0IikgXAotICAgIG1hY3JvKE51bGxUYWJs
ZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8gYSBudWxsIHRhYmxlIGVudHJ5IikgXAotICAgIG1h
Y3JvKE51bGxSZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8gYSBudWxsIHJlZmVyZW5jZSIpIFwKLSAg
ICBtYWNybyhCYWRTaWduYXR1cmUsICJjYWxsX2luZGlyZWN0IHRvIGEgc2lnbmF0dXJlIHRoYXQg
ZG9lcyBub3QgbWF0Y2giKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBi
b3VuZHMgVHJ1bmMgb3BlcmF0aW9uIikgXAotICAgIG1hY3JvKFVucmVhY2hhYmxlLCAiVW5yZWFj
aGFibGUgY29kZSBzaG91bGQgbm90IGJlIGV4ZWN1dGVkIikgXAotICAgIG1hY3JvKERpdmlzaW9u
QnlaZXJvLCAiRGl2aXNpb24gYnkgemVybyIpIFwKLSAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3cs
ICJJbnRlZ2VyIG92ZXJmbG93IikgXAotICAgIG1hY3JvKFN0YWNrT3ZlcmZsb3csICJTdGFjayBv
dmVyZmxvdyIpIFwKLSAgICBtYWNybyhGdW5jcmVmTm90V2FzbSwgIkZ1bmNyZWYgbXVzdCBiZSBh
biBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikKKyAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFj
Y2VzcywgICJPdXQgb2YgYm91bmRzIG1lbW9yeSBhY2Nlc3MiX3MpIFwKKyAgICBtYWNybyhPdXRP
ZkJvdW5kc1RhYmxlQWNjZXNzLCAiT3V0IG9mIGJvdW5kcyB0YWJsZSBhY2Nlc3MiX3MpIFwKKyAg
ICBtYWNybyhPdXRPZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91dCBvZiBib3VuZHMgY2FsbF9pbmRp
cmVjdCJfcykgXAorICAgIG1hY3JvKE51bGxUYWJsZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8g
YSBudWxsIHRhYmxlIGVudHJ5Il9zKSBcCisgICAgbWFjcm8oTnVsbFJlZmVyZW5jZSwgICJjYWxs
X3JlZiB0byBhIG51bGwgcmVmZXJlbmNlIl9zKSBcCisgICAgbWFjcm8oQmFkU2lnbmF0dXJlLCAi
Y2FsbF9pbmRpcmVjdCB0byBhIHNpZ25hdHVyZSB0aGF0IGRvZXMgbm90IG1hdGNoIl9zKSBcCisg
ICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBib3VuZHMgVHJ1bmMgb3BlcmF0aW9u
Il9zKSBcCisgICAgbWFjcm8oVW5yZWFjaGFibGUsICJVbnJlYWNoYWJsZSBjb2RlIHNob3VsZCBu
b3QgYmUgZXhlY3V0ZWQiX3MpIFwKKyAgICBtYWNybyhEaXZpc2lvbkJ5WmVybywgIkRpdmlzaW9u
IGJ5IHplcm8iX3MpIFwKKyAgICBtYWNybyhJbnRlZ2VyT3ZlcmZsb3csICJJbnRlZ2VyIG92ZXJm
bG93Il9zKSBcCisgICAgbWFjcm8oU3RhY2tPdmVyZmxvdywgIlN0YWNrIG92ZXJmbG93Il9zKSBc
CisgICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQg
d2FzbSBmdW5jdGlvbiJfcykKIAogZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3Qg
ewogI2RlZmluZSBNQUtFX0VOVU0oZW51bU5hbWUsIGVycm9yKSBlbnVtTmFtZSwKQEAgLTUxLDcg
KzUxLDcgQEAgZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDogdWludDMyX3QgewogI3VuZGVmIE1B
S0VfRU5VTQogfTsKIAotQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2VGb3JF
eGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKK0FMV0FZU19JTkxJTkUgQVNDSUlMaXRl
cmFsIGVycm9yTWVzc2FnZUZvckV4Y2VwdGlvblR5cGUoRXhjZXB0aW9uVHlwZSB0eXBlKQogewog
ICAgIHN3aXRjaCAodHlwZSkgewogI2RlZmluZSBTV0lUQ0hfQ0FTRShlbnVtTmFtZSwgZXJyb3Ip
IFwKQEAgLTYxLDcgKzYxLDcgQEAgQUxXQVlTX0lOTElORSBjb25zdCBjaGFyKiBlcnJvck1lc3Nh
Z2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKICN1bmRlZiBTV0lUQ0hfQ0FT
RQogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gIiI7CisgICAg
cmV0dXJuICIiX3M7CiB9CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpXYXNtCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKaW5kZXggYzc5ZTMzN2M3YTdhY2QxMjgyMGMyZTY5
NDAzNDRmZjRiZGQxMGE5ZS4uOTcwNjNhYWI5ZTZiN2Y1NjBmZTI4ZDU0MjA2MGM1MmI4ODQ2ZTVk
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaApAQCAtODQsNyArODQs
NyBAQCBpbmxpbmUgSlNTdHJpbmcqIHR5cGVUb1N0cmluZyhWTSYgdm0sIFR5cGVLaW5kIHR5cGUp
CiB7CiAjZGVmaW5lIFRZUEVfQ0FTRShtYWNyb05hbWUsIHZhbHVlLCBiMywgaW5jLCB3YXNtTmFt
ZSkgXAogICAgIGNhc2UgVHlwZUtpbmQ6Om1hY3JvTmFtZTogXAotICAgICAgICByZXR1cm4ganNO
b250cml2aWFsU3RyaW5nKHZtLCAjd2FzbU5hbWUpOyBcCisgICAgICAgIHJldHVybiBqc05vbnRy
aXZpYWxTdHJpbmcodm0sICN3YXNtTmFtZSIiX3MpOyBcCiAKICAgICBzd2l0Y2ggKHR5cGUpIHsK
ICAgICAgICAgRk9SX0VBQ0hfV0FTTV9UWVBFKFRZUEVfQ0FTRSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKaW5kZXggY2IzZDE2M2JiZTA4YjZhNTc1OGNkOWRjMjhk
ZTA2OGExZGU1NmYxNy4uZWQxYjBmN2QxNjkyMmU2MmE2ZTc3NmYxOGVhMGE5NWI0M2UzYTQzZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKQEAgLTkwLDcgKzkw
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICBpZiAoaXNFeHRlcm5yZWYobV90eXBlKSkgewogICAgICAg
ICAgICAgUkVMRUFTRV9BU1NFUlQobV9vd25lcik7CiAgICAgICAgICAgICBpZiAoIW1fdHlwZS5p
c051bGxhYmxlKCkgJiYgYXJndW1lbnQuaXNOdWxsKCkpIHsKLSAgICAgICAgICAgICAgICB0aHJv
d0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3Qg
YmUgbnVsbCIpKTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3Qs
IHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0
LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIG1fdmFsdWUubV9leHRl
cm5yZWYuc2V0KG1fb3duZXItPnZtKCksIG1fb3duZXIsIGFyZ3VtZW50KTsKQEAgLTk5LDcgKzk5
LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGFyZ3VtZW50KQogICAgICAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogd2FzbUZ1bmN0
aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKiB3
YXNtV3JhcHBlckZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3Nl
bWJseUhvc3RGdW5jdGlvbih2bSwgYXJndW1lbnQsIHdhc21GdW5jdGlvbiwgd2FzbVdyYXBwZXJG
dW5jdGlvbikgJiYgKCFtX3R5cGUuaXNOdWxsYWJsZSgpIHx8ICFhcmd1bWVudC5pc051bGwoKSkp
IHsKLSAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikpOworICAgICAgICAgICAg
ICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJB
c3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFu
IGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgICAgICB9CiAKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIEdsb2JhbDo6c2V0KEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYXJndW1lbnQpCiAgICAgICAgICAgICAg
ICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggcGFyYW1JbmRleCA9IG1fdHlwZS5pbmRleDsKICAgICAg
ICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBhcmdJbmRleCA9IHdhc21GdW5jdGlvbiA/
IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNp
Z25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAgaWYgKHBhcmFtSW5kZXggIT0gYXJnSW5k
ZXgpIHsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwg
dm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSIp
KTsKKyAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0s
ICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykp
OwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50
UGxhbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApp
bmRleCBhZTE1ZjhkZWRmYmUwMTk5MDE3OWNlZDNjMWQyZjA3NDBkYmM4ZDY2Li5jMjQ5ZjkyY2Yw
NWJiMGM4YzM0NGVhNWFiNzFiMzk2ZjFhZGI5NGMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgTExJbnRQ
bGFuOjpkaWRDb21wbGV0ZUNvbXBpbGF0aW9uKCkKIAogICAgICAgICBMaW5rQnVmZmVyIGxpbmtC
dWZmZXIoaml0LCBHTE9CQUxfVEhVTktfSUQsIExpbmtCdWZmZXI6OlByb2ZpbGU6Oldhc20sIEpJ
VENvbXBpbGF0aW9uQ2FuRmFpbCk7CiAgICAgICAgIGlmIChVTkxJS0VMWShsaW5rQnVmZmVyLmRp
ZEZhaWxUb0FsbG9jYXRlKCkpKSB7Ci0gICAgICAgICAgICBCYXNlOjpmYWlsKCJPdXQgb2YgZXhl
Y3V0YWJsZSBtZW1vcnkgaW4gV2FzbSBMTEludCBlbnRyeSB0aHVua3MiKTsKKyAgICAgICAgICAg
IEJhc2U6OmZhaWwoIk91dCBvZiBleGVjdXRhYmxlIG1lbW9yeSBpbiBXYXNtIExMSW50IGVudHJ5
IHRodW5rcyJfcyk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwCmluZGV4IDEwODA0NDlkYTYz
OGY2NzZlMDdlY2EwZjU4MmUzYjlmYzdiNWU2OTEuLmJiNDZmOGE4MTMyZDFlZDU1ZTFjMzRhZjZh
MDBmMGQyNDlmZjBmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtT3Bl
cmF0aW9ucy5jcHAKQEAgLTUzNywxMiArNTM3LDEyIEBAIEpTQ19ERUZJTkVfSklUX09QRVJBVElP
TihvcGVyYXRpb25JdGVyYXRlUmVzdWx0cywgdm9pZCwgKENhbGxGcmFtZSogY2FsbEZyYW1lLCBJ
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIGlmIChidWZm
ZXIuaGFzT3ZlcmZsb3dlZCgpKSB7Ci0gICAgICAgIHRocm93T3V0T2ZNZW1vcnlFcnJvcihnbG9i
YWxPYmplY3QsIHNjb3BlLCAiSlMgcmVzdWx0cyB0byBXYXNtIGFyZSB0b28gbGFyZ2UiKTsKKyAg
ICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJKUyByZXN1
bHRzIHRvIFdhc20gYXJlIHRvbyBsYXJnZSJfcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
ICAgICBpZiAoaXRlcmF0aW9uQ291bnQgIT0gc2lnbmF0dXJlLT5yZXR1cm5Db3VudCgpKSB7Ci0g
ICAgICAgIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkluY29ycmVjdCBu
dW1iZXIgb2YgdmFsdWVzIHJldHVybmVkIHRvIFdhc20gZnJvbSBKUyIpOworICAgICAgICB0aHJv
d1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbmNvcnJlY3QgbnVtYmVyIG9mIHZh
bHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMiX3MpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlD
Q2FsbGVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxs
ZWUuY3BwCmluZGV4IGI1MDVkZjA1YmM2NmRkZDhiM2RmYWY3ZjFlNzZjN2RlNzQ3ZmUzYjMuLmM5
ODNlYjY0OTdiYjUwZTk4MDBiOTU0NGE3NjUwOWU4NGNhNTYzZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCkBAIC0zMyw3ICsz
Myw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNUb1dhc21JQ0Nh
bGxlZTo6c19pbmZvID0geyAiSlNUb1dhc21JQ0NhbGxlZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUb1dhc21JQ0NhbGxlZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1RvV2FzbUlDQ2FsbGVlOjpzX2luZm8gPSB7ICJKU1RvV2FzbUlDQ2Fs
bGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVG9XYXNtSUNDYWxsZWUpIH07CiAKIEpTVG9XYXNtSUNDYWxsZWUqIEpTVG9XYXNtSUND
YWxsZWU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFdlYkFz
c2VtYmx5RnVuY3Rpb24qIGZ1bmN0aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNwcAppbmRleCA4MmQ2MzE5YzYxNjM1YjU3ZjY0NDgzODk0
OTI2MDQ3Y2IzODMzZmM4Li5jNTQxYjU5NDY2NjhlZGQwOGFhYjhkMzVmYzM4ODViNDVmYzVmZjY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNw
cApAQCAtNzMsNyArNzMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJB
c3NlbWJseVZhbGlkYXRlRnVuYyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkiLCAmQmFzZTo6c19pbmZv
LCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHk6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5Il9zLCAmQmFzZTo6c19pbmZvLCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpT
V2ViQXNzZW1ibHkubHV0LmgKIEBiZWdpbiB3ZWJBc3NlbWJseVRhYmxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3Bw
CmluZGV4IGRlNDE0MTkwNzM5ZDBjODI4ZmUwYjY3N2IxOTc1MWM2ZDg3NmYzMjEuLjAyZjhiYjBk
OGNjNWQ4NDZhYWFlMGQxOTFiM2EzNTAxNDI4NWNlYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNlcHRpb24uY3BwCkBAIC0z
Nyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJB
c3NlbWJseUV4Y2VwdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5RXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlFeGNlcHRp
b246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5RXhjZXB0
aW9uKSB9OwogCiBKU1dlYkFzc2VtYmx5RXhjZXB0aW9uOjpKU1dlYkFzc2VtYmx5RXhjZXB0aW9u
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnLCBGaXhl
ZFZlY3Rvcjx1aW50NjRfdD4mJiBwYXlsb2FkKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUds
b2JhbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xv
YmFsLmNwcAppbmRleCA5NzkwODkxMzM4YjQ0OTBjMmE0MDQxN2U2YzFmOWI1ZGY5Nzc5M2NlLi5i
MzNkODg1MTFlM2IxYjA4ZTIyODMxYTRmMDAyMmI3YTE1M2JlMjk1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcApAQCAt
MzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2Vi
QXNzZW1ibHlHbG9iYWw6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJs
eUdsb2JhbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5R2xvYmFsOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUdsb2JhbCkgfTsKIAogSlNXZWJB
c3NlbWJseUdsb2JhbCogSlNXZWJBc3NlbWJseUdsb2JhbDo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNt
OjpHbG9iYWw+JiYgZ2xvYmFsKQogewpAQCAtOTQsMjIgKzk0LDIyIEBAIEpTT2JqZWN0KiBKU1dl
YkFzc2VtYmx5R2xvYmFsOjp0eXBlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAg
SlNTdHJpbmcqIHZhbHVlU3RyaW5nID0gbnVsbHB0cjsKICAgICBzd2l0Y2ggKHZhbHVlVHlwZS5r
aW5kKSB7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6STMyOgotICAgICAgICB2YWx1ZVN0cmlu
ZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiIpOworICAgICAgICB2YWx1ZVN0cmluZyA9
IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNh
c2UgV2FzbTo6VHlwZUtpbmQ6Okk2NDoKLSAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZp
YWxTdHJpbmcodm0sICJpNjQiKTsKKyAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxT
dHJpbmcodm0sICJpNjQiX3MpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFdhc206OlR5cGVL
aW5kOjpGMzI6Ci0gICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAi
ZjMyIik7CisgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZjMy
Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6RjY0OgotICAg
ICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCIpOworICAgICAg
ICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImY2NCJfcyk7CiAgICAgICAg
IGJyZWFrOwogICAgIGRlZmF1bHQ6IHsKICAgICAgICAgaWYgKFdhc206OmlzRnVuY3JlZih2YWx1
ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0s
ICJhbnlmdW5jIik7CisgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmlu
Zyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBlbHNlIGlmIChXYXNtOjppc0V4dGVybnJlZih2
YWx1ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmco
dm0sICJleHRlcm5yZWYiKTsKKyAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFs
U3RyaW5nKHZtLCAiZXh0ZXJucmVmIl9zKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVscGVycy5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMuaAppbmRleCA3YzU0ZDM0MGUz
NjdkNzQ2ZTAyMTgyMWVlMGJlMTEyMGIyNmMyYTE0Li44N2U1MGI0NTM1ZmU0NTEzYzgyZGJhZDdm
MTMzZjIwZmRlODAwMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9KU1dlYkFzc2VtYmx5SGVscGVycy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgKQEAgLTE5MSwxNyArMTkxLDE3IEBAIEFMV0FZU19J
TkxJTkUgdWludDY0X3QgZnJvbUpTVmFsdWUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgV2FzbTo6VHlwCiAgICAgZGVmYXVsdDogewogICAgICAgICBpZiAoV2FzbTo6aXNFeHRl
cm5yZWYodHlwZSkpIHsKICAgICAgICAgICAgIGlmICghdHlwZS5pc051bGxhYmxlKCkgJiYgdmFs
dWUuaXNOdWxsKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xv
YmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxP
YmplY3QsIHZtLCAiTm9uLW51bGwgRXh0ZXJucmVmIGNhbm5vdCBiZSBudWxsIikpOworICAgICAg
ICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNy
ZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxs
IEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAgICAgICB9IGVsc2UgaWYgKFdhc206
OmlzRnVuY3JlZih0eXBlKSB8fCBpc1JlZldpdGhUeXBlSW5kZXgodHlwZSkpIHsKICAgICAgICAg
ICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAg
ICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2FzbVdyYXBwZXJGdW5jdGlvbiA9IG51
bGxwdHI7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVuY3Rpb24odm0sIHZh
bHVlLCB3YXNtRnVuY3Rpb24sIHdhc21XcmFwcGVyRnVuY3Rpb24pICYmICghdHlwZS5pc051bGxh
YmxlKCkgfHwgIXZhbHVlLmlzTnVsbCgpKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dW
TUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2Fz
bSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJf
cykpOwogICAgICAgICAgICAgaWYgKGlzUmVmV2l0aFR5cGVJbmRleCh0eXBlKSAmJiAhdmFsdWUu
aXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBwYXJhbUlu
ZGV4ID0gdHlwZS5pbmRleDsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBh
cmdJbmRleCA9IHdhc21GdW5jdGlvbiA/IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6
IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAg
aWYgKHBhcmFtSW5kZXggIT0gYXJnSW5kZXgpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0
aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkFyZ3VtZW50IGZ1bmN0aW9uIGRpZCBub3Qg
bWF0Y2ggdGhlIHJlZmVyZW5jZSB0eXBlIikpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5
UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90
IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykpOwogICAgICAgICAgICAgfQogICAgICAgICB9
IGVsc2UKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2Uu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNl
LmNwcAppbmRleCA0OWNkMDA3ZmI3N2RjNzcyMzRlYTRjOTUzZTVlYzczOGMwNzM5MTk2Li45YTVj
MDgzNTMzNzQ5ZjVkODVhMjg0NzVhNmFlZDZkNjYwZDFjODU0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKQEAg
LTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dl
YkFzc2VtYmx5SW5zdGFuY2U6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5SW5zdGFuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUluc3RhbmNl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5SW5zdGFuY2Up
IH07CiAKIFN0cnVjdHVyZSogSlNXZWJBc3NlbWJseUluc3RhbmNlOjpjcmVhdGVTdHJ1Y3R1cmUo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkK
IHsKQEAgLTE1NSw3ICsxNTUsNyBAQCB2b2lkIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6ZmluYWxp
emVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogCiBJZGVudGlm
aWVyIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlUHJpdmF0ZU1vZHVsZUtleSgpCiB7Ci0g
ICAgcmV0dXJuIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRl
c2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0YW5jZSIpKTsKKyAgICByZXR1cm4gSWRlbnRpZmll
cjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJXZWJBc3Nl
bWJseUluc3RhbmNlIl9zKSk7CiB9CiAKIEpTV2ViQXNzZW1ibHlJbnN0YW5jZSogSlNXZWJBc3Nl
bWJseUluc3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBjb25zdCBJZGVudGlmaWVyJiBtb2R1bGVLZXksIEpTV2ViQXNzZW1ibHlNb2R1bGUqIGpz
TW9kdWxlLCBKU09iamVjdCogaW1wb3J0T2JqZWN0LCBTdHJ1Y3R1cmUqIGluc3RhbmNlU3RydWN0
dXJlLCBSZWY8V2FzbTo6TW9kdWxlPiYmIG1vZHVsZSwgV2FzbTo6Q3JlYXRpb25Nb2RlIGNyZWF0
aW9uTW9kZSkKQEAgLTIwMSw3ICsyMDEsNyBAQCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIEpTV2Vi
QXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqCiAgICAg
ICAgICAgICBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6SW1wb3J0RW50cnlUeXBlOjpTaW5nbGUs
CiAgICAgICAgICAgICBtb2R1bGVOYW1lLAogICAgICAgICAgICAgZmllbGROYW1lLAotICAgICAg
ICAgICAgSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3Jp
cHRpb24sICJXZWJBc3NlbWJseUltcG9ydE5hbWUiKSksCisgICAgICAgICAgICBJZGVudGlmaWVy
Ojpmcm9tVWlkKFByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIldlYkFzc2Vt
Ymx5SW1wb3J0TmFtZSJfcykpLAogICAgICAgICB9KTsKICAgICB9CiAgICAgQVNTRVJUKG1vZHVs
ZVJlY29yZC0+aW1wb3J0RW50cmllcygpLnNpemUoKSA9PSBtb2R1bGVJbmZvcm1hdGlvbi5pbXBv
cnRzLnNpemUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5TWVtb3J5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pT
V2ViQXNzZW1ibHlNZW1vcnkuY3BwCmluZGV4IDM1ZWRlNDE0OTI2ZDYxOTg1OWQyZTg1OGI5Yzhh
NGYyOTkxYWY2MjkuLmY0YTQwMjM2ODY3N2MwNzI5OGQyN2U5NTg3NDgwNTU1OGE0ZjAzYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNZW1v
cnkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlN
ZW1vcnkuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNXZWJBc3NlbWJseU1lbW9yeTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTWVt
b3J5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dlYkFzc2VtYmx5TWVtb3J5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlN
ZW1vcnk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TWVtb3J5
KSB9OwogCiBKU1dlYkFzc2VtYmx5TWVtb3J5KiBKU1dlYkFzc2VtYmx5TWVtb3J5Ojp0cnlDcmVh
dGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlNb2R1bGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseU1vZHVsZS5jcHAKaW5kZXggMGYwYjljYzVhNTJmMGVjNDhjNmY3Y2YzNTFhNzU2N2Y2
YTFjNDIyZi4uYmM0NGExMmE2ZTAwMzczMzYyODcwYzMzNzg4MWQzYTlmMmUxMGI5OCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVs
ZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1dlYkFzc2VtYmx5TW9kdWxlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2ViQXNzZW1ibHlNb2R1bGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseU1vZHVs
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlNb2R1bGUpIH07
CiAKIEpTV2ViQXNzZW1ibHlNb2R1bGUqIEpTV2ViQXNzZW1ibHlNb2R1bGU6OmNyZWF0ZVN0dWIo
Vk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgV2FzbTo6TW9kdWxlOjpWYWxpZGF0aW9uUmVzdWx0JiYgcmVzdWx0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAKaW5k
ZXggYzAyMDZlNGQ1Y2Q5N2ExZDIxYThhMmZjZmQxZmY1NzRhZGIxYzMwMC4uMjJkNTIwZGEyMDUz
ODdmN2RkNDVhMDM0ZWNiNzI1MDMzYmY3ZTFmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFibGUuY3BwCkBAIC0zNCw3ICszNCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseVRhYmxl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlUYWJsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHku
VGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OwogCiBKU1dlYkFzc2VtYmx5VGFibGUqIEpTV2Vi
QXNzZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNtOjpUYWJsZT4mJiB0YWJsZSkKIHsK
QEAgLTEyNywxMCArMTI3LDEwIEBAIEpTT2JqZWN0KiBKU1dlYkFzc2VtYmx5VGFibGU6OnR5cGUo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBKU1N0cmluZyogZWxlbWVudFN0cmlu
ZyA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChlbGVtZW50KSB7CiAgICAgY2FzZSBXYXNtOjpUYWJs
ZUVsZW1lbnRUeXBlOjpGdW5jcmVmOgotICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250cml2
aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyIpOworICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250
cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug
V2FzbTo6VGFibGVFbGVtZW50VHlwZTo6RXh0ZXJucmVmOgotICAgICAgICBlbGVtZW50U3RyaW5n
ID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIik7CisgICAgICAgIGVsZW1lbnRT
dHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJleHRlcm5yZWYiX3MpOwogICAgICAgICBi
cmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJs
eVRhZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFn
LmNwcAppbmRleCA2OTQxZmM0Y2I1M2IyMzU1Y2FjNzA1Y2RjNWQxZGZiNmJmMjdiNGE1Li5iZGRj
MTQ5Y2YwYmY0MTVlMTk0YWQ2OTI0ZDU0YzM4N2QzOTU1ZWY1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcApAQCAtMzUsNyArMzUs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlU
YWc6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhZykgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFnOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWci
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNXZWJBc3NlbWJseVRhZykgfTsKIAogSlNXZWJBc3NlbWJseVRhZyogSlNXZWJBc3NlbWJseVRh
Zzo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA4YmI2ZTU0YzJiNWEwMjJjZmI4MjRmNjZhY2U1ODBh
MmQyMTI4ZWJkLi45MDZkYjdkNjM4YmE5YmYzYzM2MTlhNWRkZTA0OTk0MWQ1MDRlOGZjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVy
cm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5
Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29t
cGlsZUVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlDb21waWxlRXJyb3IpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJy
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IGE1YmUwMTcyYmFlM2IwYmM5ZmExNGM2
YzcxZWI0YmZlZTMzNjZmNWIuLjkyMGI5MmI0MzJhZWIyNmQ2OWFmMjcwNTQzYzdmNTFiOWY2NmE1
ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUNvbXBp
bGVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuQ29tcGlsZUVycm9yIiwg
JkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkNvbXBpbGVFcnJvciJfcywgJkJhc2U6OnNfaW5mbywg
JnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUubHV0LmgKICBAYmVnaW4g
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvcgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNv
bnN0cnVjdG9yLmNwcAppbmRleCAzN2E2ZmEwYmQ2ZmE0NTg3NTI0OGM4MzUwMDcxYTZlNjQyZmYz
MjM5Li5mNGIxZTIzZjljYjk4YjI1MDgxYTY1MDBlMTAzMjQzMTMyOWU0YjdkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVX
ZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
RXhjZXB0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlFeGNl
cHRpb24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1i
bHlFeGNlcHRpb24pOwpAQCAtNTgsNyArNTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
Y29uc3RydWN0SlNXZWJBc3NlbWJseUV4Y2VwdGlvbiwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQog
CiAgICAgYXV0byB0YWcgPSBqc0R5bmFtaWNDYXN0PEpTV2ViQXNzZW1ibHlUYWcqPih2bSwgdGFn
VmFsdWUpOwogICAgIGlmICghdGFnKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNvbnN0cnVjdG9yIGV4
cGVjdHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgV2ViQXNzZW1ibHkuVGFnIik7CisgICAg
ICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3Nl
bWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0cyB0aGUgZmlyc3QgYXJndW1lbnQgdG8g
YmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgdmFs
dWVzOwogICAgIGZvckVhY2hJbkl0ZXJhYmxlKGdsb2JhbE9iamVjdCwgdGFnUGFyYW1ldGVycywg
WyZdIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBuZXh0VmFsdWUpIHsKQEAgLTY3LDcg
KzY3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlF
eGNlcHRpb24sIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCB7IH0pOwogCiAgICAgaWYgKHZhbHVlcy5zaXplKCkgIT0gdGFnLT5zaWduYXR1cmUo
KS5hcmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0
cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2ViQXNzZW1ibHkuVGFnIHRvIG1hdGNoIHRo
ZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiBjb25zdHJ1Y3Rv
ciBleHBlY3RzIHRoZSBudW1iZXIgb2YgcGFyZW1ldGVycyBpbiBXZWJBc3NlbWJseS5UYWcgdG8g
bWF0Y2ggdGhlIHRhZ3MgcGFyYW1ldGVyIGNvdW50LiJfcyk7CiAKICAgICAvLyBBbnkgR0MnZCB2
YWx1ZXMgaW4gaGVyZSB3aWxsIGJlIG1hcmtlZCBieSB0aGUgTWFya2VkQXJ1Z2VtZW50QnVmZmVy
IHVudGlsIHN0b3JlZCBpbiB0aGUgRXhjZXB0aW9uLgogICAgIEZpeGVkVmVjdG9yPHVpbnQ2NF90
PiBwYXlsb2FkKHZhbHVlcy5zaXplKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwCmlu
ZGV4IDczMTExNTY3MDVjZjJhZmIwMmI4ODUwZGVkMTQxN2MwZWQwYjA5OGIuLjdlMWVmZDY3ZGRh
ODAwYjY3N2FmZTY2ZDYzY2E0ZjU0YTM2MWZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlw
ZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
d2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJcyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhj
ZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlKSB9Owog
CiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmx1dC5oCiAgQGJl
Z2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlFeGNlcHRpb24KQEAgLTE0Myw3ICsxNDMsNyBA
QCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJ
cywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgSlNXZWJBc3NlbWJseVRhZyogdGFnID0g
Z2V0VGFnKHZtLCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKTsKICAgICBpZiAoIXRhZykKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2Vi
QXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBXZWJBc3Nl
bWJseS5UYWciKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3VtZW50
IG11c3QgYmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJO
KHRocm93U2NvcGUsIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xlYW4oanNFeGNlcHRpb24tPnRhZygp
ID09IHRhZy0+dGFnKCkpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCmluZGV4IGM3ODczNzNmN2M5MmRhYmY0ZDQx
MDNjYWI3ZGNlODNmOGEzMDJkODMuLjg4OTEyMDdkYzEyMDNiNTE5MTM2NDE1ZmQ0MDM4YzVmNzNi
OTBjOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5RnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5RnVuY3Rpb24uY3BwCkBAIC01NCw3ICs1NCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5RnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxX
ZWJBc3NlbWJseUZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwCmluZGV4IGI1MzA2YjFmYzM4
YmZhMjczMWU5MjJiOTM3Zjc1OGQyOTAxMDYyMWYuLmE5NGJjNDMzYTM3ZTQzYTY3OWQ1OGU1MDZk
NWI5ZWY1NTJhYWQzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0aW9uQmFz
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RnVuY3Rpb25C
YXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RnVuY3Rpb25CYXNlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSkgfTsK
IAogV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2U6OldlYkFzc2VtYmx5RnVuY3Rpb25CYXNlKFZNJiB2
bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb24g
aW1wb3J0YWJsZUZ1bmN0aW9uKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCmluZGV4IDBiOTYzMWVh
NTQ2NTQ1Zjc2YTMyZTg3MmQzOTc4ZTBmNThjODA4ZWMuLjQ5ZWU4YjQ2MTA3MDczYjhhYzNlZDhl
NjBjYWM1MmY2YWExZWUzZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3BwCkBAIC0zOSw3
ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFdlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2Vt
Ymx5R2xvYmFsKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFz
c2VtYmx5R2xvYmFsKTsKQEAgLTE0Miw3ICsxNDIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oY29uc3RydWN0SlNXZWJBc3NlbWJseUdsb2JhbCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YgogICAgICAgICAgICAgaWYgKGFyZ3VtZW50LmlzVW5kZWZpbmVkKCkpCiAgICAgICAgICAgICAg
ICAgYXJndW1lbnQgPSBkZWZhdWx0VmFsdWVGb3JSZWZlcmVuY2VUeXBlKHR5cGUpOwogICAgICAg
ICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9zdEZ1bmN0aW9uKHZtLCBhcmd1bWVudCkgJiYgIWFy
Z3VtZW50LmlzTnVsbCgpKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFs
T2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIp
KTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIl9zKSk7CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIHsgfTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGluaXRpYWxWYWx1
ZSA9IEpTVmFsdWU6OmVuY29kZShhcmd1bWVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAKaW5k
ZXggMThhNGQxZjkxZGZmZTRkNDg1YmM2N2M5OTExYmI4MDRkMjM5Y2RhMS4uYTViZGY5YjYzNjAw
NThlMjE0NWZjMGEyOTdlNjFiODJlZmRjYjk3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlLmNwcApA
QCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3Nl
bWJseUdsb2JhbFByb3RvRnVuY1R5cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eS5HbG9iYWwiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlR2xvYmFsV2ViQXNzZW1ibHlHbG9i
YWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGU6OnNfaW5m
byA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZUds
b2JhbFdlYkFzc2VtYmx5R2xvYmFsLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5R2xvYmFsUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5R2xv
YmFsUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZUdsb2JhbFdlYkFzc2VtYmx5R2xv
YmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eUluc3RhbmNlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAppbmRleCA3NTIzMzMzMzJmZmY2Njg3
MGNkYTk1OTNlYWVjNzE0OTExMzVlZDRlLi5lMDBjNTg3YzEwM2IzM2E4NzhjNzNhMDZjNGQ0Y2Y2
OTU2MTI2MjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUlu
c3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
JmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2Us
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dl
YkFzc2VtYmx5SW5zdGFuY2UpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlJbnN0YW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCmluZGV4
IDY5Mzg4OTE1YTdmMDY0ZDRlMmIyNDEwOWQwOTQ4OGZlYzJlOTljNjkuLmFlNGI5MzFlNmNjNmE4
MjM2ZjczNDZiY2FlOWMyMzRlZDA3MTc0NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHdlYkFz
c2VtYmx5SW5zdGFuY2VQcm90b0dldHRlckV4cG9ydHMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2Vi
QXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eUluc3RhbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFu
Y2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIl9zLCAmQmFzZTo6
c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggODMwMzgxNDcxYmZhZGRjOGIzMzRiYmYxNmE1NWE1MGM3NzY3ZmFkYi4uNjQx
ZmE2MGMyM2FjY2EyODA5NzYxYzI3NGUyYjE4M2JlMTI1NGM3YyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJy
b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1i
bHlMaW5rRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlMaW5r
RXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TGlua0Vycm9yKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TGlua0Vy
cm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCAzOGQ4YWNhZjFlYmNhOGQz
MGVjZjgwOGQwODg3YjJmYjYyM2U2ZTJiLi40N2RlN2M1OTBhYjBiNDNiNmEzNjNkNWVhZDgzNjdh
ZDRkNTMzYTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5cGUuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlMaW5r
RXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkxpbmtFcnJvciIsICZCYXNl
OjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWJBc3NlbWJseS5MaW5rRXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5TGlua0Vycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TGlu
a0Vycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlM
aW5rRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzI4MjhhYzY3OWFjOWEw
M2I2OTkwMDdhZTIyMTUwZjY1MmRlMGZlMi4uNmU5NDdiNjRhNDEzNmQzNmE0ZDE1MzkxZmQyODE4
NDAzNjhiZjRmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1lbW9y
eUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25z
dHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1vcnksIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5
KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5TWVt
b3J5KTsKQEAgLTc5LDcgKzc5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVj
dEpTV2ViQXNzZW1ibHlNZW1vcnksIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2IKICAgICAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAg
ICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhaW5pdFNpemVWYWx1ZS5pc1Vu
ZGVmaW5lZCgpKSB7CiAgICAgICAgICAgICAvLyBFcnJvciBiZWNhdXNlIGJvdGggc3BlY2lmaWVk
LgotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJv
d1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlv
bnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgICAgICByZXR1cm4g
dGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3NlbWJseS5N
ZW1vcnkgJ2luaXRpYWwnIGFuZCAnbWluaW11bScgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGF0IHRo
ZSBzYW1lIHRpbWUiX3MpOwogICAgICAgICB9CiAgICAgICAgIGlmICghaW5pdFNpemVWYWx1ZS5p
c1VuZGVmaW5lZCgpKQogICAgICAgICAgICAgbWluU2l6ZVZhbHVlID0gaW5pdFNpemVWYWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVt
b3J5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlLmNwcAppbmRleCA3ZWNjYzNlMDhmY2Y5NDRkYTcwNWEzYTQzOWZh
ZDM1OGQzZjhiMzlhLi5hNzI2ZWVmMDIyYWI3NmE0OGZiYmE3MzBlNDk3YTY0MjQwMDc4ZWVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9y
eVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5TWVtb3J5UHJvdG9GdW5jVHlwZSk7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSIsICZCYXNlOjpzX2luZm8sICZwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiX3MsICZC
YXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcHJvdG90
eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAppbmRl
eCBkMzE3NTY1MGYzZDMzYjQxMThkMzRkNzg0NDhmYjE0MjZiN2I1ZTY5Li4xMWFjMTZhNzE5MDRj
NzUzZDkyNDhjYWRhOWI4M2RjYzUwZGEzNWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmNw
cApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RKU1dlYkFzc2VtYmx5TW9kdWxlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3Nl
bWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TW9kdWxlQ29uc3Ry
dWN0b3IubHV0LmgKICBAYmVnaW4gY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TW9kdWxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZS5jcHAKaW5kZXggYjA4OWU2NmJkZWM4ZTg4NmIyZWE2MjMxZjJmOTU0
NjMyZmU3NjMwMS4uOTZjZWI1ZjNmN2U3MTgxYTA1MmQyNmE3MzNlMDBiOTM1ZTJkY2EyMiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5TW9kdWxlUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVX
ZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eU1vZHVsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9zLCAmQmFzZTo6c19pbmZv
LCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBX
ZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5TW9kdWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAKaW5kZXggN2ZhODFlNzk3MzJiMjI1NTYz
MmE3NDhmNjkyZWJhYWI5ODNkNWY3Yi4uMjVlMDg5ZmEyMDcxYjNmNDdmNDU5ZWM2MzY4MThlYmRi
MTEzYTk5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNb2R1bGVSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcApAQCAtNDQsNyArNDQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQpIH07
Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5TW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkKSB9OwogCiBTdHJ1
Y3R1cmUqIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKQEAgLTQ2
Nyw3ICs0NjcsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXplRXhw
b3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgICAgICAgICAgLy8gV2UgY3Jl
YXRlIGEgVGFibGUgd2hlbiBpdCdzIGEgVGFibGUgZGVmaW5pdGlvbi4KICAgICAgICAgICAgIFJl
ZlB0cjxXYXNtOjpUYWJsZT4gd2FzbVRhYmxlID0gV2FzbTo6VGFibGU6OnRyeUNyZWF0ZShtb2R1
bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0uaW5pdGlhbCgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJs
ZXNbaV0ubWF4aW11bSgpLCBtb2R1bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0udHlwZSgpKTsKICAg
ICAgICAgICAgIGlmICghd2FzbVRhYmxlKQotICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRp
b24oY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRu
J3QgY3JlYXRlIFRhYmxlIikpOworICAgICAgICAgICAgICAgIHJldHVybiBleGNlcHRpb24oY3Jl
YXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiY291bGRuJ3QgY3Jl
YXRlIFRhYmxlIl9zKSk7CiAgICAgICAgICAgICBKU1dlYkFzc2VtYmx5VGFibGUqIHRhYmxlID0g
SlNXZWJBc3NlbWJseVRhYmxlOjp0cnlDcmVhdGUoZ2xvYmFsT2JqZWN0LCB2bSwgZ2xvYmFsT2Jq
ZWN0LT53ZWJBc3NlbWJseVRhYmxlU3RydWN0dXJlKCksIHdhc21UYWJsZS5yZWxlYXNlTm9uTnVs
bCgpKTsKICAgICAgICAgICAgIC8vIFdlIHNob3VsZCBhbHdheXMgYmUgYWJsZSB0byBhbGxvY2F0
ZSBhIEpTV2ViQXNzZW1ibHlUYWJsZSB3ZSd2ZSBkZWZpbmVkLgogICAgICAgICAgICAgLy8gSWYg
aXQncyBkZWZpbmVkIHRvIGJlIHRvbyBsYXJnZSwgd2Ugc2hvdWxkIGhhdmUgdGhyb3duIGEgdmFs
aWRhdGlvbiBlcnJvci4KQEAgLTY2MSw3ICs2NjEsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxl
UmVjb3JkOjppbml0aWFsaXplRXhwb3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgV2FzbTo6Q2FsbGVlJiBlbWJlZGRlckVudHJ5
cG9pbnRDYWxsZWUgPSBjYWxsZWVHcm91cC0+ZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7CiAgICAgICAgICAgICBX
YXNtOjpXYXNtVG9XYXNtSW1wb3J0YWJsZUZ1bmN0aW9uOjpMb2FkTG9jYXRpb24gZW50cnlwb2lu
dExvYWRMb2NhdGlvbiA9IGNhbGxlZUdyb3VwLT5lbnRyeXBvaW50TG9hZExvY2F0aW9uRnJvbUZ1
bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhTcGFjZSk7Ci0gICAgICAgICAgICBX
ZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1
Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291bnQoKSwgInN0YXJ0IiwgbV9pbnN0YW5jZS5n
ZXQoKSwgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBlbnRyeXBvaW50TG9hZExvY2F0aW9uLCBz
aWduYXR1cmVJbmRleCk7CisgICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlv
biA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50
Q291bnQoKSwgInN0YXJ0Il9zLCBtX2luc3RhbmNlLmdldCgpLCBlbWJlZGRlckVudHJ5cG9pbnRD
YWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9jYXRpb24sIHNpZ25hdHVyZUluZGV4KTsKICAgICAgICAg
ICAgIG1fc3RhcnRGdW5jdGlvbi5zZXQodm0sIHRoaXMsIGZ1bmN0aW9uKTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDRmYTVl
MzhkMWIxYjI5YmYwY2ZlOGJmNzgyNWE3NmQ4NjZkNGQzNy4uYWE3ZDhkYTUwZDRhOGRlYmFmZmNj
NjQyMjBiZmU3MDdkNWUxYTA0ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlSdW50aW1lRXJy
b3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNwcAppbmRl
eCAyMGMzNTk5N2Y2YjFlODk1MjkzNTU4MWI3MjE3YWRhMWMxZTZhOTRlLi5lYjc2MTNhZmI3OGQw
ZTc5ZmViYzYxMDFlZjNlMWQ1NWE4MmE3MGNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90
b3R5cGUuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldl
YkFzc2VtYmx5LlJ1bnRpbWVFcnJvciIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5UnVudGltZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5SdW50aW1l
RXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5UnVudGlt
ZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5UnVudGltZUVy
cm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5UnVudGltZUVycm9y
UHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlSdW50aW1l
RXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCmluZGV4IDU5ZDliNzNhMDM2YjZlZWMyMzk4
NjMzZmE1NDhjZjQ1OTZkYTVkOTUuLmRhYWYwZmYwMTY4ZjEzNjM4ZTA4ZTIyZTdkZmM1NjYxZjRj
YmQ0NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcApAQCAtNDAsNyArNDAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFibGVDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JU
YWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFi
bGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZj
b25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5VGFibGUpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseVRhYmxlKTsKQEAgLTg5LDcg
Kzg5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlU
YWJsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAgICBKU1ZhbHVlIG1pblNpemVWYWx1
ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmplY3QsIG1pbmltdW1JZGVudCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICBpZiAoIWluaXRpYWxTaXplVmFsdWUuaXNVbmRlZmluZWQoKSAmJiAhbWluU2l6ZVZhbHVlLmlz
VW5kZWZpbmVkKCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0n
IG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5
LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0
aGUgc2FtZSB0aW1lIl9zKTsKIAogICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkp
CiAgICAgICAgIGluaXRpYWxTaXplVmFsdWUgPSBtaW5TaXplVmFsdWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCmluZGV4IDRjYzUzYjdhYWMzM2Y2NWE2OGJkZmUzZDFhNGIzZGRmZGI5MGYwZDguLjNm
OWQwYWIwMjE4MTI2N2FhZGNhYzI5MzdiNDM0YzhjZjc1MmY2ODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5
cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHdlYkFzc2VtYmx5VGFibGVQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJB
c3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZVByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRh
YmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5VGFibGVQ
cm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0Nv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCmluZGV4IDc0ZGEwNWYyNzE3NWRlMjg5MGM1OWNmYmEwNTg2YmE5
ZTVhOTAwMzguLmQ2NzFlMGM0MjNjM2NhNjUwZDBlYWRhMmI3ZDU4ZmU1NDFkN2QzNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlU
YWdDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2Fs
bEpTV2ViQXNzZW1ibHlUYWcpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c3RydWN0SlNXZWJBc3NlbWJseVRhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAKaW5kZXggZTRhNDYwN2Ew
MDVlMDg5OWMzNzVlN2YwZGViMzNhY2EzZTVlYTFhYy4uMjliNWYyZGRiZDMzNDRkZWY2ZGY5N2Qw
YTQwOTRiNzBjZDYwZjQyZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseVRhZ1Byb3RvRnVuY1R5
cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFn
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWciLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJs
eVRhZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIl9zLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJB
c3NlbWJseVRhZ1Byb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2Vt
Ymx5VGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVdyYXBwZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKaW5kZXggMmZiNmE0ZWM3YmI2MjdhOGNiODdl
ZDhkZjRiZTQ1OTU3ZDFmYzliZi4uYjVkNzhjZTQ4ZGE3MGQyNjljM2U1OTlkYTdmMzlkY2Y5MDA2
ZmI5ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlXcmFwcGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9u
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlXcmFwcGVy
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb246
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5V3JhcHBl
ckZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsV2Vi
QXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24pOwogCkBAIC00NSw3ICs0NSw3IEBAIFdlYkFzc2VtYmx5
V3JhcHBlckZ1bmN0aW9uOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbihWTSYgdm0sIE5hdGl2
ZUV4ZWN1dGFibGUqCiBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb246OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCogZnVuY3Rpb24sIHVuc2lnbmVkIGltcG9y
dEluZGV4LCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3RhbmNlLCBXYXNtOjpTaWduYXR1cmVJ
bmRleCBzaWduYXR1cmVJbmRleCkKIHsKICAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKCFmdW5jdGlv
bi0+aW5oZXJpdHM8V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24+KHZtKSwgIldlIHNob3VsZCBu
ZXZlciBkb3VibGUgd3JhcCBhIHdyYXBwZXIgZnVuY3Rpb24uIik7Ci0gICAgU3RyaW5nIG5hbWUg
PSAiIjsKKyAgICBTdHJpbmcgbmFtZSA9IGVtcHR5U3RyaW5nKCk7CiAgICAgTmF0aXZlRXhlY3V0
YWJsZSogZXhlY3V0YWJsZSA9IHZtLmdldEhvc3RGdW5jdGlvbihjYWxsV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24sIE5vSW50cmluc2ljLCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3Rvciwg
bnVsbHB0ciwgbmFtZSk7CiAgICAgV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHJlc3VsdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uPih2
bSkpIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmpl
Y3QsIHN0cnVjdHVyZSwgV2FzbTo6V2FzbVRvV2FzbUltcG9ydGFibGVGdW5jdGlvbiB7IHNpZ25h
dHVyZUluZGV4LCAmaW5zdGFuY2UtPmluc3RhbmNlKCkuaW1wb3J0RnVuY3Rpb25JbmZvKGltcG9y
dEluZGV4KS0+d2FzbVRvRW1iZWRkZXJTdHViIH0gKTsKICAgICBjb25zdCBXYXNtOjpTaWduYXR1
cmUmIHNpZ25hdHVyZSA9IFdhc206OlNpZ25hdHVyZUluZm9ybWF0aW9uOjpnZXQoc2lnbmF0dXJl
SW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4
cHJlc3Npb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Np
b24uY3BwCmluZGV4IGVlNGY1OGJkNDIwZDM5YTE0YWQ4MWVmY2FlN2QzNzhkN2YzOGNkZDcuLjM3
OTAzNmViMzZiODZiOGI3Yjc4NjIwMmUyNmJiOGYxNjc5NDMzMzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKQEAgLTY0LDcgKzY0LDcg
QEAgcHJpdmF0ZToKIAogICAgICAgICBKU0M6OllhcnI6OllhcnJQYXR0ZXJuIHBhdHRlcm4ocGF0
dGVyblN0cmluZywgZmxhZ3MsIG1fY29uc3RydWN0aW9uRXJyb3JDb2RlKTsKICAgICAgICAgaWYg
KEpTQzo6WWFycjo6aGFzRXJyb3IobV9jb25zdHJ1Y3Rpb25FcnJvckNvZGUpKSB7Ci0gICAgICAg
ICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBpbGUgZmFpbGVkIHdp
dGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0aW9uRXJyb3JDb2Rl
KSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZQVJSIGNvbXBp
bGUgZmFpbGVkIHdpdGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1fY29uc3RydWN0
aW9uRXJyb3JDb2RlKS5jaGFyYWN0ZXJzKCkpOwogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckVycm9yQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2Rl
LmNwcAppbmRleCA0ZjAzZTA3NDYyNDAwYjVjMTZlNGNmOWE2OGEzMjM4OTg0MWQxMTQ5Li41OTU3
OTQ0YmU3Y2E1MGVmMGYyYWJhZWY2NzNkOWNiZDMyZmMzZWUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcApAQCAtMzAsMzggKzMwLDM4IEBACiAKIG5h
bWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgWWFyciB7CiAKLWNvbnN0IGNoYXIqIGVycm9yTWVzc2Fn
ZShFcnJvckNvZGUgZXJyb3IpCitBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKEVycm9yQ29kZSBl
cnJvcikKIHsKICNkZWZpbmUgUkVHRVhQX0VSUk9SX1BSRUZJWCAiSW52YWxpZCByZWd1bGFyIGV4
cHJlc3Npb246ICIKICAgICAvLyBUaGUgb3JkZXIgb2YgdGhpcyBhcnJheSBtdXN0IG1hdGNoIHRo
ZSBFcnJvckNvZGUgZW51bS4KLSAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZXJyb3JNZXNz
YWdlc1tdID0gewotICAgICAgICBudWxscHRyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm9FcnJvcgotICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJyZWd1bGFyIGV4cHJlc3Npb24gdG9vIGxhcmdlIiwgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiLCAgICAg
ICAgICAgICAgICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJub3RoaW5nIHRvIHJlcGVhdCIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gUXVhbnRpZmllcldpdGhvdXRBdG9tCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggIm51bWJlciB0b28gbGFyZ2UgaW4ge30gcXVhbnRpZmllciIsICAgICAgICAgICAgICAgICAg
ICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW5j
b21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIFF1
YW50aWZpZXJJbmNvbXBsZXRlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm1pc3Npbmcg
KSIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNaXNzaW5n
UGFyZW50aGVzZXMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIF0gb3Ig
fSBicmFja2V0IGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgIC8vIEJyYWNrZXRVbm1hdGNo
ZWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVudGhlc2VzIiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhcmVudGhlc2VzVW5tYXRjaGVkCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIg
KD8iLCAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRoZXNlc1R5cGVJbnZhbGlkCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZ3JvdXAgc3BlY2lmaWVyIG5hbWUiLCAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1lCi0gICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIgbmFtZSIsICAgICAgICAg
ICAgICAgICAgICAgICAvLyBEdXBsaWNhdGVHcm91cE5hbWUKLSAgICAgICAgUkVHRVhQX0VSUk9S
X1BSRUZJWCAibWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBjaGFyYWN0ZXIgY2xhc3MiLCAgICAg
ICAgICAgIC8vIENoYXJhY3RlckNsYXNzVW5tYXRjaGVkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggInJhbmdlIG91dCBvZiBvcmRlciBpbiBjaGFyYWN0ZXIgY2xhc3MiLCAgICAgICAgICAg
ICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRlcgotICAgICAgICBSRUdFWFBfRVJS
T1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3RlciBjbGFzcyBmb3IgVW5pY29kZSBw
YXR0ZXJuIiwgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZUludmFsaWQKLSAgICAgICAgUkVHRVhQX0VS
Uk9SX1BSRUZJWCAiXFwgYXQgZW5kIG9mIHBhdHRlcm4iLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIEVzY2FwZVVudGVybWluYXRlZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJpbnZhbGlkIFVuaWNvZGUgXFx1IGVzY2FwZSIsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1e30gZXNjYXBlIiwgICAgICAgICAgICAgIC8v
IEludmFsaWRVbmljb2RlQ29kZVBvaW50RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggImludmFsaWQgYmFja3JlZmVyZW5jZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAg
ICAvLyBJbnZhbGlkQmFja3JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIFxcazw+IG5hbWVkIGJhY2tyZWZlcmVuY2UiLCAgICAgICAgICAgICAgICAgICAgLy8g
SW52YWxpZE5hbWVkQmFja1JlZmVyZW5jZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJp
bnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVyIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgLy8g
SW52YWxpZElkZW50aXR5RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFs
aWQgb2N0YWwgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAvLyBJbnZh
bGlkT2N0YWxFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGMg
ZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250
cm9sTGV0dGVyRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJv
cGVydHkgZXhwcmVzc2lvbiIsICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5p
Y29kZVByb3BlcnR5RXhwcmVzc2lvbgotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ0b28g
bWFueSBuZXN0ZWQgZGlzanVuY3Rpb25zIiwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVG9v
TWFueURpc2p1bmN0aW9ucwotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJwYXR0ZXJuIGV4
Y2VlZHMgc3RyaW5nIGxlbmd0aCBsaW1pdHMiLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9v
TGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyIgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRSZWd1bGFyRXhwcmVz
c2lvbkZsYWdzCisgICAgc3RhdGljIGNvbnN0IEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2VzW10g
PSB7CisgICAgICAgIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vRXJyb3IKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9uIHRvbyBsYXJnZSJfcywgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdlCisgICAgICAgIFJFR0VYUF9FUlJP
Ul9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAg
ICAgICAgICAgIC8vIFF1YW50aWZpZXJPdXRPZk9yZGVyCisgICAgICAgIFJFR0VYUF9FUlJPUl9Q
UkVGSVggIm5vdGhpbmcgdG8gcmVwZWF0Il9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vIFF1YW50aWZpZXJXaXRob3V0QXRvbQorICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXIiX3MsICAgICAgICAgICAgICAg
ICAgICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW5jb21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBhdHRlcm4iX3MgICAgICAgICAg
Ly8gUXVhbnRpZmllckluY29tcGxldGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibWlz
c2luZyApIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g
TWlzc2luZ1BhcmVudGhlc2VzCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hl
ZCBdIG9yIH0gYnJhY2tldCBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgIC8vIEJyYWNr
ZXRVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5tYXRjaGVkIHBhcmVu
dGhlc2VzIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNV
bm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5yZWNvZ25pemVkIGNoYXJh
Y3RlciBhZnRlciAoPyJfcywgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNUeXBl
SW52YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGdyb3VwIHNwZWNp
ZmllciBuYW1lIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3JvdXBOYW1l
CisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVjaWZpZXIg
bmFtZSJfcywgICAgICAgICAgICAgICAgICAgICAgIC8vIER1cGxpY2F0ZUdyb3VwTmFtZQorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJtaXNzaW5nIHRlcm1pbmF0aW5nIF0gZm9yIGNoYXJh
Y3RlciBjbGFzcyJfcywgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1VubWF0Y2hlZAorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJyYW5nZSBvdXQgb2Ygb3JkZXIgaW4gY2hhcmFjdGVy
IGNsYXNzIl9zLCAgICAgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRl
cgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3Rl
ciBjbGFzcyBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlSW52
YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJcXCBhdCBlbmQgb2YgcGF0dGVybiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFc2NhcGVVbnRlcm1pbmF0ZWQK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIFxcdSBlc2NhcGUi
X3MsICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKKyAg
ICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1
e30gZXNjYXBlIl9zLCAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVDb2RlUG9pbnRFc2Nh
cGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBiYWNrcmVmZXJlbmNlIGZv
ciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAgICAgLy8gSW52YWxpZEJhY2tyZWZlcmVuY2UK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGs8PiBuYW1lZCBiYWNrcmVm
ZXJlbmNlIl9zLCAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZE5hbWVkQmFja1JlZmVyZW5j
ZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVy
IGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAvLyBJbnZhbGlkSWRlbnRpdHlFc2NhcGUK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBvY3RhbCBlc2NhcGUgZm9yIFVu
aWNvZGUgcGF0dGVybiJfcywgICAgICAgICAgICAgLy8gSW52YWxpZE9jdGFsRXNjYXBlCisgICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxjIGVzY2FwZSBmb3IgVW5pY29kZSBw
YXR0ZXJuIl9zLCAgICAgICAgICAgICAgIC8vIEludmFsaWRDb250cm9sTGV0dGVyRXNjYXBlCisg
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgcHJvcGVydHkgZXhwcmVzc2lvbiJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlUHJvcGVydHlFeHBy
ZXNzaW9uCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInRvbyBtYW55IG5lc3RlZCBkaXNq
dW5jdGlvbnMiX3MsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvb01hbnlEaXNqdW5jdGlv
bnMKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicGF0dGVybiBleGNlZWRzIHN0cmluZyBs
ZW5ndGggbGltaXRzIl9zLCAgICAgICAgICAgICAgICAgLy8gT2Zmc2V0VG9vTGFyZ2UKKyAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFncyJfcyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MK
ICAgICB9OwogCiAgICAgcmV0dXJuIGVycm9yTWVzc2FnZXNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGVycm9yKV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJy
b3JDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmgKaW5k
ZXggZDI3N2ZjYmM0ZGNhODNiZDg4MzA5N2M3YzAwM2FkMzY3OWJiNTVmOS4uZWJmZjU5NmU1ZTQx
ZjViOWE0MjJjZjcyNGZkMWRjNzRiNTAyMTIzNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95
YXJyL1lhcnJFcnJvckNvZGUuaApAQCAtMjUsNiArMjUsOCBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKIG5hbWVzcGFjZSBKU0MgewogCiBjbGFzcyBDYWxs
RnJhbWU7CkBAIC02Myw3ICs2NSw3IEBAIGVudW0gY2xhc3MgRXJyb3JDb2RlIDogdWludDhfdCB7
CiAgICAgSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3MsCiB9OwogCi1KU19FWFBPUlRfUFJJ
VkFURSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKK0pTX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlKTsKIGlubGluZSBib29sIGhh
c0Vycm9yKEVycm9yQ29kZSBlcnJvckNvZGUpCiB7CiAgICAgcmV0dXJuIGVycm9yQ29kZSAhPSBF
cnJvckNvZGU6Ok5vRXJyb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVz
YWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmgKaW5kZXggODNkMmE2ZGI5ODUw
NTk4MDhlNTg5ZjE4NmZkZWIwOTgyZGY1MTU4Ni4uZWU1MWZiYjhkZGUwZDYyNzRiZmQ2YmJjYWMx
YjhiMjhmMTYwMTlhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1Jlc291cmNlVXNhZ2UuaApAQCAtMjYsNiArMjYsNyBAQAog
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzksNyArNDAsNyBAQCBzdHJ1Y3QgVGFnSW5mbyB7
CiAgICAgc2l6ZV90IHJlc2VydmVkIHsgMCB9OwogfTsKIAotV1RGX0VYUE9SVF9QUklWQVRFIGNv
bnN0IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQpOworV1RGX0VYUE9SVF9QUklW
QVRFIEFTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkKTsKIFdURl9FWFBP
UlRfUFJJVkFURSBzaXplX3Qgdm1QYWdlU2l6ZSgpOwogV1RGX0VYUE9SVF9QUklWQVRFIHN0ZDo6
YXJyYXk8VGFnSW5mbywgMjU2PiBwYWdlc1BlclZNVGFnKCk7CiBXVEZfRVhQT1JUX1BSSVZBVEUg
dm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2
PiYsIGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2Nv
Y29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAKaW5kZXggMzE0MDdiYWFkNTQwNzQ2Yjg1OTc2ZGQ4
OTNhYzQ4OTk0YmIxNzcwMy4uNDhjZmI2NDdjNTY5MzhlNjY0NGZkMTIwYzE0NjU3YzI4OGYxMTM5
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNw
cAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwCkBAIC02
OSwzNiArNjksMzYgQEAgdm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0ZDo6YXJy
YXk8VGFnSW5mbywgMjU2PiYgYmVmb3JlLCBjb25zdCBzdGQ6OmEKICAgICB9CiB9CiAKLWNvbnN0
IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQorQVNDSUlMaXRlcmFsIGRp
c3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQogewogICAgIHN3aXRjaCAodGFnKSB7Ci0g
ICAgY2FzZSBWTV9NRU1PUllfQ0dJTUFHRTogcmV0dXJuICJDRyBpbWFnZSI7Ci0gICAgY2FzZSBW
TV9NRU1PUllfQ09SRUdSQVBISUNTX0RBVEE6IHJldHVybiAiQ0cgcmFzdGVyIGRhdGEiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJWSUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiOwotICAg
IGNhc2UgVk1fTUVNT1JZX0RZTElCOiByZXR1cm4gImR5bGliIjsKLSAgICBjYXNlIFZNX01FTU9S
WV9GT1VOREFUSU9OOiByZXR1cm4gIkZvdW5kYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0lN
QUdFSU86IHJldHVybiAiSW1hZ2VJTyI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSU9BQ0NFTEVSQVRP
UjogcmV0dXJuICJJT0FjY2VsZXJhdG9yIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT1NVUkZBQ0U6
IHJldHVybiAiSU9TdXJmYWNlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJ
T0tpdCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9DT1JFOiByZXR1cm4gIkdpZ2Fj
YWdlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9FWEVDVVRBQkxFX0FMTE9D
QVRPUjogcmV0dXJuICJKU0MgSklUIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJ
VF9SRUdJU1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiOwotICAgIGNhc2UgVk1fTUVNT1JZX0xB
WUVSS0lUOiByZXR1cm4gIkNvcmVBbmltYXRpb24iOwotICAgIGNhc2UgVk1fTUVNT1JZX0xJQkRJ
U1BBVENIOiByZXR1cm4gImxpYmRpc3BhdGNoIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfSFVHRTogcmV0dXJu
ICJtYWxsb2MgKGh1Z2UpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTEFSR0U6IHJldHVy
biAibWFsbG9jIChsYXJnZSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJVU06IHJl
dHVybiAibWFsbG9jIChtZWRpdW0pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTkFOTzog
cmV0dXJuICJtYWxsb2MgKG5hbm8pIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfU01BTEw6
IHJldHVybiAibWFsbG9jIChzbWFsbCkiOwotICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19USU5Z
OiByZXR1cm4gIm1hbGxvYyAodGlueSkiOwotICAgIGNhc2UgVk1fTUVNT1JZX09TX0FMTE9DX09O
Q0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1FMSVRFOiBy
ZXR1cm4gIlNRTGl0ZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfU1RBQ0s6IHJldHVybiAiU3RhY2si
OwotICAgIGNhc2UgVk1fTUVNT1JZX1RDTUFMTE9DOiByZXR1cm4gImJtYWxsb2MiOwotICAgIGNh
c2UgVk1fTUVNT1JZX1VOU0hBUkVEX1BNQVA6IHJldHVybiAicG1hcCAodW5zaGFyZWQpIjsKLSAg
ICBkZWZhdWx0OiByZXR1cm4gbnVsbHB0cjsKKyAgICBjYXNlIFZNX01FTU9SWV9DR0lNQUdFOiBy
ZXR1cm4gIkNHIGltYWdlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVHUkFQSElDU19EQVRB
OiByZXR1cm4gIkNHIHJhc3RlciBkYXRhIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJW
SUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRFlMSUI6
IHJldHVybiAiZHlsaWIiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfRk9VTkRBVElPTjogcmV0dXJu
ICJGb3VuZGF0aW9uIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0lNQUdFSU86IHJldHVybiAiSW1h
Z2VJTyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0FDQ0VMRVJBVE9SOiByZXR1cm4gIklPQWNj
ZWxlcmF0b3IiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9TVVJGQUNFOiByZXR1cm4gIklPU3Vy
ZmFjZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDogcmV0dXJuICJJT0tpdCJfczsKKyAg
ICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0NPUkU6IHJldHVybiAiR2lnYWNhZ2UiX3M7Cisg
ICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfRVhFQ1VUQUJMRV9BTExPQ0FUT1I6IHJl
dHVybiAiSlNDIEpJVCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0pJVF9SRUdJ
U1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTEFZRVJL
SVQ6IHJldHVybiAiQ29yZUFuaW1hdGlvbiJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9MSUJESVNQ
QVRDSDogcmV0dXJuICJsaWJkaXNwYXRjaCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0M6
IHJldHVybiAibWFsbG9jIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19IVUdFOiByZXR1
cm4gIm1hbGxvYyAoaHVnZSkiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX0xBUkdFOiBy
ZXR1cm4gIm1hbGxvYyAobGFyZ2UpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19NRURJ
VU06IHJldHVybiAibWFsbG9jIChtZWRpdW0pIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExP
Q19OQU5POiByZXR1cm4gIm1hbGxvYyAobmFubykiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFM
TE9DX1NNQUxMOiByZXR1cm4gIm1hbGxvYyAoc21hbGwpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X01BTExPQ19USU5ZOiByZXR1cm4gIm1hbGxvYyAodGlueSkiX3M7CisgICAgY2FzZSBWTV9NRU1P
UllfT1NfQUxMT0NfT05DRTogcmV0dXJuICJvc19hbGxvY19vbmNlIl9zOworICAgIGNhc2UgVk1f
TUVNT1JZX1NRTElURTogcmV0dXJuICJTUUxpdGUiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfU1RB
Q0s6IHJldHVybiAiU3RhY2siX3M7CisgICAgY2FzZSBWTV9NRU1PUllfVENNQUxMT0M6IHJldHVy
biAiYm1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9VTlNIQVJFRF9QTUFQOiByZXR1cm4g
InBtYXAgKHVuc2hhcmVkKSJfczsKKyAgICBkZWZhdWx0OiByZXR1cm4gQVNDSUlMaXRlcmFsOjpu
dWxsKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmlu
Z0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmluZGV4IGM3NmNkNTIz
Njc2MTFjOTQyZDM0MmJmMDkxYjE2MmEwYTY3NzQ0ZTAuLjhkODBmNzg3NzgzZDQzYzU2MmY4ZTBj
ZDNlMzY3NWI5NzZiYTgyNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC00MzEsNyAr
NDMxLDcgQEAgcHVibGljOgogICAgIHNpemVfdCBmaW5kKGNoYXIgY2hhcmFjdGVyLCB1bnNpZ25l
ZCBzdGFydCA9IDApOwogICAgIHNpemVfdCBmaW5kKFVDaGFyIGNoYXJhY3RlciwgdW5zaWduZWQg
c3RhcnQgPSAwKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZpbmQoQ29kZVVuaXRN
YXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBpbmRleCA9IDApOwotICAgIHNpemVfdCBmaW5kKGNvbnN0
IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAwKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6
ZV90IGZpbmQoY29uc3QgTENoYXIqLCB1bnNpZ25lZCBpbmRleCA9IDApOwogICAgIEFMV0FZU19J
TkxJTkUgc2l6ZV90IGZpbmQoY29uc3QgY2hhciogc3RyaW5nLCB1bnNpZ25lZCBpbmRleCA9IDAp
IHsgcmV0dXJuIGZpbmQocmVpbnRlcnByZXRfY2FzdDxjb25zdCBMQ2hhcio+KHN0cmluZyksIGlu
ZGV4KTsgfQogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzaXplX3QgZmluZChTdHJpbmdJbXBsKik7
CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5kKFN0cmluZ0ltcGwqLCB1bnNpZ25l
ZCBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKaW5kZXggM2E5MWE2NzdkNWMwMzhl
MDNiN2M1ZWIzMmYzNzMzYmVmYzA4Y2E1NS4uZjM0NTkzNGI3M2NjOGQ0NTIwNWUzYTQ2YWM2MTky
MGE5YTM5OTljNSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcApAQCAtODAsNyArODAsNyBA
QCBTdHJpbmc6OlN0cmluZyhjb25zdCBjaGFyKiBudWxsVGVybWluYXRlZFN0cmluZykKIH0KIAog
U3RyaW5nOjpTdHJpbmcoQVNDSUlMaXRlcmFsIGNoYXJhY3RlcnMpCi0gICAgOiBtX2ltcGwoU3Ry
aW5nSW1wbDo6Y3JlYXRlRnJvbUxpdGVyYWwoY2hhcmFjdGVycykpCisgICAgOiBtX2ltcGwoY2hh
cmFjdGVycy5pc051bGwoKSA/IG51bGxwdHIgOiBSZWZQdHI8U3RyaW5nSW1wbD4geyBTdHJpbmdJ
bXBsOjpjcmVhdGVGcm9tTGl0ZXJhbChjaGFyYWN0ZXJzKSB9KQogewogfQogCkBAIC00NjUsMzEg
KzQ2NSwzMSBAQCBTdHJpbmcgU3RyaW5nOjpudW1iZXIodW5zaWduZWQgbG9uZyBsb25nIG51bWJl
cikKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24oZmxvYXQgbnVt
YmVyLCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5IHRy
YWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5KQogewogICAgIE51bWJlclRvU3RyaW5nQnVmZmVy
IGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIs
IHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVu
Y2F0ZVRyYWlsaW5nWmVyb3MpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJUb0ZpeGVkUHJl
Y2lzaW9uU3RyaW5nKG51bWJlciwgcHJlY2lzaW9uLCBidWZmZXIsIHRyYWlsaW5nWmVyb3NUcnVu
Y2F0aW5nUG9saWN5ID09IFRydW5jYXRlVHJhaWxpbmdaZXJvcykgfTsKIH0KIAogU3RyaW5nIFN0
cmluZzo6bnVtYmVyVG9TdHJpbmdGaXhlZFByZWNpc2lvbihkb3VibGUgbnVtYmVyLCB1bnNpZ25l
ZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5IHRyYWlsaW5nWmVyb3NU
cnVuY2F0aW5nUG9saWN5KQogewogICAgIE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAg
ICByZXR1cm4gbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwg
YnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5n
WmVyb3MpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJUb0ZpeGVkUHJlY2lzaW9uU3RyaW5n
KG51bWJlciwgcHJlY2lzaW9uLCBidWZmZXIsIHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5
ID09IFRydW5jYXRlVHJhaWxpbmdaZXJvcykgfTsKIH0KIAogU3RyaW5nIFN0cmluZzo6bnVtYmVy
KGZsb2F0IG51bWJlcikKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAg
cmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVyKTsKKyAgICByZXR1cm4gU3RyaW5n
IHsgbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6
Om51bWJlcihkb3VibGUgbnVtYmVyKQogewogICAgIE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZl
cjsKLSAgICByZXR1cm4gbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpOworICAgIHJldHVy
biBTdHJpbmcgeyBudW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1ZmZlcikgfTsKIH0KIAogU3RyaW5n
IFN0cmluZzo6bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKGRvdWJsZSBudW1iZXIsIHVuc2lnbmVk
IGRlY2ltYWxQbGFjZXMpCiB7CiAgICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwotICAg
IHJldHVybiBudW1iZXJUb0ZpeGVkV2lkdGhTdHJpbmcobnVtYmVyLCBkZWNpbWFsUGxhY2VzLCBi
dWZmZXIpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJUb0ZpeGVkV2lkdGhTdHJpbmcobnVt
YmVyLCBkZWNpbWFsUGxhY2VzLCBidWZmZXIpIH07CiB9CiAKIGRvdWJsZSBTdHJpbmc6OnRvRG91
YmxlKGJvb2wqIG9rKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZT
dHJpbmcuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKaW5kZXggNTExYjljMTY0
YTFhNThjMTFkNGNmZDUzMjFlMzJmNTI3YjRjOWVkNi4uNDFlZDM1Y2NhNmU5ZjcxZjI2ZWRkYmQz
NWE3OGFlNmFlNjQ3ODA4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJp
bmcuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCkBAIC0xNzEsNiArMTcx
LDcgQEAgcHVibGljOgogCiAgICAgc2l6ZV90IGZpbmQoQ29kZVVuaXRNYXRjaEZ1bmN0aW9uIG1h
dGNoRnVuY3Rpb24sIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8g
bV9pbXBsLT5maW5kKG1hdGNoRnVuY3Rpb24sIHN0YXJ0KSA6IG5vdEZvdW5kOyB9CiAgICAgc2l6
ZV90IGZpbmQoY29uc3QgTENoYXIqIHN0cmluZywgdW5zaWduZWQgc3RhcnQgPSAwKSBjb25zdCB7
IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmZpbmQoc3RyaW5nLCBzdGFydCkgOiBub3RGb3VuZDsg
fQorICAgIHNpemVfdCBmaW5kKGNvbnN0IGNoYXIqIHN0cmluZywgdW5zaWduZWQgc3RhcnQgPSAw
KSBjb25zdCB7IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmZpbmQoc3RyaW5nLCBzdGFydCkgOiBu
b3RGb3VuZDsgfQogCiAgICAgLy8gRmluZCB0aGUgbGFzdCBpbnN0YW5jZSBvZiBhIHNpbmdsZSBj
aGFyYWN0ZXIgb3Igc3RyaW5nLgogICAgIHNpemVfdCByZXZlcnNlRmluZChVQ2hhciBjaGFyYWN0
ZXIsIHVuc2lnbmVkIHN0YXJ0ID0gTWF4TGVuZ3RoKSBjb25zdCB7IHJldHVybiBtX2ltcGwgPyBt
X2ltcGwtPnJldmVyc2VGaW5kKGNoYXJhY3Rlciwgc3RhcnQpIDogbm90Rm91bmQ7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFs
U2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1dvcmtsZXRH
bG9iYWxTY29wZS5jcHAKaW5kZXggYWMwNTA1ZDU0OTY0MjNmYzVmZGVlNjYzMGViN2Y5NTM4MDIx
MzM1OC4uZmY5MzcxMGYyMDk3NDZiYWFlZjlhNjZjNTdjZDAyNGMwOTUzY2IwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1dvcmtsZXRHbG9iYWxTY29w
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1dvcmtsZXRH
bG9iYWxTY29wZS5jcHAKQEAgLTE0Niw3ICsxNDYsNyBAQCBSZWZQdHI8QXVkaW9Xb3JrbGV0UHJv
Y2Vzc29yPiBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZTo6Y3JlYXRlUHJvY2Vzc29yKGNvbnN0IFN0
cgogICAgIGFyZ3MuYXBwZW5kKGFyZyk7CiAgICAgQVNTRVJUKCFhcmdzLmhhc092ZXJmbG93ZWQo
KSk7CiAKLSAgICBhdXRvKiBvYmplY3QgPSBKU0M6OmNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGpz
Q29uc3RydWN0b3IsIGFyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0IEF1ZGlvV29ya2xldFByb2Nl
c3NvciIpOworICAgIGF1dG8qIG9iamVjdCA9IEpTQzo6Y29uc3RydWN0KGdsb2JhbE9iamVjdCwg
anNDb25zdHJ1Y3RvciwgYXJncywgIkZhaWxlZCB0byBjb25zdHJ1Y3QgQXVkaW9Xb3JrbGV0UHJv
Y2Vzc29yIl9zKTsKICAgICBBU1NFUlQoISFzY29wZS5leGNlcHRpb24oKSA9PSAhb2JqZWN0KTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKaW5kZXgg
ZjU1M2MyNWRlNzlmNzMxYzA3OWY1YWUwZmUxZTE4YTBjNzBjNWQ2NS4uMjRhNDFhYjg3ZmY1OTE5
MWI4ZWFiZThmY2UxOGVlNjRiYjI5MGZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCkBAIC05OCw3ICs5OCw3IEBAIHRl
bXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTExfQVRUUklCVVRFUyBKCiAgICAgICAgIHJldHVybiB7IH07CiAKICAgICBhdXRvKiBq
c09iamVjdCA9IEpTQ2xhc3M6OmNyZWF0ZShzdHJ1Y3R1cmUsIGNhc3RlZFRoaXMtPmdsb2JhbE9i
amVjdCgpKTsKLSAgICBKU0M6OmNhbGwobGV4aWNhbEdsb2JhbE9iamVjdCwgY2FzdGVkVGhpcy0+
aW5pdGlhbGl6ZUZ1bmN0aW9uKCksIGpzT2JqZWN0LCBKU0M6OkFyZ0xpc3QoY2FsbEZyYW1lKSwg
IlRoaXMgZXJyb3Igc2hvdWxkIG5ldmVyIG9jY3VyOiBpbml0aWFsaXplIGZ1bmN0aW9uIGlzIGd1
YXJhbnRlZWQgdG8gYmUgY2FsbGFibGUuIik7CisgICAgSlNDOjpjYWxsKGxleGljYWxHbG9iYWxP
YmplY3QsIGNhc3RlZFRoaXMtPmluaXRpYWxpemVGdW5jdGlvbigpLCBqc09iamVjdCwgSlNDOjpB
cmdMaXN0KGNhbGxGcmFtZSksICJUaGlzIGVycm9yIHNob3VsZCBuZXZlciBvY2N1cjogaW5pdGlh
bGl6ZSBmdW5jdGlvbiBpcyBndWFyYW50ZWVkIHRvIGJlIGNhbGxhYmxlLiJfcyk7CiAgICAgcmV0
dXJuIEpTQzo6SlNWYWx1ZTo6ZW5jb2RlKGpzT2JqZWN0KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCmluZGV4IGIyNjI2ZmViNGEw
NTM3MzhlYTdkZWQxODI3Nzg2NWM0ZjgxMzRiNTguLjcxYWIxMmIxNTBmMGU3MmZkYTk1N2M5OTQx
YTA0MDdiYjRiNGVjYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NR2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TUdsb2JhbE9iamVjdC5jcHAKQEAgLTgyLDcgKzgyLDcgQEAgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihnZXRJbnRlcm5hbFdyaXRhYmxlU3RyZWFtKTsKIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04od2hlblNpZ25hbEFib3J0ZWQpOwogSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpc0Fib3J0
U2lnbmFsKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJET01HbG9iYWxPYmplY3QiLCAmSlNHbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTUdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0Il9z
LCAmSlNHbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0RPTUdsb2JhbE9iamVjdCkgfTsKIAogSlNET01HbG9iYWxPYmplY3Q6OkpTRE9N
R2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxET01XcmFwcGVy
V29ybGQ+JiYgd29ybGQsIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKiBnbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSkKICAgICA6IEpTR2xvYmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdE1ldGhvZFRhYmxlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XaW5kb3dCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
V2luZG93QmFzZS5jcHAKaW5kZXggZWQwZTI3NGE3ODQ1NjgwYTg5NTM5MGQ2MGQxMmNhYjI2NDdh
ZjVkZS4uNTdkMGI2NDk5ODVmZTA2YzI3NDg1YmE3YmY2YmY3ODFmMjQyODc4NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCkBAIC02OCw3ICs2
OCw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25z
dCBDbGFzc0luZm8gSlNET01XaW5kb3dCYXNlOjpzX2luZm8gPSB7ICJXaW5kb3ciLCAmSlNET01H
bG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0RPTVdpbmRvd0Jhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dCYXNlOjpz
X2luZm8gPSB7ICJXaW5kb3ciX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93QmFzZSkgfTsKIAogY29u
c3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5kb3dCYXNlOjpzX2dsb2JhbE9iamVj
dE1ldGhvZFRhYmxlID0gewogICAgICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAKaW5k
ZXggNTEyNWFjOGM5MGRhZDMyM2QwNjYwMmVhMTBkN2VmMGQzZDVmNzlkOC4uMjg3YmZiMDY1MGVk
NTAyMGNjNjNiZjhkMmU2Nzg5YTdkZWEyNjQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwCkBAIC00MCw3ICs0MCw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTRE9NV2luZG93UHJvcGVydGllczo6c19pbmZvID0geyAiV2luZG93UHJvcGVydGll
cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNET01XaW5kb3dQcm9wZXJ0aWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93UHJv
cGVydGllczo6c19pbmZvID0geyAiV2luZG93UHJvcGVydGllcyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRvd1Byb3BlcnRp
ZXMpIH07CiAKIC8vIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL3dpbmRv
dy1vYmplY3QuaHRtbCNkb20td2luZG93LW5hbWVkaXRlbQogc3RhdGljIGJvb2wganNET01XaW5k
b3dQcm9wZXJ0aWVzR2V0T3duUHJvcGVydHlTbG90TmFtZWRJdGVtR2V0dGVyKEpTRE9NV2luZG93
UHJvcGVydGllcyogdGhpc09iamVjdCwgRE9NV2luZG93JiB3aW5kb3csIEpTR2xvYmFsT2JqZWN0
KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0
eVNsb3QmIHNsb3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Zp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAKaW5kZXggYjUw
MTkwNTljMTM1ZWU3NmFiZWEzM2E5NTNmMjUwMzNhMTU3ZWQ4OC4uNmViYWRiNTE4Y2RkMmE5ZjJm
NGRjZmI1YTdiMjBhMTQ2MDIyYzI0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
LmNwcApAQCAtNDMsMTEgKzQzLDExIEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGpzRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yX29uUHJvbWlzZVJlCiBKU0NfQU5O
T1RBVEVfSE9TVF9GVU5DVElPTihKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclBy
b3RvdHlwZU5leHQsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yUHJvdG90eXBl
OjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxl
IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvckJhc2UpIH07Ci1jb25z
dCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjo6c19p
bmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGVJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0
b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlKSB9OworY29uc3QgSlND
OjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3I6OnNfaW5mbyA9
IHsgIkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
SXRlcmF0b3IpIH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJEaXJlY3Rv
cnkgSGFuZGxlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3Rv
dHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9y
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBHQ0Ns
aWVudDo6SXNvU3Vic3BhY2UqIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yOjpz
dWJzcGFjZUZvckltcGwoVk0mIHZtKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAKaW5kZXgg
NDE0ZjZkM2Q1MzQ2ZDZjMjg0ZWUyYzhhNzg1NDRjNjFjODBhMzk3MC4uYTA3YTc1NGI4MTZiYzkz
OTliOWI0NmZlZTRiNDMwZjUzNzdmZDQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCkBA
IC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6c19p
bmZvID0geyAiSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lEQlNlcmlhbGl6YXRpb25H
bG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNJREJTZXJpYWxpemF0aW9uR2xvYmFs
T2JqZWN0OjpzX2luZm8gPSB7ICJKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJREJT
ZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KSB9OwogCiBpbmxpbmUgSlNJREJTZXJpYWxpemF0aW9u
R2xvYmFsT2JqZWN0OjpKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERPTVdyYXBwZXJXb3JsZD4mJiBpbXBsKQogICAgIDogQmFz
ZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNSZW1vdGVET01XaW5kb3dCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAKaW5kZXggYTRkNzE1ZjcwOGM2
MGMwMjg2NTc5Y2YxNTkwMzU3NzAwYjdkNTRhZC4uM2UxMTA0MGQ5ZTFhZWZjMmIzNWY1ZTVkZDk3
NzFjODFkOGEyMDQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNS
ZW1vdGVET01XaW5kb3dCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwCkBAIC0zMiw3ICszMiw3IEBAIHVzaW5nIG5hbWVzcGFj
ZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUmVtb3Rl
RE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFsT2JqZWN0Ojpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVET01X
aW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUmVtb3RlRE9NV2luZG93QmFzZTo6c19p
bmZvID0geyAiV2luZG93Il9zLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1JlbW90ZURPTVdpbmRvd0Jhc2UpIH07CiAK
IGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTUmVtb3RlRE9NV2luZG93QmFzZTo6c19n
bG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICBudWxscHRyLCAvLyBzaGVsbFN1cHBvcnRz
UmljaFNvdXJjZUluZm8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
U2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAKaW5kZXggODNmOTRlMzEwOGY4ZTQ1
OGQ2ZDI0N2EzOWYwMmI5NTVhM2E2MWExMS4uMzMwNGI3Yjg4OGU5Y2EzYjVlNGZlM2UzN2Y4M2Fh
OWVjYjJiNDQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiU2hhZG93UmVhbG1H
bG9iYWxTY29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UpIH07Citj
b25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAi
U2hhZG93UmVhbG1HbG9iYWxTY29wZSJfcywgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNj
b3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNTaGFkb3dSZWFs
bUdsb2JhbFNjb3BlQmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3Vw
cG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTV2luZG93UHJveHkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXaW5k
b3dQcm94eS5jcHAKaW5kZXggNDY5OWQ4ZWRiNTFmMjNkMTg5MzdkYjg3YmZhNmI4OGZhYjE0ODBh
Ni4uMjcyMWI3NzZhZTY3YWI2NmZkMzViZWNjNDFmMTdjMTQ3ZjJhMzVlMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXaW5kb3dQcm94eS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNXaW5kb3dQcm94eS5jcHAKQEAgLTUwLDcgKzUwLDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFz
c0luZm8gSlNXaW5kb3dQcm94eTo6c19pbmZvID0geyAiSlNXaW5kb3dQcm94eSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXaW5kb3dQcm94
eSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dpbmRvd1Byb3h5OjpzX2luZm8gPSB7ICJKU1dpbmRv
d1Byb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTV2luZG93UHJveHkpIH07CiAKIGlubGluZSBKU1dpbmRvd1Byb3h5OjpKU1dpbmRv
d1Byb3h5KFZNJiB2bSwgU3RydWN0dXJlJiBzdHJ1Y3R1cmUsIERPTVdyYXBwZXJXb3JsZCYgd29y
bGQpCiAgICAgOiBCYXNlKHZtLCAmc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwCmluZGV4IDk2Y2RmNmUw
MDdiNDIwNjE1ZjRhNTM2NGE3YjlhOGNkZmM2MjMwNDAuLmI0MWVkM2U4NDI0MDNjZjVhMmQ1MTZm
NjMwMWEwMTBmNzYzZjVlMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAm
SlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dv
cmtlckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiX3MsICZK
U0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlKSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RN
ZXRob2RUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RU
YWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwCmluZGV4
IDA5OGJmNjNiNjBjZDNjNjZkODY2NDVkNWY1NTgyYjA2MzU4NmZhMTAuLmI2NGMyYWFlYWRhODE0
MTcyOWI2OTNhZjExYTU0MWM3NzdmMzQ1NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlLmNwcApAQCAtMzksNyArMzks
NyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtsZXRH
bG9iYWxTY29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtsZXRH
bG9iYWxTY29wZSJfcywgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlKSB9OwogCiBj
b25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2U6OnNf
Z2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCmluZGV4IDQ2YTBhNWFkMWUxNWFhNmIzZDAxNjUwYWJlZjVkMDExM2FmNGQxZGEuLjA3M2Ux
NThlMzFhNTMyYzJiMzM4NTc4N2E5NzkyYzQzMjMwNjRiNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC00NTU0LDcgKzQ1
NTQsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICAgICAkb2JqZWN0LT5HZW5l
cmF0ZUhhc2hUYWJsZSgkY2xhc3NOYW1lLCAkaGFzaE5hbWUsICRoYXNoU2l6ZSwgXEBoYXNoS2V5
cywgXEBoYXNoU3BlY2lhbHMsIFxAaGFzaFZhbHVlMSwgXEBoYXNoVmFsdWUyLCBcJWNvbmRpdGlv
bmFscywgXCVyZWFkV3JpdGVDb25kaXRpb25hbHMsICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5KTsK
IAogICAgICAgICBteSAkcHJvdG90eXBlSGFzaFRhYmxlID0gJGp1c3RHZW5lcmF0ZVZhbHVlQXJy
YXkgPyAibnVsbHB0ciIgOiAiJiR7Y2xhc3NOYW1lfVByb3RvdHlwZVRhYmxlIjsKLSAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFzc05hbWV9UHJvdG90eXBl
OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1cIiwgJkJhc2U6OnNfaW5mbywg
JHtwcm90b3R5cGVIYXNoVGFibGV9LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y2xh
c3NOYW1lfVByb3RvdHlwZSkgfTtcblxuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
Y29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlz
aWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5mbywgJHtwcm90b3R5cGVIYXNoVGFi
bGV9LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkg
fTtcblxuIik7CiAKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ2b2lkICR7Y2xhc3NOYW1l
fVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKVxuIik7CiAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAie1xuIik7CkBAIC00NjQ4LDcgKzQ2NDgsNyBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbgogICAgIH0KIAogICAgICMgLSBJbml0aWFsaXplIHN0YXRpYyBDbGFzc0luZm8g
b2JqZWN0Ci0gICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJGNsYXNzTmFt
ZSIgLiAiOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1cIiwgJkJhc2U6OnNf
aW5mbywgIik7CisgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJGNsYXNz
TmFtZSIgLiAiOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1cIl9zLCAmQmFz
ZTo6c19pbmZvLCAiKTsKIAogICAgIGlmICgkbnVtSW5zdGFuY2VQcm9wZXJ0aWVzID4gMCkgewog
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiYke2NsYXNzTmFtZX1UYWJsZSIpOwpAQCAtNjgz
MCwxMSArNjgzMCwxMSBAQCB1c2luZyAke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX0gPSBKU0RPTUl0
ZXJhdG9yUHJvdG90eXBlPCR7Y2xhc3NOYW1lfSwgJHtpdGVyYXRvcgogSlNDX0FOTk9UQVRFX0hP
U1RfRlVOQ1RJT04oJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9TmV4dCwgJHtpdGVyYXRvclByb3Rv
dHlwZU5hbWV9OjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gJHtp
dGVyYXRvck5hbWV9QmFzZTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRl
cmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKCR7aXRlcmF0b3JOYW1lfUJhc2UpIH07Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJh
dG9yTmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0
ZXJhdG9yTmFtZX0pIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yTmFtZX1CYXNl
OjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVyYXRvciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9y
TmFtZX1CYXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9OjpzX2lu
Zm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yTmFtZX0p
IH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JQcm90b3R5
cGVOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7aXRl
cmF0b3JQcm90b3R5cGVOYW1lfSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JQ
cm90b3R5cGVOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0
b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9KSB9OwogCiBFTkQKIApAQCAtNzgzMSw3ICs3ODMx
LDcgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRob2RzCiAgICAgICAgICRsZWFz
dENvbnN0cnVjdG9yTGVuZ3RoID0gMDsKICAgICB9CiAKLSAgICBwdXNoKEAkb3V0cHV0QXJyYXks
ICJ0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyAke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6c19p
bmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX0p
IH07XG5cbiIpOworICAgIHB1c2goQCRvdXRwdXRBcnJheSwgInRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvICR7Y29uc3RydWN0b3JDbGFzc05hbWV9OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50
ZXJmYWNlTmFtZX1cIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKCR7Y29uc3RydWN0b3JDbGFzc05hbWV9KSB9O1xuXG4iKTsKIAogICAgICMg
SWYgdGhlIGludGVyZmFjZSBoYXMgYSBwYXJlbnQgaW50ZXJmYWNlIHdoaWNoIGRvZXMgbm90IGhh
dmUgW0xlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0XSwgdGhlbiB1c2UgaXRzIGludGVyZmFjZSBvYmpl
Y3QgYXMgcHJvdG90eXBlLAogICAgICMgb3RoZXJ3aXNlIHVzZSBGdW5jdGlvblByb3RvdHlwZTog
aHR0cDovL2hleWNhbS5naXRodWIuaW8vd2ViaWRsLyNpbnRlcmZhY2Utb2JqZWN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93
LmNwcAppbmRleCA3Nzg3ZTFkZjA3ZDhiNTM1NWE3ODgyNThjODg4Y2Y1MDU5MjM4NTgyLi4wZmVh
MDI1OTU2YjAxNTk5ZTdiNTYwMzg1NDM4NjEzNmEyYTAxMTEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5jcHAKQEAg
LTE0Nyw3ICsxNDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNET01XaW5kb3dU
YWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNET01XaW5kb3dU
YWJsZSA9IHsgMTIsIDMxLCB0cnVlLCBKU0RPTVdpbmRvdzo6aW5mbygpLCBKU0RPTVdpbmRvd1Rh
YmxlVmFsdWVzLCBKU0RPTVdpbmRvd1RhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNE
T01XaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
RE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRv
d0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNET01XaW5kb3dET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTc3LDcgKzE3Nyw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxl
ID0geyAxLCAxLCB0cnVlLCBKU0RPTVdpbmRvdzo6aW5mbygpLCBKU0RPTVdpbmRvd1Byb3RvdHlw
ZVRhYmxlVmFsdWVzLCBKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENs
YXNzSW5mbyBKU0RPTVdpbmRvd1Byb3RvdHlwZTo6c19pbmZvID0geyAiRE9NV2luZG93IiwgJkJh
c2U6OnNfaW5mbywgJkpTRE9NV2luZG93UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNE
T01XaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyJfcywgJkJhc2U6OnNfaW5m
bywgJkpTRE9NV2luZG93UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNET01XaW5kb3dQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNET01XaW5kb3dQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE4Niw3ICsxODYsNyBAQCB2b2lkIEpTRE9N
V2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTVdp
bmRvdzo6c19pbmZvID0geyAiRE9NV2luZG93IiwgJkJhc2U6OnNfaW5mbywgJkpTRE9NV2luZG93
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3cpIH07Citjb25z
dCBDbGFzc0luZm8gSlNET01XaW5kb3c6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyJfcywgJkJhc2U6
OnNfaW5mbywgJkpTRE9NV2luZG93VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNET01XaW5kb3cpIH07CiAKIEpTRE9NV2luZG93OjpKU0RPTVdpbmRvdyhWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV2luZG93PiYmIGltcGwsIEpTV2luZG93UHJveHkqIHBy
b3h5KQogICAgIDogSlNFdmVudFRhcmdldCh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpLCBw
cm94eSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRl
eCAyZGNiYTlmNjQwZmExMDA4NGU4Y2I1ZGEwYjgwNTNmNWQxYjg4OTk5Li45Mjg2OGQ1Nzc3NTZh
Y2M3MDRiYzIyZTgxNzIyZmJiMmUxZTBiODU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9
OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVU
YWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygp
LCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpTRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkRl
ZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsK
IAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA0LDcgKzEwNCw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5
cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiLCAm
QmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiX3Ms
ICZCYXNlOjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTMsNyArMTEzLDcgQEAgdm9p
ZCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7
ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3Bl
KSB9OwogCiBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZT4mJiBpbXBsKQogICAgIDogSlNXb3JrZXJHbG9iYWxTY29wZSh2bSwgc3Ry
dWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3BwCmluZGV4IGU1ZmMzNWM4YWU5
YzMxYjBkMTg3MjY2ZmYxOTdiOTMwMDAzNjI3MmIuLjQ2OWExMjFmMjQ5NWU2YjQyOGFlZWY2MjA4
OGFkMDVmZTU0Y2E3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgU1RB
VElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNFeHBvc2VkU3RhclByb3RvdHlwZSwg
SlNFeHBvc2VkU3RhclByb3RvdHkKIAogdXNpbmcgSlNFeHBvc2VkU3RhckRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNFeHBvc2VkU3Rhcj47CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRXhwb3NlZFN0YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNFeHBvc2VkU3RhckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
RXhwb3NlZFN0YXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJvcGVyYXRpb25KdXN0
Rm9yV29ya2VyQ29udGV4dHMiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UmF3TmF0aXZlRnVuY3Rpb24+KGpzRXhwb3NlZFN0YXJQcm90b3R5cGVGdW5jdGlvbl9vcGVyYXRp
b25KdXN0Rm9yV29ya2VyQ29udGV4dHMpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25z
dCBDbGFzc0luZm8gSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6c19pbmZvID0geyAiRXhwb3NlZFN0
YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTRXhwb3NlZFN0YXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rh
clByb3RvdHlwZTo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhclByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU0V4cG9zZWRTdGFyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xNDMsNyArMTQzLDcgQEAgdm9pZCBKU0V4cG9zZWRTdGFyUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyOjpzX2luZm8gPSB7
ICJFeHBvc2VkU3RhciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRT
dGFyOjpzX2luZm8gPSB7ICJFeHBvc2VkU3RhciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyKSB9OwogCiBKU0V4cG9z
ZWRTdGFyOjpKU0V4cG9zZWRTdGFyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8RXhwb3NlZFN0YXI+JiYgaW1wbCkKICAgICA6IEpTRXZl
bnRUYXJnZXQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcAppbmRleCBlYjg3ZDZjODdmYjVlMDhk
MzBhODg3ZTc3MzM1MWRhZTZmNTg4YTc0Li5mZjExNDg1YzVlNjhkYzU3YmFiZjJhZWE0YzY1NjU1
OTA0MzE3YWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5jcHAK
QEAgLTE1MSw3ICsxNTEsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TExfQVRUUklCVVRFUyBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTQogfQogSlNDX0FOTk9U
QVRFX0hPU1RfRlVOQ1RJT04oSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rv
ckNvbnN0cnVjdCwgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6Y29u
c3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJB
bmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU0V4cG9z
ZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xNzYsNyArMTc2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTRXhwb3NlZFRv
V29ya2VyQW5kV2luZG93UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZG9Tb21ldGhp
bmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlRnVuY3Rpb25fZG9Tb21ldGhp
bmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNFeHBvc2Vk
VG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFu
ZFdpbmRvdyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4
cG9zZWRUb1dvcmtlckFuZFdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTg1LDcgKzE4NSw3IEBAIHZvaWQgSlNFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93OjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJB
bmRXaW5kb3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93OjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRX
aW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cpIH07CiAKIEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93OjpKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyhTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPEV4cG9zZWRUb1dvcmtlckFu
ZFdpbmRvdz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPEV4cG9zZWRUb1dvcmtlckFuZFdp
bmRvdz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAKaW5kZXggN2E1NmE3OWI2YmExZmY5ZTU2YjRh
MjcxYzIyMThkNGQ0ZjY4MjZhNS4uMzViNjM4ZWY2NGQ0MTQzYmE3MjQ5MWY5NjU2MDMwMDAwZTEz
Y2Q0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmNwcApAQCAtNzMs
NyArNzMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNQYWludFdvcmtsZXRHbG9i
YWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Bh
aW50V29ya2xldEdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTUGFpbnRXb3JrbGV0
R2xvYmFsU2NvcGU6OmluZm8oKSwgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlVmFsdWVz
LCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNQYWludFdvcmts
ZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwMyw3ICsxMDMsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1BhaW50V29ya2xldEdsb2JhbFNj
b3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGU6OmluZm8oKSwgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVz
LCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3Qg
Q2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlBhaW50V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0
R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xl
dEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNQYWludFdvcmtsZXRHbG9iYWxT
Y29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEyLDcgKzExMiw3
IEBAIHZvaWQgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZTo6c19pbmZvID0g
eyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNQYWludFdvcmts
ZXRHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRX
b3JrbGV0R2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNQYWludFdvcmtsZXRHbG9i
YWxTY29wZTo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiX3MsICZCYXNlOjpz
X2luZm8sICZKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZSkgfTsKIAogSlNQYWludFdvcmts
ZXRHbG9iYWxTY29wZTo6SlNQYWludFdvcmtsZXRHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBSZWY8UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU+JiYgaW1wbCkKICAgICA6
IEpTV29ya2xldEdsb2JhbFNjb3BlKHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCA5OTg2NWQxZTBiZmJi
NDU5ZWEzZDJiMmYxNzBlMDQ4MGYwYTFlODM0Li5mZWFmMTc5MWE4YjVlMGNjMmQ3NjdmYzExMmRm
ZmE1ZTcwMWU2YzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5j
cHAKQEAgLTczLDcgKzczLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpT
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2VydmljZVdvcmtlckdsb2JhbFNj
b3BlVGFibGVWYWx1ZXMsIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGVJbmRleCB9Owot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDMsNyArMTAz
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2VydmljZVdvcmtlckdsb2JhbFNj
b3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUs
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUiLCAm
QmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6
c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgSlNTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZv
ID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNTZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSkgfTsKIAogSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGU6OkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFJlZjxTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpTV29ya2Vy
R2xvYmFsU2NvcGUodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFs
U2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZS5jcHAKaW5kZXggODkxYTIzMmRhOWU3ZWJkYjlmMzMxY2U5MjE3
ZGRkMGJjMzc1OTNhYS4uYjU5OTQyNTdlMjgwZDRmNDBkMjk3MDMyYTVhOWRhOWMwYjgyMTkxYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5jcHAKQEAgLTc1LDcgKzc1LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRh
YmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1NoYWRvd1JlYWxt
R2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3Bl
OjppbmZvKCksIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhZG93
UmVhbG1HbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhZG93UmVhbG1HbG9iYWxTY29wZSJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
U2hhZG93UmVhbG1HbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC05Miw3ICs5Miw3IEBAIHRlbXBsYXRlPD4gdm9pZCBKU1NoYWRvd1JlYWxtR2xvYmFsU2Nv
cGVET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRpZXMoVk0mCiAgICAgcHV0RGlyZWN0
KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5wcm90b3R5cGUsIGdsb2JhbE9iamVjdC5nZXRQcm90b3R5
cGVEaXJlY3Qodm0pLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERl
bGV0ZSk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGU6OnNf
aW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNT
aGFkb3dSZWFsbUdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2hhZG93UmVhbG1H
bG9iYWxTY29wZTo6c19pbmZvID0geyAiU2hhZG93UmVhbG1HbG9iYWxTY29wZSJfcywgJkJhc2U6
OnNfaW5mbywgJkpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZSkgfTsKIAogSlNTaGFkb3dSZWFs
bUdsb2JhbFNjb3BlOjpKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgUmVmPFNoYWRvd1JlYWxtR2xvYmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPih2bSwgc3RydWN0dXJlLCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IGEw
MjQ5NDA2MmRkN2RkNjIzMmQxZWJhNDAyNTZiMzBkYTM1MGNiMGMuLjdhMzVlNDliNDQwMmY4NDM3
ZDZmY2JjNmJhMGFiNWQxMDZmOTNiYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9i
YWxTY29wZS5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBj
b25zdCBIYXNoVGFibGUgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0
cnVlLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2hhcmVkV29ya2VyR2xv
YmFsU2NvcGVUYWJsZVZhbHVlcywgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXgg
fTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZURPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDQsNyArMTA0LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGVUYWJsZVZhbHVlcywgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRh
YmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2lu
Zm8sICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTExMyw3ICsxMTMsNyBAQCB2b2lkIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTU2hhcmVkV29ya2VyR2xv
YmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2Jh
bFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUp
IH07CiAKIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGU6OkpTU2hhcmVkV29ya2VyR2xvYmFsU2Nv
cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFNoYXJlZFdvcmtlckdsb2JhbFNj
b3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtlckdsb2JhbFNjb3BlKHZtLCBzdHJ1Y3R1cmUsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNwcAppbmRleCAxYjhmNjFhNmZhMGI1
ZjA5ODhiNDFkNThiMDFhNTJjNzY4MzRiMWUyLi5kNjQ5ZjFkMzMwMmYyYTg0ZjM4NDBhMjYyODQ1
YjdmNWQ3YTIxYTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5jcHAKQEAgLTExMSw3ICsxMTEs
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RDRVJlYWN0aW9u
c1Byb3RvdHlwZSwgSlNUZXN0Q0VSZWFjdGlvbgogCiB1c2luZyBKU1Rlc3RDRVJlYWN0aW9uc0RP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0Q0VS
ZWFjdGlvbnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9u
c0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnMiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rp
b25zRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
RVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnMiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdENFUmVhY3Rpb25zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0
Myw3ICsxNDMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q0VSZWFjdGlv
bnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJtZXRob2RXaXRoQ0VSZWFjdGlvbnNO
b3ROZWVkZWQiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZl
RnVuY3Rpb24+KGpzVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlRnVuY3Rpb25fbWV0aG9kV2l0aENF
UmVhY3Rpb25zTm90TmVlZGVkKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFj
dGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENFUmVhY3Rpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
Q0VSZWFjdGlvbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE1Miw3ICsxNTIsNyBAQCB2b2lkIEpT
VGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RDRVJlYWN0aW9uczo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJl
YWN0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uczo6c19pbmZvID0g
eyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zKSB9OwogCiBKU1Rlc3RDRVJlYWN0
aW9uczo6SlNUZXN0Q0VSZWFjdGlvbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q0VSZWFjdGlvbnM+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0Q0VSZWFjdGlvbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIu
Y3BwCmluZGV4IGQwMzNlZjgzZjkxYzI5NDk3NmMxZmM3ZDlkZjU0MGUzNTE0ZThkZDUuLjQxMGY2
MTkyNjE3NjU2ZDI3YzNhZTk2NGY5MmExMDIzMjRjZDk0NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lm
aWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5jcHAKQEAgLTk1LDcgKzk1LDcgQEAgU1RBVElDX0FT
U0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclBy
b3RvdHlwZSwgSlNUZXMKIAogdXNpbmcgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllckRPTUNv
bnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0Q0VSZWFj
dGlvbnNTdHJpbmdpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVh
Y3Rpb25zU3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjIsNyArMTIyLDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclBy
b3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lm
aWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTMxLDcgKzEzMSw3IEBAIHZvaWQgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhP
VVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNT
dHJpbmdpZmllcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlv
bnNTdHJpbmdpZmllcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcikgfTsKIAogSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdp
Zmllcjo6SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDRVJlYWN0aW9uc1N0cmlu
Z2lmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFj
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENh
bGxUcmFjZXIuY3BwCmluZGV4IDg3NzNmNDE0OTE2YjViZjBlZmNhNWNhYmQyZjk2YTljYzljMDY5
YWUuLjcxNmMwN2VkZmFkNDUxZmExOWRmZjNmYzg5YmI0OTk5NmIyOWY1OGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2FsbFRyYWNlci5jcHAKQEAgLTEyNiw3ICsxMjYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0Q2FsbFRyYWNlckNvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAKIHN0YXRp
Y19hc3NlcnQoVGVzdENhbGxUcmFjZXI6OnRlc3RDb25zdFZhbHVlID09IGZhbHNlLCAidGVzdENv
bnN0VmFsdWUgaW4gVGVzdENhbGxUcmFjZXIgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwi
KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbFRyYWNlckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2Vy
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RDYWxsVHJhY2Vy
RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3Qg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE2NCw3ICsxNjQsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZVRhYmxl
VmFsdWVzW10gPQogICAgIHsgInRlc3RDb25zdFZhbHVlIiwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udERlbGV0ZSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6Q29uc3RhbnRJbnRlZ2VyLCBOb0ludHJpbnNpYywgeyAobG9uZyBs
b25nKShmYWxzZSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RDYWxsVHJhY2VyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbFRyYWNlcjo6c19pbmZvID0geyAi
VGVzdENhbGxUcmFjZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
Q2FsbFRyYWNlcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlcikg
fTsKIAogSlNUZXN0Q2FsbFRyYWNlcjo6SlNUZXN0Q2FsbFRyYWNlcihTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDYWxsVHJhY2Vy
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENhbGxUcmFjZXI+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrSW50ZXJmYWNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVy
ZmFjZS5jcHAKaW5kZXggY2YyN2M2NjM5NzQ1N2E0NDY1MzkwNDk4NTI0MmYwZWQwZDM2Yzg3OC4u
NDhiNGMyZjc4MTdhNzQ3M2MwY2EzNTU0YWQ2YzQ4ZWY4ZjZmMjNlYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrSW50ZXJm
YWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q2FsbGJhY2tJbnRlcmZhY2UuY3BwCkBAIC0xNTMsNyArMTUzLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlQ29uc3RydWN0b3JUYWJsZVZh
bHVlc1tdID0KIHN0YXRpY19hc3NlcnQoVGVzdENhbGxiYWNrSW50ZXJmYWNlOjpDT05TVEFOVDEg
PT0gMSwgIkNPTlNUQU5UMSBpbiBUZXN0Q2FsbGJhY2tJbnRlcmZhY2UgZG9lcyBub3QgbWF0Y2gg
dmFsdWUgZnJvbSBJREwiKTsKIHN0YXRpY19hc3NlcnQoVGVzdENhbGxiYWNrSW50ZXJmYWNlOjpD
T05TVEFOVDIgPT0gMiwgIkNPTlNUQU5UMiBpbiBUZXN0Q2FsbGJhY2tJbnRlcmZhY2UgZG9lcyBu
b3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENh
bGxiYWNrSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsYmFja0ludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxiYWNrSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxiYWNr
SW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RD
YWxsYmFja0ludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcApp
bmRleCBhMzJiMmQ4Yjg5NTRhYTE2ZDI0YWVhZTlmODBiNDQ0ODExOTZlMGVlLi44MjExMGQzNDY2
ODlhNTNkNTBjMDI3ZDUzNzJkOTA1M2YyMmMwYzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKQEAgLTg0LDcgKzg0LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWls
dGluQ29uc3RydWN0b3JQcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvciA9IEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yPEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTMsNyArMTEzLDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJv
dG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0Q2xhc3NX
aXRoSlNCdWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjIsNyArMTIy
LDcgQEAgdm9pZCBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFz
c1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3RvcikgfTsKIAogSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3I6OkpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENsYXNzV2l0aEpTQnVpbHRp
bkNvbnN0cnVjdG9yPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
b25kaXRpb25hbEluY2x1ZGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNwcAppbmRleCAwNDZmNzNjNjRlODk5
ODJiNDhmYjFiN2M1MjY5NDNhZTMxNDA5NTlmLi5kYWI1Y2UyMTI5ZWIyY2Y4ZDA3ZmE0NTkwZWUy
MzJlMzljOTU5ZDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuY3Bw
CkBAIC0xNzgsNyArMTc4LDcgQEAgc3RhdGljX2Fzc2VydChUZXN0Q29uZGl0aW9uYWxJbmNsdWRl
czo6Q09OU1RfSU1QTCA9PSAyLCAiQ09OU1RfSU1QTCBpbiBUZXN0Q29uZGkKIHN0YXRpY19hc3Nl
cnQoVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OlBBUlRJQUxfTUlYSU5fQ09OU1RBTlRfRlJPTV9Q
QVJUSUFMID09IDUsICJQQVJUSUFMX01JWElOX0NPTlNUQU5UX0ZST01fUEFSVElBTCBpbiBUZXN0
Q29uZGl0aW9uYWxJbmNsdWRlcyBkb2VzIG5vdCBtYXRjaCB2YWx1ZSBmcm9tIElETCIpOwogI2Vu
ZGlmCiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc0RP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q29uZGl0aW9uYWxJ
bmNsdWRlc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0zMDMsNyArMzAz
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDb25k
aXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtNDUwLDcgKzQ1MCw3IEBAIHZvaWQgSlNUZXN0Q29u
ZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFs
SW5jbHVkZXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcykgfTsKIAogSlNUZXN0Q29uZGl0aW9uYWxJbmNs
dWRlczo6SlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDb25kaXRpb25hbEluY2x1ZGVz
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwCmluZGV4IGM1YzdiNmJhOTgyZDI0OWQ4OWJiNzNl
OTYyOTcxZDljZDRmNjQ4YmYuLmRhNjFkNjkzNjc5Mzk3ODQxYTAzMDUyZDEyNGRlMTExNTI3MDgy
NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZS5jcHAKQEAg
LTEzOSw3ICsxMzksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q29uZGl0
aW9uYWxseVJlYWRXcml0ZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hU
YWJsZSBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlVGFibGUgPSB7IDIsIDcsIHRydWUsIEpT
VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OmluZm8oKSwgSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZVRhYmxlVmFsdWVzLCBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlVGFibGVJbmRl
eCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRp
b25hbGx5UmVhZFdyaXRlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTE4MSw3ICsxODEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsg
InNldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVByb21pc2UiLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IpLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVfc2V0dGluZ3NDb25kaXRpb25hbGx5
UmVhZFdyaXRlQXR0cmlidXRlUHJvbWlzZSksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJv
cGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KHNldEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVf
c2V0dGluZ3NDb25kaXRpb25hbGx5UmVhZFdyaXRlQXR0cmlidXRlUHJvbWlzZSkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5
UmVhZFdyaXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFs
bHlSZWFkV3JpdGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMjMzLDcgKzIzMyw3IEBAIHZvaWQgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0
aW9uYWxseVJlYWRXcml0ZTo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUi
LCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZTo6c19pbmZvID0g
eyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RD
b25kaXRpb25hbGx5UmVhZFdyaXRlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSkgfTsKIAogSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZTo6SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDb25kaXRpb25hbGx5
UmVhZFdyaXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENvbmRpdGlvbmFsbHlS
ZWFkV3JpdGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJ
VC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9N
SklULmNwcAppbmRleCA3M2U0NDQzYzFlMDY3MGQxOTBmMjQyYjk5Njc4NGY0MDlmN2JmNzhlLi44
YjljMzQ1ZTQ1ZTM3YmZlZTlmYjQ1ZTVhNWNkM2ZjYTU2NmE2MjEzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmNw
cApAQCAtNTAxLDcgKzUwMSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdERPTUpJVFByb3RvdHlwZSwgSlNUZXN0RE9NSklUUHJvdG90eXBlCiAKIHVzaW5nIEpT
VGVzdERPTUpJVERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0RE9NSklUPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9N
SklURE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVERPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklURE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RE9NSklURE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RET01KSVRET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNTY0LDcgKzU2NCw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RET01KSVRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7
ICJnZXRFbGVtZW50c0J5TmFtZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpGdW5jdGlvbiB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUpJVEZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3RET01KSVRQcm90b3R5cGVGdW5jdGlvbl9nZXRFbGVtZW50c0J5TmFtZSksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8Y29uc3QgSlNDOjpET01KSVQ6OlNpZ25hdHVyZSo+KCZET01K
SVRTaWduYXR1cmVGb3JUZXN0RE9NSklUR2V0RWxlbWVudHNCeU5hbWUpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RET01KSVRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RET01K
SVQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERPTUpJVFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RET01KSVRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RE9NSklUUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdERPTUpJVFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtNTczLDcgKzU3Myw3IEBAIHZvaWQgSlNUZXN0RE9NSklUUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RET01KSVQ6OnNfaW5mbyA9IHsgIlRlc3RE
T01KSVQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERPTUpJVCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RET01KSVQ6OnNfaW5m
byA9IHsgIlRlc3RET01KSVQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RE9NSklUKSB9OwogCiBKU1Rlc3RET01KSVQ6OkpTVGVz
dERPTUpJVChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCwgUmVmPFRlc3RET01KSVQ+JiYgaW1wbCkKICAgICA6IEpTTm9kZShzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmNwcApp
bmRleCBlYTVhMjU0ZGE4MWVjNGQ0ZWIyZGRmNTI1YjYyYThiMGNmNDNjZGRhLi4zZDNjNDNjODU4
OTYwYzlkN2ZmODQyYzk0Y2NkYWYyNmQ1Y2I2YjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pT
T04uY3BwCkBAIC0xNDQsNyArMTQ0LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hB
UkFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZSwgSlNUZXN0RGVmYXVsdFQKIAogdXNp
bmcgSlNUZXN0RGVmYXVsdFRvSlNPTkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTj47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT04iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkRP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xOTAsNyArMTkwLDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGVUYWJs
ZVZhbHVlc1tdID0KICAgICB7ICJ0b0pTT04iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGVG
dW5jdGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRU
b0pTT04iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9K
U09OUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0yMTYsNyArMjE2LDcg
QEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVs
dFRvSlNPTiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZh
dWx0VG9KU09OOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTiJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09OKSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OOjpKU1Rlc3REZWZhdWx0VG9KU09OKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dERlZmF1bHRUb0pTT04+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RGVmYXVsdFRv
SlNPTj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuY3BwCmluZGV4
IDk1ODU3NGJjNmQ4NzA2OTk0OTdhMDE5ZDYyODQ1MjU3N2I2YTM4MzEuLmNkMzY3NWM2Yzc5YjE5
NzM0ZTlmOGZhOTMwMDQyYmZhZGFhODMyZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9z
ZWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZFByb3RvdHlwCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkPjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRC
eUV4cG9zZWQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRC
eUV4cG9zZWRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEy
Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09ORmls
dGVyZWRCeUV4cG9zZWRQcm90b3R5cGVUYWJsZVZhCiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZh
dWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGVGdW5jdGlvbl90b0pTT04pLCAoaW50
cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNP
TkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNP
TkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlF
eHBvc2VkUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlF
eHBvc2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZSkgfTsK
IAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0OSw3ICsxNDksNyBAQCB2b2lkIEpTVGVzdERl
ZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkOjpzX2lu
Zm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09ORmlsdGVyZWRCeUV4cG9zZWQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTkZpbHRlcmVkQnlFeHBvc2VkOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRl
cmVkQnlFeHBvc2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCkgfTsKIAog
SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkOjpKU1Rlc3REZWZhdWx0VG9KU09O
RmlsdGVyZWRCeUV4cG9zZWQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhw
b3NlZD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmNwcApp
bmRleCAzMjNlZjA4MmMxYmM3ZjE1ZjZlMmQ2ZDEyYzg1YzUyNjAzZTIxZDRlLi5kZjlmMmQ4ZGY0
NmVmYmUwY2JlMmY5YTFkNmE3YmI4MjJkZDBmNzY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5o
ZXJpdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5jcHAKQEAgLTgyLDcgKzgy
LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3QKIAogdXNpbmcgSlNUZXN0RGVmYXVsdFRvSlNP
TkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RD
b25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlPjsKIAot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5o
ZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZURPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERl
ZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVj
dEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5
cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiB7CkBAIC0xMDUsNyArMTA1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlUHJvdG90eXBlVGFibGUK
ICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2VDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVy
dHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5k
aXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERl
ZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVj
dEluaGVyaXRhbmNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
MTQsNyArMTE0LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5j
ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVs
dFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2U6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09O
SW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2Up
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFu
Y2U6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSkgfTsKIAogSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2U6OkpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVy
aXRhbmNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlPiYmIGltcGwpCiAg
ICAgOiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3Bw
CmluZGV4IGRlOTdkMjNkZGM1ODNjMDlhMzY0NzdiNWZlN2IyMDBlMDRhZGU1ZmUuLjM0OTQ2NTg4
NjVkNDEzNGE2NWRhMGRkZjVlM2ViN2ZhNTA0MDE2OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0LmNwcApAQCAtMTA5LDcgKzEwOSw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBl
LCBKU1Rlc3RECiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTM0LDcgKzEzNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZh
dWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInRvSlNPTiIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGVGdW5jdGlvbl90b0pTT04pLCAoaW50
cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0
VG9KU09OSW5oZXJpdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTQzLDcgKzE0Myw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0OjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0OjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
OjpKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OSW5oZXJpdD4m
JiBpbXBsKQogICAgIDogSlNUZXN0RGVmYXVsdFRvSlNPTihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdEZpbmFsLmNwcAppbmRleCA3ODNjOWRiOTRkMzYzZTFjMTFhOTg2ZjNmODM4YTgwNmVmNGY3
YWQ2Li41ODQzMTdjZjdkYTI2MWY0MzY1OWJlMDVjYTJhZjJhNGJlZjllYjE0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTkluaGVyaXRGaW5hbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwuY3BwCkBAIC0xMTEsNyAr
MTExLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZSwgSlMKIAogdXNpbmcgSlNUZXN0RGVmYXVsdFRv
SlNPTkluaGVyaXRGaW5hbERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0
cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbD47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRv
SlNPTkluaGVyaXRGaW5hbERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xMzcsNyArMTM3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGVUYWJsZVZhbHVlc1sKICAg
ICB7ICJ0b0pTT04iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGVGdW5j
dGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xNDYsNyArMTQ2LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dEZpbmFsUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsOjpzX2luZm8gPSB7ICJUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXRGaW5hbCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsKSB9
OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsOjpKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdEZpbmFsKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw+JiYgaW1wbCkKICAg
ICA6IEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuY3BwCmluZGV4IDhlNmZlMzkxYmUxMDBmMzYyZGYzMjBm
Zjk2NTA4NDIxNDg2OWQ2NTguLjhkODA4ZDBhNDk2ODNjN2RjZWIzNmFmNTU0OWJjZWU2YmVmMTcw
OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZS5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0
ZVByb3QKIAogdXNpbmcgSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZURP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVs
ZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsK
K3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJp
YnV0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVsZWdh
dGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGVUYWIKICAgICB7
ICJwcm9wZXJ0eTUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUp
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVfc2hhcmVk
QXR0cmlidXRlMiksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRW
YWx1ZUZ1bmM+KHNldEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVfc2hh
cmVkQXR0cmlidXRlMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRl
VG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhl
dGljQXR0cmlidXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRl
VG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50
aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVsZWdhdGVUb1NoYXJl
ZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdERlbGVn
YXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSkgfTsK
IAogSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTo6SlNUZXN0RGVsZWdh
dGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhl
dGljQXR0cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5jcHAKaW5kZXggNWM1MDQwY2U2M2Vj
YTJmZjA5M2JhOTIwZThmNGQzNzMxMzUzOTAwMi4uZDNjY2Y2MDBjZDVkOGFhOGY0N2M2YmU0Y2I0
ZWE0OTY4ZjA1OTRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuY3BwCkBAIC0xMTQs
NyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERvbWFpblNlY3Vy
aXR5VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTVGVzdERv
bWFpblNlY3VyaXR5VGFibGUgPSB7IDEsIDEsIHRydWUsIEpTVGVzdERvbWFpblNlY3VyaXR5Ojpp
bmZvKCksIEpTVGVzdERvbWFpblNlY3VyaXR5VGFibGVWYWx1ZXMsIEpTVGVzdERvbWFpblNlY3Vy
aXR5VGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWlu
U2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3REb21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dERvbWFpblNlY3VyaXR5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNDEsNyArMTQxLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAg
ICAgeyAib3ZlcmxvYWRlZE1ldGhvZCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RG9tYWluU2VjdXJpdHlQcm90b3R5cGVGdW5j
dGlvbl9vdmVybG9hZGVkTWV0aG9kKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
RG9tYWluU2VjdXJpdHkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RG9t
YWluU2VjdXJpdHkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHlQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0RG9tYWluU2VjdXJpdHlQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTE1MCw3ICsxNTAsNyBAQCB2b2lkIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REb21haW5TZWN1cml0eTo6c19pbmZv
ID0geyAiVGVzdERvbWFpblNlY3VyaXR5IiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdERvbWFpblNl
Y3VyaXR5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2Vj
dXJpdHkpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHk6OnNfaW5mbyA9
IHsgIlRlc3REb21haW5TZWN1cml0eSJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdERvbWFpblNl
Y3VyaXR5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2Vj
dXJpdHkpIH07CiAKIEpTVGVzdERvbWFpblNlY3VyaXR5OjpKU1Rlc3REb21haW5TZWN1cml0eShT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3REb21haW5TZWN1cml0eT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3REb21h
aW5TZWN1cml0eT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5h
YmxlZEJ5U2V0dGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5jcHAKaW5kZXggOWYyNjg4OTc4NDQxNDRlMGQxOGQ1
OWMxMmQyZmNmOThmMjA2YTJmYi4uMDVjYTI5OGJiNjQ5ZWU2ZDU1ZDAyMWI1NGVlNzRiZTdjMDMz
MjllNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5nLmNwcApAQCAtMTM1LDcgKzEz
NSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RFbmFibGVkQnlTZXR0aW5n
Q29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0KIAogc3RhdGljX2Fzc2VydChUZXN0RW5hYmxlZEJ5
U2V0dGluZzo6ZW5hYmxlZEJ5U2V0dGluZ0NvbnN0YW50ID09IDAsICJlbmFibGVkQnlTZXR0aW5n
Q29uc3RhbnQgaW4gVGVzdEVuYWJsZWRCeVNldHRpbmcgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJv
bSBJREwiKTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEJ5U2V0
dGluZ0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0RW5hYmxlZEJ5U2V0dGluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE4Myw3ICsxODMsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1Byb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgImVuYWJsZWRCeVNldHRpbmdDb25zdGFudCIsIEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnREZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8
IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsg
KGxvbmcgbG9uZykoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRC
eVNldHRpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0aW5nIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RF
bmFibGVkQnlTZXR0aW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJs
ZWRCeVNldHRpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0aW5nIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZ1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjM2LDcgKzIz
Niw3IEBAIHZvaWQgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEJ5U2V0dGluZzo6c19pbmZvID0geyAi
VGVzdEVuYWJsZWRCeVNldHRpbmciLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0RW5hYmxlZEJ5U2V0
dGluZ1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNl
dHRpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEJ5U2V0dGluZzo6c19pbmZv
ID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RFbmFi
bGVkQnlTZXR0aW5nVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5h
YmxlZEJ5U2V0dGluZykgfTsKIAogSlNUZXN0RW5hYmxlZEJ5U2V0dGluZzo6SlNUZXN0RW5hYmxl
ZEJ5U2V0dGluZyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3RFbmFibGVkQnlTZXR0aW5nPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdEVuYWJsZWRCeVNldHRpbmc+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAKaW5kZXggM2Fm
N2RiMzQzMTk3MWJmNjQ1OGI1YTNlN2YyNmJiODIxMjc1MDM3OC4uZTE5NTEwNjllOWYxYmMwOTQ4
NGQ0YzQwZjMxMDc0NzIwOTViNzZkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHQuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlLCBKU1Rlc3RFbmFiCiAKIHVzaW5n
IEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RFbmFibGVkRm9yQ29udGV4dD47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHRET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRG
b3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0RW5hYmxlZEZvckNvbnRleHRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTEwLDcgKzExMCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsg
ImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3Bl
cnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RFbmFibGVkRm9yQ29udGV4dENvbnN0cnVjdG9y
KSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4o
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JD
b250ZXh0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRGb3JDb250
ZXh0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5h
YmxlZEZvckNvbnRleHRQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOSw3ICsxMTksNyBA
QCB2b2lkIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dDo6c19pbmZvID0geyAiVGVz
dEVuYWJsZWRGb3JDb250ZXh0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dDo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JD
b250ZXh0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0KSB9OwogCiBKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dDo6SlNUZXN0RW5hYmxlZEZvckNvbnRleHQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RW5hYmxlZEZvckNvbnRleHQ+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RW5hYmxlZEZvckNvbnRleHQ+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3Ry
dWN0b3IuY3BwCmluZGV4IGM4OGVkMjFjY2Y5YTA5NmEzMzZiYjQzMGM3MDdjMzJmZDNlYWI5YjYu
LmRlODdjOTE5ODVjN2NkZWIxMDI5YmUzOTM1MDIzMmY5ODlmOTA0OWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTE5NCw3ICsxOTQsNyBAQCB0ZW1wbGF0ZTw+IEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RFdmVudENvbnN0cnVj
dG9yRE9NQ29ucwogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0RXZlbnRDb25z
dHJ1Y3RvckRPTUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9N
Q29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV2ZW50
Q29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRDb25zdHJ1Y3Rv
ckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RXZlbnRDb25z
dHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yMjQsNyArMjI0
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0
cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENv
bnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMjMzLDcgKzIzMyw3IEBAIHZvaWQgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dEV2ZW50Q29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRDb25zdHJ1Y3RvcikgfTsKIAogSlNUZXN0RXZl
bnRDb25zdHJ1Y3Rvcjo6SlNUZXN0RXZlbnRDb25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFdmVudENvbnN0cnVj
dG9yPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKaW5kZXggN2JmZDFlOTIwNDE4ODVl
MmFmNmMyZDUwYmMwMzIwYzQ2Yzk5M2UyMC4uNWFjY2YwZTY1MjE4OGU5YzljNDA4NGVjMDY3YzA2
ODcyOTBmOWQ2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCkBAIC05Myw3ICs5Myw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0UHJv
dG90eXBlLCBKU1Rlc3RFdmVudFRhcmdlCiAKIHVzaW5nIEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29u
c3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RFdmVudFRh
cmdldD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0RE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXRE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50
VGFyZ2V0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RF
dmVudFRhcmdldERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
RXZlbnRUYXJnZXRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcg
KzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RFdmVudFRhcmdldFBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIml0ZW0iLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdEV2ZW50VGFyZ2V0UHJv
dG90eXBlRnVuY3Rpb25faXRlbSksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEV2ZW50
VGFyZ2V0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RFdmVudFRhcmdldFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEV2ZW50VGFyZ2V0Il9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEV2ZW50VGFyZ2V0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEV2ZW50VGFyZ2V0UHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBK
U1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RXZlbnRUYXJnZXQ6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZl
bnRUYXJnZXQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJnZXQ6OnNfaW5mbyA9
IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdldCkgfTsKIAogSlNUZXN0RXZlbnRU
YXJnZXQ6OkpTVGVzdEV2ZW50VGFyZ2V0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEV2ZW50VGFyZ2V0PiYmIGltcGwpCiAgICAg
OiBKU0V2ZW50VGFyZ2V0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEV4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RXhjZXB0aW9uLmNwcAppbmRleCAxMWRjNWVhZWZmNzNlNWYzZjBkZjA4MWJkYzZkMTU5
Y2IwMTkwNzNmLi45N2NmOGQzNWIxNTJjZDEwNWU5ZDJiMDI4NGMyYzA5YmIzNGRiYTkyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhj
ZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RXhjZXB0aW9uLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGUsIEpTVGVzdEV4Y2VwdGlv
blBybwogCiB1c2luZyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEV4Y2VwdGlvbj47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibmFtZSIsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yIHwgSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RE9NQXR0cmlidXRlKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RFeGNlcHRpb25fbmFtZSksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFeGNlcHRpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEV4Y2VwdGlvblByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIwLDcgKzEyMCw3IEBAIHZvaWQg
SlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RFeGNlcHRpb24iLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RF
eGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RXhjZXB0aW9uKSB9OwogCiBKU1Rlc3RFeGNlcHRpb246OkpTVGVzdEV4
Y2VwdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCwgUmVmPFRlc3RFeGNlcHRpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
RXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5l
cmF0ZUFkZE9wYXF1ZVJvb3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5jcHAKaW5kZXggZWUzYWYxZjFmNTky
ODk3ODdhOWRlNTBhZjE3OTg0MWVhMTFlYmI2NC4uOGVkNmM0OGYwYzViMDM2NTM5MmVkZWM1MGE5
NTBlOGU0MmU4YTNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dC5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlLCBKU1Rlc3QKIAogdXNpbmcg
SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3Q+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJh
dGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RE
T01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyAr
MTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInNvbWVBdHRyaWJ1dGUiLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290
X3NvbWVBdHRyaWJ1dGUpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6
UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJh
dGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVBZGRPcGFx
dWVSb290IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEdl
bmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290OjpzX2luZm8gPSB7ICJUZXN0R2VuZXJh
dGVBZGRPcGFxdWVSb290IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290OjpzX2luZm8gPSB7ICJUZXN0R2VuZXJh
dGVBZGRPcGFxdWVSb290Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCkgfTsKIAogSlNUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290OjpKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEdl
bmVyYXRlQWRkT3BhcXVlUm9vdD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1w
bCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAKaW5kZXggNWY1OTU4
NThlZGRjOWNiODhlZjdlMTQxZjUxNzE3NDUwOTM5ZDAzZC4uYzg0OTU0YThjMDY4YjQ5OTg5YTcy
MWVlYjZiNDc2ZTIyNzdkNTdhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFS
QUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlLCBKU1Rlc3RHZQogCiB1c2lu
ZyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1Jl
YWNoYWJsZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0R2Vu
ZXJhdGVJc1JlYWNoYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogICAgIHsgImFTZWNyZXRBdHRyaWJ1dGUiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJp
YnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZV9hU2VjcmV0QXR0cmlidXRl
KSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4o
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0
ZUlzUmVhY2hhYmxlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0R2Vu
ZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTMwLDcgKzEzMCw3IEBAIHZvaWQgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJs
ZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFj
aGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZTo6c19p
bmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJs
ZSkgfTsKIAogSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZTo6SlNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmNwcAppbmRleCA0ZjE0YTY5YTIwZjBh
MzAxMzk5NDA3ZGMwMGJjODA2NWVkMmRiOTBkLi45NDIzNDczOGU0MDAyMjk1M2M5ZTk4MjE4ZjYw
M2JjZDUzY2IwOTMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmNwcApAQCAtNjIxLDcgKzYy
MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RDb25z
dHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogI2VuZGlmCiB9OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEdsb2JhbE9iamVjdERPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC02NTMsNyArNjUzLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5
cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNUZXN0R2xvYmFsT2JqZWN0OjppbmZvKCksIEpTVGVz
dEdsb2JhbE9iamVjdFByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1Rlc3RHbG9iYWxPYmplY3RQcm90
b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgJkpT
VGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RHbG9iYWxPYmplY3RQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sICZKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC02NjEsNyArNjYxLDcgQEAgdm9pZCBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdDo6c19p
bmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RHbG9iYWxP
YmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxPYmpl
Y3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJU
ZXN0R2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0VGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0KSB9Owog
CiBKU1Rlc3RHbG9iYWxPYmplY3Q6OkpTVGVzdEdsb2JhbE9iamVjdChTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RHbG9iYWxPYmpl
Y3Q+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0R2xvYmFsT2JqZWN0PihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCBhNzY0YzhmMjc0NTUyNmE4OWQyMzg4
YWEyNWJhZjQ4ZWUwY2U4YzI3Li5kZDc2NTkwYTJjMjhkMjU2OWU4YTBkNWFiZTY2ZDdmNTVlMmE2
NGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIu
Y3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpT
VGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlVGFi
bGVWYWx1ZXNbCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJv
cGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50
aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIpIH07
CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QsIFJlZjxUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKaW5kZXggODgyZmYwNDdiOGJkMjgw
YzZjODY1NjExZGQxZjU1ZWY5Mzc3NmIwYi4uYWRkYzU0OGQ3OWNjZjk4NzZhZjk3M2Q5NDI3MzE1
YjA4YWRjYzFhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJv
dG90eXAKIAogdXNpbmcgSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29u
c3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblBy
b3RvdHlwZVRhYmxlVmEKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0SW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19j
YXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEx
OCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uOjpzX2luZm8g
PSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uOjpKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVz
dEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3Qs
IFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXIuY3BwCmluZGV4IDJhYzZkNzFkNTYzMjdkOWE2Y2NkODA2MjA1YTUyNWEzZmNm
YzY0MzUuLjE5OTViZjgwMDI1OWI5ZWRmYWFhMWFiMjQyNjdkOGIwZmVkMGVhMjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05
Myw3ICs5Myw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0SW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZVRhYmxlVmFsdWUKICAgICB7ICJpbmRleGVkU2V0dGVyIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9pbmRleGVkU2V0dGVyKSwgKGludHB0
cl90KSAoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVz
dEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIpIH07CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNUZXN0SW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
cj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFj
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50
ZXJmYWNlLmNwcAppbmRleCBlY2IwNTQ4NDA2ZjFkZTRmZGE0YmRhNWQ5NjQ3ZGZhNzkzMzMyMTMz
Li5kZmQxZDRmYzc2ZmQ2YzMzZTRhMTM3OTI5MWVhZDViZjk3NDE5NGY4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50
ZXJmYWNlLmNwcApAQCAtMjkzLDcgKzI5Myw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yCiB9
CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rv
ckNvbnN0cnVjdCwgSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTQ1Nyw3ICs0NTcsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAj
ZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRl
cmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEludGVyZmFj
ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtNDc5LDcgKzQ3OSw3IEBA
IHZvaWQgSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdElu
dGVyZmFjZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2U6OnNfaW5mbyA9IHsg
IlRlc3RJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlKSB9OwogCiBKU1Rlc3RJbnRlcmZhY2U6OkpT
VGVzdEludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RJbnRlcmZhY2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBl
cjxUZXN0SW50ZXJmYWNlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
QEAgLTExMzIsMTEgKzExMzIsMTEgQEAgdXNpbmcgVGVzdEludGVyZmFjZUl0ZXJhdG9yUHJvdG90
eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3RJbnRlcmZhY2UsIFQKIEpTQ19BTk5P
VEFURV9IT1NUX0ZVTkNUSU9OKFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZU5leHQsIFRl
c3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0
IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIlRl
c3RJbnRlcmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2UpIH07Ci1jb25zdCBK
U0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRl
cmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvcikgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJ
bmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2Ug
SXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJ
bmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvcjo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSBJdGVy
YXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3IpIH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6
Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEludGVyZmFjZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdEludGVyZmFjZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlw
ZSkgfTsKIAogc3RhdGljIGlubGluZSBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3RJbnRlcmZhY2VQcm90
b3R5cGVGdW5jdGlvbl9lbnRyaWVzQ2FsbGVyKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiwg
SlNUZXN0SW50ZXJmYWNlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNj
b3JlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAKaW5kZXggYTgzM2M4NDRkYTAwMjNkZDUxZWI3
NzdjOTg1ZTU2MmJmNTFhOGNiMi4uNTU2YjA2MmQzZTc3YjJiY2E4OGFmNTk5NTA3OWE0MzdiNDFm
OTliZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmUuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlLCBKCiAKIHVzaW5n
IEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdV
bmRlcnNjb3JlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRl
cnNjb3JlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5k
ZXJzY29yZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTExLDcgKzExMSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZVByb3RvdHlwZVRhYmxlVmFsdWVzCiAgICAgeyAicmVhZG9ubHkiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJp
YnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVfcmVhZG9ubHkp
LCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVy
c2NvcmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5k
ZXJzY29yZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIwLDcgKzEy
MCw3IEBAIHZvaWQgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRl
cnNjb3JlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVy
ZmFjZUxlYWRpbmdVbmRlcnNjb3JlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1Vu
ZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUpIH07CiAKIEpTVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlOjpKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZT4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZT4oc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAppbmRleCA1ZjRmYTY5ZmE4
ZDFiMDExOTFkN2E0ODQyMWJlYzkzMWE4OTU2YWYyLi41MzEyOTU2YjdiYWQwNGJlMzEwOTJmYWZk
YTNiN2I1ZjEzMTYxNWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAKQEAgLTk1LDcgKzk1LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0SXRlcmFibGVQcm90b3R5
cGUsIEpTVGVzdEl0ZXJhYmxlUHJvdG8KIAogdXNpbmcgSlNUZXN0SXRlcmFibGVET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEl0ZXJhYmxlPjsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZURPTUNvbnN0cnVjdG9yKSB9
OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJdGVyYWJsZURPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAi
Zm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpG
dW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVG
dW5jdGlvbj4oanNUZXN0SXRlcmFibGVQcm90b3R5cGVGdW5jdGlvbl9mb3JFYWNoKSwgKGludHB0
cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
SXRlcmFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SXRlcmFibGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SXRlcmFi
bGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMyw3ICsxMzMsNyBA
QCB2b2lkIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJdGVyYWJsZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVy
YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZTo6c19pbmZvID0geyAiVGVz
dEl0ZXJhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxlKSB9OwogCiBKU1Rlc3RJdGVyYWJsZTo6SlNUZXN0SXRl
cmFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0SXRlcmFibGU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SXRl
cmFibGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpAQCAtMjI3LDEx
ICsyMjcsMTEgQEAgdXNpbmcgVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGUgPSBKU0RPTUl0
ZXJhdG9yUHJvdG90eXBlPEpTVGVzdEl0ZXJhYmxlLCBUZXMKIEpTQ19BTk5PVEFURV9IT1NUX0ZV
TkNUSU9OKFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlTmV4dCwgVGVzdEl0ZXJhYmxlSXRl
cmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5m
byBUZXN0SXRlcmFibGVJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVy
YXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVz
dEl0ZXJhYmxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0
ZXJhYmxlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVy
YXRvckJhc2U6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SXRlcmFibGVJ
dGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVyYXRv
cjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVy
YXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SXRlcmFi
bGVJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJdGVyYWJs
ZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVz
dEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpT
VmFsdWUganNUZXN0SXRlcmFibGVQcm90b3R5cGVGdW5jdGlvbl9lbnRyaWVzQ2FsbGVyKEpTR2xv
YmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiwgSlNUZXN0SXRlcmFibGUqIHRoaXNPYmplY3QpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAppbmRleCA3MWY2MWMyYTYw
ZmE5ODYyYzEzODdjZTZiYmUxNmY2OTQyM2QzNmU5Li4wYjIyYWEzNGIyODMzNTg2YTNmOWE2NzAx
NmU4ZDI0YWE2ZTcyNjRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
ci5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGUsIEpTVGVzdEoKIAogdXNpbmcg
SlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvciA9IEpTRE9NQnVpbHRpbkNv
bnN0cnVjdG9yPEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yPjsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
ckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IpIH07
CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlVGFi
bGVWYWx1ZXNbXSA9CiAgICAgeyAidGVzdEN1c3RvbUZ1bmN0aW9uIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RKU0J1aWx0aW5D
b25zdHJ1Y3RvclByb3RvdHlwZUZ1bmN0aW9uX3Rlc3RDdXN0b21GdW5jdGlvbiksIChpbnRwdHJf
dCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1
Y3RvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEpTQnVpbHRpbkNv
bnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xMzIsNyArMTMyLDcgQEAgdm9pZCBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
clByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWls
dGluQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
SlNCdWlsdGluQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGlu
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3RvcikgfTsKIAogSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I6OkpT
VGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgIDogSlNET01PYmplY3Qoc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmNw
cAppbmRleCBiYjY4OGZjYjRhOGY3MjM3ZWU5Nzk2YWQxOTNhOTg2NzQ0YWRkZDUwLi44Yzc0NjAy
ZjM1YzY0NjhlZTI5ZTVkOGRmNGMwZjI0NDQ3MzQ3MTgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmNwcApAQCAtODgsNyArODgsNyBAQCBTVEFUSUNfQVNTRVJU
X0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5
cGUsIEpTVGVzdAogdXNpbmcgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RMZWdhY3lGYWN0b3J5
RnVuY3Rpb24+OwogdXNpbmcgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9y
eUZ1bmN0aW9uID0gSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rpb248SlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5RmFj
dG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVn
YWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlCiB9CiBK
U0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdh
Y3lGYWN0b3J5RnVuY3Rpb25Db25zdHJ1Y3QsIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxl
Z2FjeUZhY3RvcnlGdW5jdGlvbjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpz
X2luZm8gPSB7ICJBdWRpbyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1
bmN0aW9uKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJBdWRpbyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RM
ZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVuY3Rpb24pIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVuY3Rp
b246OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlVGFibGVW
YWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0
eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeUZh
Y3RvcnlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rp
b25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBK
U1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24pIH07CiAK
IEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9u
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5j
cHAKaW5kZXggMWM4MzQ5MGI2N2ExMWNjODhiM2E1ZWI4MmI5MTcyOGI1ZGY4MzUxMi4uZmE3NjA5
MTYyMTRmNmFiNjgyMzk4MjdlYmVhNTJiNmQwNGZjYzdjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuY3BwCkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90
eXBlVGFibGVWYWx1ZXNbXQogICAgIHsgIkNPTlNUQU5UMiIsIEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OkRvbnREZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcg
bG9uZykoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU5vSW50ZXJm
YWNlT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3RQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3RQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEpT
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdDo6c19pbmZvID0geyAi
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdDo6c19pbmZv
ID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNl
T2JqZWN0KSB9OwogCiBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdDo6SlNUZXN0TGVnYWN5
Tm9JbnRlcmZhY2VPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q+JiYgaW1wbCkK
ICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMuY3BwCmluZGV4IGUyYjFmODA0OTY5MDFlNmU4NzJhMDZiY2RiZWEw
MGQ0OTg5OWE0YTIuLjUzMTI0MDUzOWY4Nzk0ZTEyYjI5MGYxZDM0NWEzNzBlYTYyYjg1NmQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKQEAgLTkzLDcg
KzkzLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TGVnYWN5
T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSwgSlNUZXMKIAogdXNpbmcgSlNUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucz47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWls
dEluc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTgsNyArMTE4LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJuYW1lZEl0ZW0iLCBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNp
YywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGVGdW5jdGlvbl9uYW1lZEl0ZW0pLCAoaW50cHRyX3Qp
ICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWls
dEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCBKU1Rlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5
T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zKSB9OwogCiBKU1Rl
c3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAKaW5kZXggZDVlYTE0YzEyOTYzNTBjYWY1Y2U4MTc5
YmFiOWIzNGE1NTFkYjMxNS4uZTFiNmU5MDM0ZTgzZjNjNDBkZWU1YTI0OTc0MGNjNDhiMzRlNzNm
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RNYXBMaWtlLmNwcApAQCAtMTAyLDcgKzEwMiw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE1hcExpa2VQcm90b3R5cGUsIEpTVGVzdE1hcExp
a2VQcm90b3R5CiAKIHVzaW5nIEpTVGVzdE1hcExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE1hcExpa2U+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RN
YXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE1hcExpa2VET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdE1hcExpa2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTM2LDcgKzEzNiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RNYXBMaWtl
UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZGVsZXRlIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtIHwgSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE1hcExpa2VQcm90b3R5cGVGdW5jdGlvbl9kZWxldGUp
LCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlr
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RNYXBM
aWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDYsNyArMTQ2LDcg
QEAgdm9pZCBKU1Rlc3RNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RNYXBMaWtlOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlr
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlOjpzX2luZm8gPSB7ICJUZXN0TWFw
TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RNYXBMaWtlKSB9OwogCiBKU1Rlc3RNYXBMaWtlOjpKU1Rlc3RNYXBMaWtlKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdE1hcExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TWFwTGlrZT4oc3Ry
dWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKaW5kZXggMjA4MGU3
ZTZkZTE2MzkwOTlkZmI4YTVhM2FkMmUyYmZkNzBlYzlhNy4uYzczN2E5ZGZlY2E0MWM5OTI5MWMw
YWI2NDViOTliNWQzYjJmYmYwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcApAQCAtMTA2LDcgKzEwNiw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnNQcm90b3R5CiAKIHVzaW5nIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTQw
LDcgKzE0MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlVGFibGVWCiAgICAgeyAiZGVsZXRlIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtIHwgSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnNQcm90b3R5cGVGdW5jdGlvbl9kZWxldGUpLCAoaW50cHRyX3QpICgxKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJh
dGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBK
U1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBKU1Rlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7
ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKSB9OwogCiBK
U1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpKU1Rlc3RNYXBMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9ucz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIu
Y3BwCmluZGV4IDI0NzAyZWYxNThmZGZjZTgxZGJiNGZjYTE1OGFlNjM2ODdhOGU0ZjEuLmNhYzMz
NjhhNWI3YzVhYTE2NTc4ZjU1NTU0NjI4NGYzMWNjOGZjZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCkBAIC04
Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvCiAKIHVzaW5nIEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRl
bnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEwLDcgKzExMCw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXJQcm90b3R5cGVUYWJsCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0
aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjo6
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKaW5kZXggMWNlMjMzNjFiMzc4
ZDdiMTc3MmE5OTdkZjdlYmZhOTk2MDg1ODc2Ni4uYmY5YTVhYjBiNDBmOTY5ZDA5NzkzMzE0ZGMz
OWYyOWMzMGZlNmJkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCkBAIC04Niw3ICs4Niw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uCiAKIHVzaW5nIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTEwLDcgKzExMCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwCiAgICAgeyAi
Y29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5
U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE5LDcgKzExOSw3IEBAIHZv
aWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2CiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
KSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBl
cjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKaW5kZXggOGYyNGJh
MTZiNmIzYjVhYzIwM2QyZjY0MTY0NTA0ZTI2MjBmNTVjOS4uM2FlMmM5MzM1YWZlYTI1ZDRmZjBm
YWE3Mzc4ZGM2ZWZlMThkZjU4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvCiAKIHVzaW5nIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj47CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllclByb3RvdHlwZVRhCiAgICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9pbmRleGVkU2V0
dGVyKSwgKGludHB0cl90KSAoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRl
bnRpZmllcjo6SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWREZWxldGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCBmNGNlMGU0MWU1ZTNhMDI2YmNjNWIzZTA0
NzBlZjE0MzFjODdhNGVjLi41ODdjOTViZWYwMzEwNTM3MjBiMzEyMzg2MWM5OTI2MmFhMTM1OTA0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmNwcApA
QCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUsIEpTVAogCiB1c2luZyBKU1Rlc3RO
YW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVs
ZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXQogICAg
IHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFBy
b3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJD
b25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRW
YWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0
ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lk
ZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9J
ZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRp
ZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3
IEBAIHZvaWQgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRl
ck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lk
ZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWREZWxldGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50
aWZpZXI6OkpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZERlbGV0ZXJO
b0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVy
Tm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uY3Bw
CmluZGV4IDc5MWNkYTIxZWY1MzNkMWQ1YzZjMTQwNDkwNWMyODhmZmQ5MmY1YWUuLjFkMjExMzIx
ZTJlNTU5YjI1YjNmMjY2NWFmZDViMTIyNjMwMWQxODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmNwcApAQCAtODUsNyArODUsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJU
aHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlv
bkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0
aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdF
eGNlcHRpb25Qcm90b3R5cGVUYWJsZVZhbAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90
KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdf
V0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERl
bGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0g
eyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRo
cm93aW5nRXhjZXB0aW9uKSB9OwogCiBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlv
bjo6SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
ci5jcHAKaW5kZXggM2E5OGQ1OWQzOGI3MWIwMTY1YzFiMmFlZjIzYmVmODA5YWRlYzc0Ni4uODUx
ZWQ5Y2I4OTMyY2M4MzU0ZjU5ZmM5MWU1MjRiNDdjYzQxNzhkMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05Miw3ICs5Miw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlLCBKCiAKIHVzaW5nIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxl
dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzCiAg
ICAgeyAibmFtZWREZWxldGVyIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3Rv
dHlwZUZ1bmN0aW9uX25hbWVkRGVsZXRlciksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVs
ZXRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElk
ZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50
aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyV2l0aElk
ZW50aWZpZXI6OkpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVs
ZXRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVk
RGVsZXRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRH
ZXR0ZXIuY3BwCmluZGV4IDJlYWMxNmY0OTk2Y2RhZDc2Y2ZjMWNhZjA3YWY4YTI2YjIwN2ZlMTku
LjEzMzg2YjJmMzE3ODk5NGFhN2RhMTE4ZGU3NGU5MWQ2NDIwZDczZWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJX
aXRoSW5kZXhlZEdldHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmNwcApAQCAtODYs
NyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3ROYW1lZERl
bGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdl
dHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4
ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5k
ZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
bmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3
ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWREZWxldGVy
V2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGVUYWJsZVZhbAogICAgIHsgImNvbnN0cnVjdG9yIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFs
dWVGdW5jPihqc1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckNvbnN0cnVjdG9yKSwg
KGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRH
ZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKIHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcjo6
c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5k
ZXhlZEdldHRlcjo6SlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguY3Bw
CmluZGV4IGNjMTAyMGMzZGNjZmEyZGJkZTYwY2Q2Nzk1NDJjN2NlZDdlYzNjMDUuLmY2MGI0ZjZj
ZjhhYTQ4OWQxOGQ5ZjI4ZGQzY2JiOGYyNTUyM2QyMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRHZXR0ZXJDYWxsV2l0aC5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZSwgSlNU
ZXN0TmEKIAogdXNpbmcgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aERPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0
aD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aERP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJD
YWxsV2l0aERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4o
anNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aENvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNf
Y2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2Fs
bFdpdGhQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQg
SlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aDo6c19pbmZvID0geyAiVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGgiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aDo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0
dGVyQ2FsbFdpdGgiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCkgfTsKIAogSlNUZXN0TmFtZWRH
ZXR0ZXJDYWxsV2l0aDo6SlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aChTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRl
ckNhbGxXaXRoPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyQ2Fs
bFdpdGg+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggYTE5ZGY5ZGVlZDg4
OTY4MTFhZDVmMmQyZDM1OWJmYjc3ZWNjYjFmYS4uODRiNjYwOTkzZDhlM2MzMzQ1YzZjMjRhMTQ5
MGRjMGIyNmMyMmFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50
aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NI
QVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1RlCiAKIHVz
aW5nIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAg
ICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQ
cm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJD
b25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRW
YWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyTm9JZGVu
dGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9p
ZCBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZp
ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5h
bWVkR2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVu
dGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRleCA4YjM0OGFjNGUyZTdiNmRlODM0
Y2Q3NTE5OTc4NGNlNzE4NjYzNmZiLi41NzA3MTQ0MmU3ODU5Mjc5Njc4ODZkMjdlNzZlY2I2Yjhi
Njk1YWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZp
ZXIuY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsIEpTCiAKIHVzaW5n
IEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXI+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVu
dGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE1LDcgKzExNSw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBl
VGFibGVWYWx1ZXNbCiAgICAgeyAiZ2V0dGVyTmFtZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZUZ1bmN0aW9uX2dldHRlck5hbWUpLCAoaW50cHRyX3QpICgxKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjQsNyArMTI0LDcgQEAgdm9pZCBK
U1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlm
aWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEdldHRlcldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlm
aWVyOjpKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkR2V0dGVyV2l0
aElkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRHZXR0ZXJX
aXRoSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCBlYTJl
ZGVlOWFiODQ1YjA1M2FhY2YwOGZlYjU3NzE3MjkxZDE2YmQ5Li40Y2JmNjZlM2Q4YjUyZDA1MzNk
YWNjMGVhOTFmYzI0ODVkNjYzNDU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllci5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VC
U1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUsIEpT
VGUKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9
IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJO
b0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9J
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1
ZXNbXQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlck5vSWRl
bnRpZmllckNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNs
b3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJO
b0lkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50
aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgs
NyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcjo6
c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5v
SWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRp
Zmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcjo6
SlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZp
ZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZp
ZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDgyOTQy
ZGI1Mjk3MTdjMjAwYTVhYzUyYjI2ZTE0MjdhMzM4ZTcxZjQuLmI0OTUyMzllM2FjODdmMDJiNWJm
ZDZmMjI4ZjI3Yzg2NDcxYjBlZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
blByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFt
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGVUYWJsZVZh
bHUKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0
eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0
aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5n
RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0TmFt
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0g
eyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbihT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXIuY3BwCmluZGV4IGM3ZDcyYTdjYTgyNTgwYWFmNjYzYTkxOTY1YTJmOGQy
MDEzZGY5MTQuLjc4MWFiMDU1YjRjZTMwMDVkZjIxYzM5ZTBmZThiYTllZTk3Mzc2YmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKQEAgLTky
LDcgKzkyLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwgSlMKIAogdXNpbmcgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj47CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5
cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlc1sK
ICAgICB7ICJuYW1lZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3Rv
dHlwZUZ1bmN0aW9uX25hbWVkU2V0dGVyKSwgKGludHB0cl90KSAoMikgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5h
bWVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
SWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVy
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZp
ZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwCmluZGV4IDdkMzQ1
ZmY0NjJiOTJmMWRmMGU2OWY0Mzc0Y2YyMjA0MWUxYWE0NDMuLjZmN2E1YjYyYjg5YWE0M2Q5ODc5
ODMyZjYxZTZjODg0NjVlYzQ4NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKQEAgLTk1LDcgKzk1LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
clByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckRP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMjEsNyArMTIxLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGVUYWJsZVZh
bHUKICAgICB7ICJpbmRleGVkU2V0dGVyIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkgKDEpIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEz
MCw3ICsxMzAsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI6OkpTVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyLmNwcAppbmRleCA0Nzk2NjgwMzY0YzJlNjMyODUzNGYwOWQ0NDExNmFhNDVmNDZi
MWY1Li5kYzZjNjYyY2UwNGQ1YmZmYjExNDEyYWViYTczNjQ0ZTA1YmZlMzgxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJB
bmRTZXR0ZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQCiAK
IHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0
b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyUHJvdG90eXBlCiAgICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0ZXJXaXRo
SW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZUZ1bmN0aW9uX2luZGV4ZWRTZXR0ZXIpLCAo
aW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0KICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0
ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4
ZWRHZXR0ZXJBbmRTZXR0ZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNl
dHRlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyQW5kU2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zLmNwcAppbmRleCBlMDFjNzA1NDE2YTgzMzhlMjY2OWFiMTc0NTVj
MWVjZjZhYTA0NTU3Li4zOGI4NTgyMTY2NGQ1NjNiMWYyZjA4NTBlM2ZkYmEzOTdjMjQxODdiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNQCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zUHJvdG90eXBlCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNDb25zdHJ1Y3RvciksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
c1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJp
ZGVCdWlsdEluczo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyhT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzLmNwcAppbmRleCBmODU5ZGVkYjZiZDE0MjlmYWRhZWQzZDRkM2Q4ZDllMTRkYjE4
N2M3Li5hNmRjNjZhOGM4MzE2ZjcxYzE3NWRmYmYxMDM0MzM5MDQzMmNhMTczIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzLmNwcApAQCAtMTExLDcgKzExMSw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNUYWJsCiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlID0geyAyLCAzLCB0cnVlLCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM6OmluZm8oKSwgSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzVGFibGVWYWx1ZXMs
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlSW5k
ZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzRE9N
Q29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0
aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3Jn
ZWFibGVQcm9wZXJ0aWVzUHJvdAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNDb25zdHJ1Y3RvciksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ0LDcgKzE0NCw3IEBA
IHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcykgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzPiYmIGltcGwp
CiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVC
dWlsdElucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdElucy5jcHAKaW5kZXggNmZhZDc1YjczNGU5ZjkxMmY5MzJlOTgzNjkxZjcwMTAz
Y2RiYjZjYS4uYmZiY2RlNjMzMGVmNjc0MThhZTZiY2U1NzM2NjVjY2JlMzQ5NTllNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zLmNwcApAQCAtMTExLDcgKzExMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNBbmRMCiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNUYWJs
ZSA9IHsgMiwgMywgdHJ1ZSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6aW5mbygpLCBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zVGFibGVWYWx1ZXMsIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNB
bmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM1LDcgKzEzNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNBbmRMCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNDb25z
dHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1
ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVn
YWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcgogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCAm
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdEluc1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZv
ID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsK
IAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVn
YWN5T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyhTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZUNvbnN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAK
aW5kZXggNmMyZjllZTRiNjQ2OGU3MGQ4NWJjY2JlOGMxNWMxYTEzYjk5MjE2Yi4uNDUyZGRjNTQz
MjhhZWZhMWNhZTEwOWJiMzdkY2YwMzQ2NjU0NzM1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZUNvbnN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNl
Q29uc3QuY3BwCkBAIC01Niw3ICs1Niw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3ROYW1lc3BhY2VDb25zdENvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiBzdGF0aWNfYXNz
ZXJ0KFRlc3ROYW1lc3BhY2VDb25zdDo6VEVTVF9GTEFHID09IGZhbHNlLCAiVEVTVF9GTEFHIGlu
IFRlc3ROYW1lc3BhY2VDb25zdCBkb2VzIG5vdCBtYXRjaCB2YWx1ZSBmcm9tIElETCIpOwogc3Rh
dGljX2Fzc2VydChUZXN0TmFtZXNwYWNlQ29uc3Q6OlRFU1RfQklUX01BU0sgPT0gMHgwMDAwZmMw
MCwgIlRFU1RfQklUX01BU0sgaW4gVGVzdE5hbWVzcGFjZUNvbnN0IGRvZXMgbm90IG1hdGNoIHZh
bHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVz
cGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lc3BhY2VDb25zdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lc3BhY2VDb25zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNzEsNyArNzEsNyBAQCB0ZW1wbGF0ZTw+IHZvaWQgSlNU
ZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRpZXMoVk0m
IHZtLAogICAgIFVOVVNFRF9QQVJBTShnbG9iYWxPYmplY3QpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZXNwYWNlQ29uc3Q6OnNfaW5mbyA9IHsgIlRlc3ROYW1lc3BhY2VDb25zdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZXNwYWNlQ29uc3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZXNwYWNlQ29u
c3Q6OnNfaW5mbyA9IHsgIlRlc3ROYW1lc3BhY2VDb25zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VDb25zdCkg
fTsKIAogSlNUZXN0TmFtZXNwYWNlQ29uc3Q6OkpTVGVzdE5hbWVzcGFjZUNvbnN0KFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgIDogSlNE
T01PYmplY3Qoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNw
YWNlT2JqZWN0LmNwcAppbmRleCAwNzZkNjM0MjY2YTVhMmIzZDQyYWRlNzM3ZDYxYTc0NzUwN2Mw
ZWQyLi5kZTkwZTlhMDY2MjgzMGRmMWNjNjIyOTM2YjU2ODExYzBkNzM4Nzg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNl
T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZXNwYWNlT2JqZWN0LmNwcApAQCAtOTUsNyArOTUsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZXNwYWNlT2JqZWN0Q29uc3RydWN0b3JUYWJsZVZhbHVl
c1tdID0KICNlbmRpZgogfTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VOYW1l
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0SW50ZXJmYWNlTmFtZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzEsNyArMTMxLDcgQEAgdGVtcGxhdGU8PiB2
b2lkIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVjdG9yOjppbml0aWFsaXplUHJvcGVy
dGllcyhWTSYgdm0KICNlbmRpZgogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZXNwYWNl
T2JqZWN0OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFtZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdDo6c19pbmZvID0geyAi
VGVzdEludGVyZmFjZU5hbWUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0KSB9OwogCiBKU1Rlc3ROYW1l
c3BhY2VPYmplY3Q6OkpTVGVzdE5hbWVzcGFjZU9iamVjdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcAppbmRleCAyZjRlYTY1Y2M4MDIzMzQz
NGMzN2JlYjQxM2ZjYzFlNDYzYzE1YmJjLi5iOTA0ZGY2YjMwNzdhYjJkZGE3N2QyOWZmNDVmNWNk
NGZlMWY2MjViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Tm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCkBAIC0xMzQsNyArMTM0LDcgQEAgdGVtcGxhdGU8PiBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0Tm9kZURPTUNvbnN0
cnVjdG9yOjpjb24KIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdE5vZGVET01D
b25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3Qp
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3ROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5vZGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTcx
LDcgKzE3MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROb2RlUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0Tm9kZVByb3RvdHlwZUZ1
bmN0aW9uX2ZvckVhY2gpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0Tm9kZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5vZGUiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGVQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZVByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0Tm9kZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROb2RlUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0yMzUsNyArMjM1LDcgQEAgdm9p
ZCBKU1Rlc3ROb2RlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROb2RlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROb2RlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlKSB9OwogCiBK
U1Rlc3ROb2RlOjpKU1Rlc3ROb2RlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5vZGU+JiYgaW1wbCkKICAgICA6IEpTTm9kZShz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKQEAgLTQzMywxMSArNDMzLDEx
IEBAIHVzaW5nIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGUgPSBKU0RPTUl0ZXJhdG9yUHJvdG90
eXBlPEpTVGVzdE5vZGUsIFRlc3ROb2RlSXRlCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihU
ZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlTmV4dCwgVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZTo6
bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0
b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvckJhc2Up
IH07Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJU
ZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvcikgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZv
IFRlc3ROb2RlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0
Tm9kZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0
b3I6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3IpIH07CiAK
IHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBl
KSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZSkgfTsK
IAogc3RhdGljIGlubGluZSBFbmNvZGVkSlNWYWx1ZSBqc1Rlc3ROb2RlUHJvdG90eXBlRnVuY3Rp
b25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSosIEpTVGVzdE5vZGUq
IHRoaXNPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IGI0NDczOTVlZTM3YzY0MjBhMjg0MTFiMjZj
N2M1MGRiMjY3NzlhZGMuLjU5NjVjOWI2NGVhZWZlYmNkMWE3Njg1Zjk5NDkyNjYwN2ZhYmU0ZjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPYmouY3BwCkBAIC0yMDYzLDcgKzIwNjMsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6Y29u
cwogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T2JqRE9NQ29uc3RydWN0b3JD
b25zdHJ1Y3QsIEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0T2JqRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RPYmpET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE9i
akRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yNDI5LDcgKzI0MjksNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0T2JqUHJvdG90eXBlVGFibGVWYWx1
ZXNbXSA9CiAgICAgeyAicmVhZG9ubHkiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RGVs
ZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcpKDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE9ialByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RP
YmpQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdE9ialByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMjUzOSw3ICsyNTM5LDcgQEAgdm9pZCBKU1Rlc3RPYmpQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9iajo6c19pbmZvID0geyAiVGVzdE9iamVjdCIs
ICZCYXNlOjpzX2luZm8sICZKU1Rlc3RPYmpUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RPYmopIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqOjpzX2luZm8gPSB7
ICJUZXN0T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0T2JqVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqKSB9OwogCiBKU1Rlc3RPYmo6OkpTVGVzdE9i
aihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RPYmo+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0T2JqPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0
aW9uQ29uZGl0aW9uYWwuY3BwCmluZGV4IDJlMDcwZGM5MjM1MDdhNGU3OTkxYmVhMmE2OGY1NjRl
ZDJjMDljYWUuLjg1OGFhNGM5ZWU4NWJiOGEwZWM5ZWNhYjYyMTk1Y2I1ZGE4MDc5MGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVy
YXRpb25Db25kaXRpb25hbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsLmNwcApAQCAtMTAxLDcgKzEwMSw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsUHJvdG90eXBlLCBKU1Rlc3RPCiAKIHVzaW5nIEpTVGVzdE9wZXJhdGlvbkNvbmRp
dGlvbmFsRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxK
U1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RPcGVyYXRpb25Db25kaXRpb25hbCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRp
dGlvbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPcGVyYXRpb25Db25kaXRpb25h
bCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTM1LDcgKzEzNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogI2VuZGlmCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9u
YWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPcGVyYXRpb25Db25kaXRpb25hbCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPcGVyYXRpb25Db25k
aXRpb25hbCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZSkgfTsKIAogdm9pZCBK
U1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTQ0LDcgKzE0NCw3IEBAIHZvaWQgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlv
bkNvbmRpdGlvbmFsOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9w
ZXJhdGlvbkNvbmRpdGlvbmFsKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWwpIH07CiAKIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsOjpKU1Rl
c3RPcGVyYXRpb25Db25kaXRpb25hbChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPcGVyYXRpb25Db25kaXRpb25hbD4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RPcGVyYXRpb25Db25kaXRpb25hbD4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9ycy5jcHAKaW5kZXggNDkyMTA0NjU5MzIzZTE3NzMwZTc4ODE2MWViZjU3
ZDYwYjk1YzdmMi4uODU5Yjk5Y2UxNzJjZjU0MmQyN2M5NTc5YjcwNWY0NzIxNzc2N2EyNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcApAQCAtMjE4LDcg
KzIxOCw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJV
VEVTIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNECiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9G
VU5DVElPTihKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzQ29uc3RydWN0b3JDb25zdHJ1Y3Qs
IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTI0Miw3ICsyNDIsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNv
bnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5
U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzQ29uc3RydWN0
b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0yNTEsNyArMjUxLDcgQEAgdm9pZCBKU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9ycyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycykgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpzX2luZm8gPSB7ICJUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9ycyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzKSB9OwogCiBKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKaW5kZXggZDdmMTM3NDY3ZDI1YTA5ZjI2MmY3MWI1ZTAz
YzdkZGEyODgzNjlkZi4uNmZjMmY0YjUzNmI3ZmZkODZhYTIwMzM2MzA1NmNlNTBlNmNlZWQwMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlLmNwcApAQCAtMTU1LDcgKzE1NSw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzV2l0aFNlcXVlbmNlQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhT
ZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3OSw3ICsxNzksNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVBy
b3RvdHlwZVRhYgogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzV2l0aFNlcXVlbmNlQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19j
YXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xODgsNyArMTg4LDcgQEAgdm9pZCBKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNl
OjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlOjpzX2luZm8gPSB7ICJUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzV2l0aFNlcXVlbmNlKSB9OwogCiBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0
aFNlcXVlbmNlOjpKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZT4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQbHVnaW5JbnRlcmZh
Y2UuY3BwCmluZGV4IGQ1MzdhYWI4YjRlNGRkZmQwYjFkNmExOGM4MDVmYTBiNzFjMDk1NDAuLjUz
ODM4MmFlNjIzOTZkY2E4MTczNDg4MmMyOTEyYWU1ZWRhZDQxODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQbHVnaW5JbnRlcmZhY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQ
bHVnaW5JbnRlcmZhY2UuY3BwCkBAIC04NCw3ICs4NCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NV
QlNQQUNFX1NIQVJBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZSwgSlNUZXN0UGx1
Z2luCiAKIHVzaW5nIEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0UGx1Z2luSW50ZXJmYWNlPjsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RQbHVnaW5JbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2lu
SW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RQbHVnaW5JbnRlcmZhY2Ui
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTA4LDcgKzEwOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1
Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250
RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0UGx1Z2luSW50ZXJmYWNlQ29uc3RydWN0b3IpLCAoaW50cHRy
X3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCB2b2lkIEpTVGVzdFBsdWdpbkludGVy
ZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1
Z2luSW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5J
bnRlcmZhY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlOjpzX2lu
Zm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZSkgfTsKIAog
SlNUZXN0UGx1Z2luSW50ZXJmYWNlOjpKU1Rlc3RQbHVnaW5JbnRlcmZhY2UoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0UGx1Z2lu
SW50ZXJmYWNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFBsdWdpbkludGVyZmFj
ZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuY3BwCmluZGV4IDA3ZDljNzFmYjc1Mzc1YTVjNTE2
YzMxYmZhNzkyMDA4MTEzZmU3NDUuLjMwNjcyZDJkZDQxNTNhZDRiODNkYmQ1MWJlMzk5ZmU0YjRl
YWQ3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuY3BwCkBA
IC0xOTUsNyArMTk1LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
X0FUVFJJQlVURVMgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE8KIH0KIEpTQ19BTk5PVEFU
RV9IT1NUX0ZVTkNUSU9OKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9y
Q29uc3RydWN0LCBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3Rvcjo6Y29u
c3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9u
RXZlbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMjIwLDcgKzIyMCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJy
ZWFzb24iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVh
ZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50X3JlYXNvbiksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RQcm9t
aXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0
aW9uRXZlbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjI5LDcgKzIyOSw3IEBAIHZvaWQgSlNUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6OnNfaW5mbyA9IHsgIlRlc3RQcm9t
aXNlUmVqZWN0aW9uRXZlbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6OnNfaW5mbyA9IHsgIlRlc3RQcm9t
aXNlUmVqZWN0aW9uRXZlbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50KSB9OwogCiBKU1Rl
c3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6OkpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudChTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ+JiYgaW1wbCkKICAgICA6IEpTRXZlbnQoc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExp
a2UuY3BwCmluZGV4IDRmOTYzMDU5NWZkMTdlMjJhZmQ0MDFlNWEwODViM2M3ZmY5MTFjOGMuLjYw
NDZjYmFjNzg5NWY3NmNlOTBmMTg5N2Y4OWUwZGY2ZjQ5ZWE5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RS
ZWFkT25seU1hcExpa2UuY3BwCkBAIC05OSw3ICs5OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NV
QlNQQUNFX1NIQVJBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZSwgSlNUZXN0UmVh
ZE9uCiAKIHVzaW5nIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0UmVhZE9ubHlNYXBMaWtlPjsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UmVhZE9u
bHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2Ui
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RSZWFkT25seU1hcExpa2VQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJmb3JFYWNo
Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9u
KSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9u
Pihqc1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGVGdW5jdGlvbl9mb3JFYWNoKSwgKGludHB0
cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5TWFwTGlrZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlN
YXBMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5TWFwTGlrZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25s
eU1hcExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDAsNyArMTQwLDcgQEAgdm9pZCBK
U1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5TWFw
TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRP
bmx5TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5TWFwTGlrZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25s
eU1hcExpa2UpIH07CiAKIEpTVGVzdFJlYWRPbmx5TWFwTGlrZTo6SlNUZXN0UmVhZE9ubHlNYXBM
aWtlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdFJlYWRPbmx5TWFwTGlrZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RSZWFkT25seU1hcExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmNwcAppbmRleCAzNGZlODU3ZDIzZTlhNmE1
YWQ4ZmUyMWNlMGYxZGFmOWQ1OWZiZjg5Li4xNWU2MTM4ODQ4NDUyMDBjYjcyNjhjMWE4ZTNlMTYy
YmFhODA3MzA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmNwcApAQCAtOTgsNyAr
OTgsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RSZWFkT25s
eVNldExpa2VQcm90b3R5cGUsIEpTVGVzdFJlYWRPbgogCiB1c2luZyBKU1Rlc3RSZWFkT25seVNl
dExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdFJlYWRPbmx5U2V0TGlrZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlT
ZXRMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0UmVhZE9ubHlTZXRMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9N
Q29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyOCw3ICsxMjgsNyBAQCBzdGF0
aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlVGFi
bGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1
bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1
bmN0aW9uPihqc1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGVGdW5jdGlvbl9mb3JFYWNoKSwg
KGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5
U2V0TGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVh
ZE9ubHlTZXRMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5
U2V0TGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RS
ZWFkT25seVNldExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0UmVhZE9ubHlTZXRMaWtl
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzgsNyArMTM4LDcgQEAg
dm9pZCBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZTo6c19pbmZvID0geyAiVGVzdFJlYWRP
bmx5U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFJlYWRPbmx5U2V0TGlrZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RS
ZWFkT25seVNldExpa2UpIH07CiAKIEpTVGVzdFJlYWRPbmx5U2V0TGlrZTo6SlNUZXN0UmVhZE9u
bHlTZXRMaWtlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdFJlYWRPbmx5U2V0TGlrZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFw
cGVyPFRlc3RSZWFkT25seVNldExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmNwcAppbmRl
eCAwN2Y1ZjkxMTEwZTk2MjUzMWY1YWFiM2UxZWY5NzI2Nzg5MzBlMDk5Li45ZWQwZDdhOTU2Y2Vk
NzRhZjMxODMzYzBlOTQ3YWY1ZmM3YTBmOGE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0
RXh0cmFNZW1vcnlDb3N0LmNwcApAQCAtODMsNyArODMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGUsIEpT
VGVzdAogCiB1c2luZyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3RvciA9
IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5
Q29zdD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVwb3J0RXh0cmFNZW1vcnlD
b3N0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4
dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTEwNyw3ICsxMDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29u
c3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlT
bG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdENvbnN0cnVjdG9y
KSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4o
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVw
b3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgdm9pZCBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdDo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdDo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QpIH07CiAKIEpTVGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdDo6SlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0KFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAppbmRl
eCBiY2EwYmU1NTVhZTZlYTJlOTQ5OTY1OGY1NTI3MjYzZjNlOWZkNWEyLi40MTE2NmUyMTVmM2Yz
ZTQ3ZTM1M2FmMzgxZGUyZmYxZTIyYTRiNjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcApAQCAtMTA5LDcgKzEwOSw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZVByb3RvdHlwCiAKIHVzaW5nIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTQwLDcg
KzE0MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGVUYWJsZVZhCiAgICAgeyAiZnVuY3Rpb25SZXR1cm5p
bmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZUZ1bmN0aW9u
X2Z1bmN0aW9uUmV0dXJuaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDks
NyArMTQ5LDcgQEAgdm9pZCBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6c19pbmZvID0g
eyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2UpIH07CiAKIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZTo6SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuY3BwCmluZGV4IGU3ZDQ3NmJjYzM0M2I1ODI3YTQ3
NGIxOTk5YmQwMzU3YTcyM2UyMmUuLmIzNzUxN2UwODY5MWY3ODMwMzU1NTdmOWJmNzIwNWFiNDc4
NDdhNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTZXRMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTZXRMaWtlUHJvdG90eXBlLCBKU1Rlc3RT
ZXRMaWtlUHJvdG90eQogCiB1c2luZyBKU1Rlc3RTZXRMaWtlRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTZXRMaWtlPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3RTZXRMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTEzNCw3ICsxMzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U2V0
TGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXRMaWtlUHJvdG90eXBlRnVuY3Rpb25fZGVs
ZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNl
dExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RTZXRMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
U2V0TGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ0LDcgKzE0
NCw3IEBAIHZvaWQgSlNUZXN0U2V0TGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZTo6c19pbmZvID0geyAiVGVzdFNldExpa2UiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNl
dExpa2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZTo6c19pbmZvID0geyAiVGVz
dFNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U2V0TGlrZSkgfTsKIAogSlNUZXN0U2V0TGlrZTo6SlNUZXN0U2V0TGlr
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RTZXRMaWtlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFNldExpa2U+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCmluZGV4IDQw
MjQzOWFiMGNkOTQ3YWUyYjcyMDk3NDkwNzgwZmYxM2I4YTk3MTguLjM1MmM4NjNmM2ExYTAyOTU1
MTEyYjk2NjExYTkzYzc3NzNhMjZlZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zUHJvdG90eQogCiB1c2luZyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0
YWJsZTxKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9
OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEzOCw3ICsxMzgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U2V0TGlr
ZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZVRhYmxlVgogICAgIHsgImNsZWFyIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtIHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFNldExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVGdW5jdGlvbl9jbGVhciksIChpbnRwdHJfdCkgKDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0OCw3ICsxNDgsNyBAQCB2b2lkIEpTVGVzdFNldExpa2VX
aXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM6OnNfaW5mbyA9
IHsgIlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMpIH07CiAK
IEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM6OkpTVGVzdFNldExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
cz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXIuY3BwCmluZGV4IGVhMjkxMzRmMzJhNWUyZWQ0MmJlZjFlMjNlZjI3ZWY3
OGY5ZjU5ODQuLmZkOThiNzQ0ZDRjNmQyZjIzNjgzNzRmMTZmNTJkNTEyNzdjYzM2NTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyLmNwcApAQCAtODksNyArODksNyBAQCBTVEFUSUNfQVNTRVJUX0lT
T19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZSwgSlNUZXN0U3Ry
aW5naWZpZQogCiB1c2luZyBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXI+OwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNCw3ICsxMTQsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGVGdW5jdGlv
bl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdp
ZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJp
bmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
U3RyaW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXIp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RT
dHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllcikgfTsKIAogSlNUZXN0U3RyaW5naWZpZXI6OkpT
VGVzdFN0cmluZ2lmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdFN0cmluZ2lmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVy
YXRpb24uY3BwCmluZGV4IDBiYzZjODI5YjY3NWFmZjc5MzFlMGYyZWZhZGU0NWIxY2EyZWU4NGEu
LmMxY2UzYzRjYTZiNmU2ODRjMDk2M2YyMGQ0Yzc4NmNjYzkwODQyZmMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmNwcApAQCAtODks
NyArODksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTdHJp
bmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3RTdHJpbmdp
ZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJh
dGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91
c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnlt
b3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNCw3
ICsxMTQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJB
bm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGVUYWJsZVZhbAogICAgIHsgInRvU3RyaW5nIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rl
c3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5n
KSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5n
aWZpZXJBbm9ueW1vdXNPcGVyYXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMyw3ICsxMjMsNyBAQCB2b2lkIEpTVGVzdFN0
cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbjo6c19pbmZv
ID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvbjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3Bl
cmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uKSB9OwogCiBKU1Rlc3RT
dHJpbmdpZmllckFub255bW91c09wZXJhdGlvbjo6SlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24+JiYgaW1wbCkKICAg
ICA6IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24+KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3BwCmluZGV4IDdjMWUyNjliOTNmZDI1ZmM4MTVj
ZjMwZWYwMjdlZGM0NmRkMzg2NzguLjQ0MzY1MTM3MTI5Y2Y4ZDJkYzcxMWM1M2U3ZDkxMmQzNTgx
N2ZmY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlv
bi5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZSwgSlMKIAogdXNpbmcg
SlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25z
dHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25E
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbkRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGVU
YWJsZVZhbHVlc1sKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJh
dGlvblByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5
cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI1LDcgKzEyNSw3IEBAIHZvaWQgSlNUZXN0
U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbjo6c19pbmZvID0geyAi
VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRp
b24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbjo6
c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZp
ZXJOYW1lZE9wZXJhdGlvbikgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbjo6
SlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllck5hbWVkT3Bl
cmF0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyTmFtZWRP
cGVyYXRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFz
LmNwcAppbmRleCA1NTMzNjc5Yzg2NjI2MTBmMjgxZDJmZWIxMGU1NTFkZjEzYWYzMGNiLi45YWJh
NjQ2YjdmYTgyZjUzYWI0OWVlMDc4MDBhYzQ4NzQ5MzIxZmI1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25JbXBsZW1lbnRlZEFzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzLmNwcApAQCAt
OTAsNyArOTAsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90bwogCiB1c2luZyBKU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50
ZWRBcz47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxl
bWVudGVkQXNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNiw3ICsxMTYsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRl
ZEFzUHJvdG90eXBlVGFibAogICAgIHsgInRvU3RyaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkg
KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1By
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbklt
cGxlbWVudGVkQXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRB
c1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI1LDcgKzEyNSw3IEBA
IHZvaWQgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXM6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxl
bWVudGVkQXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcykgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM6OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzKSB9OwogCiBKU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXM6OkpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRB
cyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bk5hbWVkVG9TdHJpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5jcHAKaW5kZXggYzA2
NWQ3MmE3ZmIxMGI5ZjY2ZTBiNzllODc0NjFlYmNjNjhhOTU2Ny4uY2JkZjhhYWZlYzhjNDQxYzE5
N2I4OWExYmNiNDFlZjA4ZDYyNDM1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmlu
Zy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5jcHAKQEAgLTg5LDcgKzg5LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25OYW1lZFRvU3RyaW5nUHJvdG8KIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmc+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9T
dHJpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
TmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZVRh
YmwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3Ry
aW5nUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3Ry
aW5nIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMyw3ICsxMjMsNyBAQCB2b2lkIEpTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
OjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nOjpzX2luZm8gPSB7ICJUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
TmFtZWRUb1N0cmluZykgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3Ry
aW5nOjpKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZz4oc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAKaW5kZXggOWJkYzRlMzAyOTcwYTYyMjk3MGNlNWZkYzYw
YzAyMjAwMmNhMDMwZi4uM2NhZWQ4ODI3NDQ3MTI0NTI3MTg5MzBhOGZhNDEzOWU3NDY2ODBmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRl
LmNwcApAQCAtOTEsNyArOTEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJM
RShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlLAogCiB1c2luZyBK
U1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmli
dXRlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEx
Nyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZVRhYmxlVmFsdQogICAgIHsgInRvU3RyaW5nIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihq
c1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJp
bmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0
dHJpYnV0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRy
aWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdp
ZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlOjpzX2luZm8gPSB7ICJU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0
dHJpYnV0ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0
cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlKSB9OwogCiBKU1Rlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlOjpKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBl
cjxUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZT4oc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVy
UmVhZFdyaXRlQXR0cmlidXRlLmNwcAppbmRleCBlZmJjNGU2MzVhZjhkOTYyMmM1MGMzYjIwN2M5
ZTliZTVhZWE0MGFhLi44NDBjNWU2ZTJmZmYxMWFjODNhNDM0M2UyNWYyNDk5MDcyOGQwMDdkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0
ZS5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGUKIAogdXNpbmcg
SlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3RvciA9IEpTRE9N
Q29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJS
ZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJp
bmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVz
dFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJ0
b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpG
dW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVG
dW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGVGdW5j
dGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjcsNyArMTI3LDcgQEAg
dm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRy
aWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
clJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSkg
fTsKIAogSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGU6OkpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRX
cmFwcGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUYWdnZWRXcmFwcGVyLmNwcAppbmRleCBkZGI5NjVkZDZmZTY1NDkxM2Q5MmRmOWY4MjNjMWEz
YmNjZmI5N2UyLi5mZmEwY2U3N2NjMjlmMTQ2Mjk1MTMyZTc3NzBmZGI0MjBhNTQ1M2Y3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFn
Z2VkV3JhcHBlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuY3BwCkBAIC04Myw3ICs4Myw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGUsIEpT
VGVzdFRhZ2dlZFdyCiAKIHVzaW5nIEpTVGVzdFRhZ2dlZFdyYXBwZXJET01Db25zdHJ1Y3RvciA9
IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFRhZ2dlZFdyYXBwZXI+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUYWdnZWRXcmFwcGVyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRX
cmFwcGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUYWdnZWRXcmFwcGVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFRhZ2dlZFdyYXBwZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdFRhZ2dlZFdyYXBwZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTA3LDcgKzEwNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RUYWdnZWRX
cmFwcGVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdFRhZ2dlZFdyYXBwZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VGFn
Z2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3Jh
cHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFRhZ2dl
ZFdyYXBwZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExNiw3ICsx
MTYsNyBAQCB2b2lkIEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFRhZ2dlZFdyYXBwZXI6OnNfaW5mbyA9IHsgIlRlc3RU
YWdnZWRXcmFwcGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFRhZ2dlZFdyYXBwZXI6OnNfaW5mbyA9IHsgIlRlc3RUYWdnZWRXcmFwcGVyIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFRhZ2dl
ZFdyYXBwZXIpIH07CiAKIEpTVGVzdFRhZ2dlZFdyYXBwZXI6OkpTVGVzdFRhZ2dlZFdyYXBwZXIo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0VGFnZ2VkV3JhcHBlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RUYWdn
ZWRXcmFwcGVyLCBTaWduZWRQdHJUcmFpdHM8VGVzdFRhZ2dlZFdyYXBwZXIsIFRlc3RUYWdnZWRX
cmFwcGVyUHRyVGFnPj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
VHlwZWRlZnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFR5cGVkZWZzLmNwcAppbmRleCBjMmJjZWVhMTJmNjdhZjU2NTdkZTVlOWU4ZWFhYjdhZDVj
Y2MyYWMwLi5iYzE5YjgzZDg2NjNkOGU0ZmEyYWFmMWE2YmFkNDcyZGQ0ODFhMWNhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRl
ZnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUeXBlZGVmcy5jcHAKQEAgLTE4Nyw3ICsxODcsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9y
OgogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1
Y3RvckNvbnN0cnVjdCwgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9yKSB9
OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yMzIsNyArMjMyLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAi
Y2FsbFdpdGhTZXF1ZW5jZVRoYXRSZXF1aXJlc0luY2x1ZGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFR5cGVkZWZzUHJvdG90
eXBlRnVuY3Rpb25fY2FsbFdpdGhTZXF1ZW5jZVRoYXRSZXF1aXJlc0luY2x1ZGUpLCAoaW50cHRy
X3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnNQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RU
eXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RUeXBlZGVm
c1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjQxLDcgKzI0MSw3IEBA
IHZvaWQgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFR5cGVkZWZzOjpzX2luZm8gPSB7ICJUZXN0VHlwZWRlZnMiLCAmQmFzZTo6
c19pbmZvLCAmSlNUZXN0VHlwZWRlZnNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RUeXBlZGVmcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RUeXBlZGVmczo6c19p
bmZvID0geyAiVGVzdFR5cGVkZWZzIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0VHlwZWRlZnNU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmcykgfTsKIAog
SlNUZXN0VHlwZWRlZnM6OkpTVGVzdFR5cGVkZWZzKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFR5cGVkZWZzPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCAzZDk0N2Ez
MTlhNTBiMjQwYzFlNmRlMWU4NzM1ZmEzZmZkMjljMTEyLi5lYzAxMjcxNGYwYzk3ODQzODY4NGY0
ZWEwOWQ2Y2Y5ODFjNWJkNjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC05
OSw3ICs5OSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1dvcmtlckdsb2JhbFNj
b3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTV29ya2Vy
R2xvYmFsU2NvcGVUYWJsZSA9IHsgNiwgMTUsIHRydWUsIEpTV29ya2VyR2xvYmFsU2NvcGU6Omlu
Zm8oKSwgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU1dvcmtlckdsb2JhbFNjb3Bl
VGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxT
Y29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJH
bG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1dvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTEyOSw3ICsxMjksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEs
IDEsIHRydWUsIEpTV29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNXb3JrZXJHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJ
bmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xv
YmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xv
YmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTM4LDcgKzEzOCw3IEBAIHZvaWQgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZTo6c19p
bmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9i
YWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFs
U2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0g
eyAiV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1dvcmtlckdsb2JhbFNj
b3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29w
ZSkgfTsKIAogSlNXb3JrZXJHbG9iYWxTY29wZTo6SlNXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V29ya2VyR2xvYmFsU2NvcGU+JiYgaW1wbCkKICAg
ICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9i
YWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IGVkZjFmMTZmYzFhMDA3N2MwMzc5NDFhMWJmZDIy
ZGJjZTI0NzUzMzQuLmY1Zjg1YWY0ODFkMWRjMjliNzk4OWNjNzc2YjY5ZWJmYTRhYWE3MTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmts
ZXRHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmNwcApAQCAtNjgsNyArNjgsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0K
IH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZSA9
IHsgMSwgMSwgdHJ1ZSwgSlNXb3JrbGV0R2xvYmFsU2NvcGU6OmluZm8oKSwgSlNXb3JrbGV0R2xv
YmFsU2NvcGVUYWJsZVZhbHVlcywgSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9i
YWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
b3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTV29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTk4LDcgKzk4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTV29ya2xldEds
b2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUs
IEpTV29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGVWYWx1ZXMsIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9
OwotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrbGV0R2xvYmFs
U2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmts
ZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9i
YWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCAmSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTA3LDcgKzEwNyw3IEBAIHZvaWQgSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2xldEdsb2JhbFNjb3Bl
OjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNXb3Jr
bGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmts
ZXRHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZTo6
c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNXb3Jr
bGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmts
ZXRHbG9iYWxTY29wZSkgfTsKIAogSlNXb3JrbGV0R2xvYmFsU2NvcGU6OkpTV29ya2xldEdsb2Jh
bFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXb3JrbGV0R2xvYmFsU2Nv
cGU+JiYgaW1wbCkKICAgICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1l
T2JqZWN0Lm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3Qu
bW0KaW5kZXggZGIzNTgwYjhiNTFlYmVjZjNlOTgzYmIyMDAzYWQyMzUwNzRlY2IxOS4uOWI2MzIy
ZjQ2MzRiNTk0ZDQzOTRmZWU5NDBkNGZhOTQ2MjJkNDAzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0KQEAgLTMzLDcgKzMzLDcgQEAKIG5h
bWVzcGFjZSBKU0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsKIAotY29uc3QgQ2xhc3NJbmZvIE9i
akNSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpDUnVudGltZU9iamVjdCIsICZSdW50aW1l
T2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2Jq
Q1J1bnRpbWVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gT2JqQ1J1bnRpbWVPYmplY3Q6OnNf
aW5mbyA9IHsgIk9iakNSdW50aW1lT2JqZWN0Il9zLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lT2JqZWN0KSB9
OwogCiBPYmpDUnVudGltZU9iamVjdDo6T2JqQ1J1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmUHRyPE9iamNJbnN0YW5jZT4mJiBpbnN0YW5jZSkKICAgICA6IFJ1
bnRpbWVPYmplY3Qodm0sIHN0cnVjdHVyZSwgaW5zdGFuY2UpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQppbmRleCA1YjFhODM1M2Q5MDJlMWY4ZDczNjI4YzY5
MGIzZjc0YjIwZjFjZmU0Li42YWY2ZWEyYjkzMDA0ZTc5YTI0NmE0MzJiNWRlNTRhMjMwZTQ0NmFj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KQEAgLTIw
NSw3ICsyMDUsNyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpD
UnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1l
dGhvZDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNS
dW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lTWV0aG9kOjpzX2lu
Zm8gPSB7ICJPYmpDUnVudGltZU1ldGhvZCJfcywgJlJ1bnRpbWVNZXRob2Q6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU1ldGhvZCkgfTsK
IAogSlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5jZTo6Z2V0TWV0aG9kKEpTR2xvYmFsT2JqZWN0KiBs
ZXhpY2FsR2xvYmFsT2JqZWN0LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCmluZGV4IGI0NmM1NmZkMDEwNTA4
Njk1N2RjZTMyZGQ1ZjY2NjU2OWM0Y2E2ZDMuLjE1Y2I2YTA4ZTVjMzVjMTcyMmNkZDM3Y2EzOGFj
NWNhOTQ0ZmExNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNf
cnVudGltZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUu
bW0KQEAgLTIxNSw3ICsyMTUsNyBAQCB1bnNpZ25lZCBpbnQgT2JqY0FycmF5OjpnZXRMZW5ndGgo
KSBjb25zdAogICAgIHJldHVybiBbX2FycmF5IGNvdW50XTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IE9iamNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpj
RmFsbGJhY2tPYmplY3RJbXApIH07Citjb25zdCBDbGFzc0luZm8gT2JqY0ZhbGxiYWNrT2JqZWN0
SW1wOjpzX2luZm8gPSB7ICJPYmpjRmFsbGJhY2tPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqY0ZhbGxiYWNrT2JqZWN0SW1w
KSB9OwogCiBPYmpjRmFsbGJhY2tPYmplY3RJbXA6Ok9iamNGYWxsYmFja09iamVjdEltcChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgT2JqY0luc3Rh
bmNlKiBpLCBjb25zdCBTdHJpbmcmIHByb3BlcnR5TmFtZSkKICAgICA6IEpTRGVzdHJ1Y3RpYmxl
T2JqZWN0KGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L3J1bnRpbWVfYXJyYXkuY3BwCmluZGV4IGE5ZWE2NDI4YzVkMTE3ZjZmZTI4YmQwY2MxMTI0ODMy
NDE2ZjE5YzUuLmMwNWUzYTQwZTgwNTY2NWRjMGZkZWQwMmMzMDUxOGVkOTYyODYwYzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJheSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJheSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShS
dW50aW1lQXJyYXkpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGFycmF5
TGVuZ3RoR2V0dGVyKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRp
bWVfbWV0aG9kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAK
aW5kZXggNjU4ZjczY2FlOGE5MTBkMDBmY2M1ZGM2MjBlMjM3MjFjM2I3OTZkMC4uZTE4ZWMyYzg4
ZTE4NzBmOWQ2ZThlMzY0ODFkMTdlNWU5ZGUwMWMzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
cnVudGltZV9tZXRob2QuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiB1
c2luZyBuYW1lc3BhY2UgQmluZGluZ3M7CiAKLVdFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5m
byBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1lTWV0aG9kIiwgJkludGVybmFsRnVu
Y3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50
aW1lTWV0aG9kKSB9OworV0VCQ09SRV9FWFBPUlQgY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVNZXRo
b2Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVNZXRob2QiX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU1ldGhvZCkg
fTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbFJ1bnRpbWVNZXRob2Qp
Owogc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIobWV0aG9kTGVuZ3RoR2V0dGVyKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCmluZGV4IDlkM2YzYzVjNjkw
NDdiMmU0MDBmYzI3MmI1YTc3ZThlZDMzMmI5YjcuLmIyNGYyYWVmMTk0YmFkMjViM2E2MWViODhl
NzQxNDdkY2U5MzEwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X29iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNw
cApAQCAtMzYsNyArMzYsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIG5hbWVzcGFjZSBK
U0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsKIAotV0VCQ09SRV9FWFBPUlQgY29uc3QgQ2xhc3NJ
bmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVPYmplY3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVPYmplY3Qp
IH07CitXRUJDT1JFX0VYUE9SVCBjb25zdCBDbGFzc0luZm8gUnVudGltZU9iamVjdDo6c19pbmZv
ID0geyAiUnVudGltZU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTihjb252ZXJ0UnVudGltZU9iamVjdFRvUHJpbWl0aXZlKTsKIHN0YXRp
YyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxSdW50aW1lT2JqZWN0KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJbWFnZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwCmluZGV4IGY0Yjk4YmE2MmUxMTlhMDc3MTMx
MmQzYjg4YzQ5MTkzNjgzNmVlMzcuLmFiZDJkNzU0MjMwMjkyODQzMjE1NDk0NDAxMzViODAwNjZi
NGI1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJbWFnZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9DdXN0b21QYWludEltYWdlLmNwcApAQCAtMTU2
LDcgKzE1Niw3IEBAIEltYWdlRHJhd1Jlc3VsdCBDdXN0b21QYWludEltYWdlOjpkb0N1c3RvbVBh
aW50KEdyYXBoaWNzQ29udGV4dCYgZGVzdENvbnRleHQsIGNvCiAKICAgICBhdXRvJiBsZXhpY2Fs
R2xvYmFsT2JqZWN0ID0gZ2xvYmFsT2JqZWN0OwogICAgIEpTQzo6QXJnTGlzdCBub0FyZ3M7Ci0g
ICAgSlNDOjpKU1ZhbHVlIHRoaXNPYmplY3QgPSB7IEpTQzo6Y29uc3RydWN0KCZsZXhpY2FsR2xv
YmFsT2JqZWN0LCBwYWludENvbnN0cnVjdG9yLCBub0FyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0
IHBhaW50IGNsYXNzIikgfTsKKyAgICBKU0M6OkpTVmFsdWUgdGhpc09iamVjdCA9IHsgSlNDOjpj
b25zdHJ1Y3QoJmxleGljYWxHbG9iYWxPYmplY3QsIHBhaW50Q29uc3RydWN0b3IsIG5vQXJncywg
IkZhaWxlZCB0byBjb25zdHJ1Y3QgcGFpbnQgY2xhc3MiX3MpIH07CiAKICAgICBpZiAoVU5MSUtF
TFkoc2NvcGUuZXhjZXB0aW9uKCkpKSB7CiAgICAgICAgIHJlcG9ydEV4Y2VwdGlvbigmbGV4aWNh
bEdsb2JhbE9iamVjdCwgc2NvcGUuZXhjZXB0aW9uKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455534</attachid>
            <date>2022-03-23 11:51:25 -0700</date>
            <delta_ts>2022-03-23 12:29:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323115124.patch</filename>
            <type>text/plain</type>
            <size>667640</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZWZmMTExNjRkMDM0MTdkYTVhMzYyYjM0ZWQ4MjNlZmExZGE1MDA5Li4zODQ3ZmQxOTg5YTVkYTFm
NzI2MzMxZjc5NzVlNzQzZmNkMWNjNmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hh
ciopIGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAg
ICBleHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1
Y3RpbmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5n
IHRoZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21w
dXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVj
dDo6bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5j
cHA6CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkv
SlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0
aW9uLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Nj
cmlwdC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJ
L0pTVHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFy
cmF5QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZm
ZXJBbmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRl
U3RydWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAg
ICAqIEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9y
Q3VzdG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAg
ICAgICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBB
UEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGli
L0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoK
KyAgICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0
aW9uQ2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5k
bGVyOjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29k
ZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0
S2luZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5
dGVjb2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAg
ICAgICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2Rl
L1VubGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxD
b2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNw
cDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVs
ZXRlQnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5v
ZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgor
ICAgICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2Fs
bEZyYW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAg
ICAgIChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9v
dE1hcmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9y
L0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0
b3I6OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAg
ICAoSW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVz
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Oklu
c3BlY3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0
YWJsZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAg
ICAqIGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgor
ICAgICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6Cisg
ICAgICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToK
KyAgICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFy
Z3VtZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAg
KiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBh
cnNlUHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVS
ZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRv
bWljc09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVD
YWNoZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFy
ZEVycm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1
bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpT
Qzo6Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAg
ICAgICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVT
eW50YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToK
KyAgICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Q29uc3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICog
cnVudGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFs
RXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5j
dGlvblNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291
cmNlQXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNv
dXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVu
ZGVyKToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVh
dGVJbnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5l
ZFByaXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNj
ZXNzRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJy
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdT
bG93KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcElt
cGwuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
ICogcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6
OmluaXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZSk6CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpT
Qzo6aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0
aWFsaXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
SXRlcmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdt
ZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlh
bGl6ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6Cisg
ICAgICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0Jv
dW5kRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJl
YW0pOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rp
b24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRU
RVIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAg
ICAgIChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXAp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9K
U0dlbmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgor
ICAgICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRl
UmFuZ2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5
cGVGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAg
IChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVC
dXR0ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01h
cC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2Jq
ZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
SlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6
d3JhcFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Nj
cmlwdEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5n
OjpkdW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVk
QXJyYXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFr
TWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkxpdGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KiBydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJh
dG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAg
ICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dp
dGhSYWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAg
ICAgIChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRv
U3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVy
YXRpb25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChK
U0M6OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5
VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBP
YmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3Bl
ZEFyZ3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHA6CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxt
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OnRvTG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJv
bENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
U3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJh
dGlvbjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1w
b3JhbE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNt
YWxsZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFp
blRpbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6
OmxvZ1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFr
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMv
RnVuY3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6
RnVuY3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9v
bHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMpOgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAo
SlNDOjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUlu
c3BlY3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAg
ICAgICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJy
b3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6
CisgICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNt
R2xvYmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAq
IHdhc20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6
ZGlkQ29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5j
cHA6CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAg
ICAgICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlv
bi5jcHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAg
ICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAo
SlNDOjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1i
bHlNb2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5j
cHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29y
ZC5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXpl
RXhwb3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNt
L2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlX
cmFwcGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgor
ICAgICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVy
cm9yTWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMt
MjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXVtN
U1ZDXSBjdXN0b20gZ2V0dGVyIGNyZWF0aW9uIG5lZWRzIHRvIGluY2x1ZGUgY2xhc3NJbmZvIHNp
bmNlIE1TVkMgSUNGIGlzIG5vdCAic2FmZSIgdmFyaWFudApkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBjMDdl
MWFmMmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi42MTk2NGFjNzE2MjkxMTFlYzJhZTEzNTQ4N2Y5YTdm
NDZjZTE4YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUg
U3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5oOgor
ICAgICAgICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAoV1RG
OjpkaXNwbGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
OgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24pOgor
ICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6bnVt
YmVyVG9TdHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuaDoK
KwogMjAyMi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggMjI3ZDI2ZmQ4ODFkMDFkZTU1NjMzZjZhZTdhMjRjNzg5ODcyMjc2OC4uYjg0NTU0ZDA0
ZTYxYzk3YjYyNDI3MjE0MjEwNTNiYzM1MWRlNTU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMw
IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAg
ICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1
Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd1Byb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lE
QlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
UmVtb3RlRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5kb3dQ
cm94eS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2Uu
Y3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHA6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAg
IChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpDUnVu
dGltZU9iamVjdC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tOgor
ICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAgICAg
ICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVudGlt
ZV9hcnJheS5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAgICAg
ICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIyICBCcmFuZG9uIFN0
ZXdhcnQgIDxicmFuZG9uc3Rld2FydEBhcHBsZS5jb20+CiAKICAgICAgICAgV0JSIGVsZW1lbnQg
c2hvdWxkIHNldCBDbGVhciBwcm9wZXJ0eSB0byBOb25lCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwCmluZGV4IDNkY2VhNmNhMjZlMjhiZGUzOGY0
YjY5Mzk0NmVlMjkyMDMwN2E0ZGIuLjEyNWJjOTlhMWQ1MmY1OThiNmZkZDlkNmQ4MzBjNThkNDk3
OTFmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgSlNBUElHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQppbmRleCBiM2UyYWU0NDFjNGVjNTIzNDJh
ZmU5ZDU0OWU0YWU2MjM4Y2UzNDVmLi5lNGI4NTliOWNmNzI0NjY5NjRiNGE5ZDc0YjUzNjMzOGQw
MmEyZmNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFs
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QubW0KQEAgLTUwLDcgKzUwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJs
ZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKQEAgLTkwLDcgKzkwLDcgQEAgc3Rh
dGljIEV4cGVjdGVkPFVSTCwgU3RyaW5nPiBjb21wdXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIoY29u
c3QgVVJMJiBiYXNlLCBjb25zdAogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQobWFrZVN0
cmluZygiTW9kdWxlIHNwZWNpZmllcjogIl9zLCBzcGVjaWZpZXIsICIgZG9lcyBub3Qgc3RhcnQg
d2l0aCBcIi9cIiwgXCIuL1wiLCBvciBcIi4uL1wiLiBSZWZlcmVuY2VkIGZyb206ICJfcywgYmFz
ZS5zdHJpbmcoKSkpOwogCiAgICAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcvJykpIHsKLSAg
ICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iKSwgc3BlY2lmaWVyKTsK
KyAgICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iX3MpLCBzcGVjaWZp
ZXIpOwogICAgICAgICBpZiAoYWJzb2x1dGVVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0
dXJuIGFic29sdXRlVVJMOwogICAgIH0KQEAgLTE3NywxMiArMTc3LDEyIEBAIEpTSW50ZXJuYWxQ
cm9taXNlKiBKU0FQSUdsb2JhbE9iamVjdDo6bW9kdWxlTG9hZGVyRmV0Y2goSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iCiAKICAgICBpZiAoVU5MSUtFTFkoIVtjb250ZXh0IG1vZHVsZUxvYWRlckRl
bGVnYXRlXSkpIHsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICBwcm9taXNlLT5y
ZWplY3QoZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJObyBtb2R1bGUg
bG9hZGVyIHByb3ZpZGVkLiIpKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KGdsb2JhbE9iamVj
dCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRlciBwcm92aWRlZC4i
X3MpKTsKICAgICAgICAgcmV0dXJuIHByb21pc2U7CiAgICAgfQogCiAgICAgYXV0byBzdHJvbmdQ
cm9taXNlID0gU3Ryb25nPEpTSW50ZXJuYWxQcm9taXNlPih2bSwgcHJvbWlzZSk7Ci0gICAgYXV0
byogcmVzb2x2ZSA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCAxLCAicmVzb2x2ZSIsIFs9XSAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpIHsKKyAgICBhdXRvKiByZXNvbHZlID0gSlNOYXRpdmVTdGRGdW5jdGlv
bjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsICJyZXNvbHZlIl9zLCBbPV0gKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAgICAgICAgIC8v
IFRoaXMgY2FwdHVyZXMgdGhlIGdsb2JhbE9iamVjdCBidXQgdGhhdCdzIG9rIGJlY2F1c2Ugb3Vy
IHN0cnVjdHVyZSBrZWVwcyBpdCBhbGl2ZSBhbnl3YXkuCiAgICAgICAgIFZNJiB2bSA9IGdsb2Jh
bE9iamVjdC0+dm0oKTsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW0pTQ29udGV4dCBj
b250ZXh0V2l0aEpTR2xvYmFsQ29udGV4dFJlZjp0b0dsb2JhbFJlZihnbG9iYWxPYmplY3QpXTsK
QEAgLTIxMyw3ICsyMTMsNyBAQCBKU0ludGVybmFsUHJvbWlzZSogSlNBUElHbG9iYWxPYmplY3Q6
Om1vZHVsZUxvYWRlckZldGNoKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICByZXR1
cm4gZW5jb2RlZEpTVW5kZWZpbmVkKCk7CiAgICAgfSk7CiAKLSAgICBhdXRvKiByZWplY3QgPSBK
U05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJlamVjdCIs
IFs9XSAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgeworICAgIGF1dG8q
IHJlamVjdCA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAx
LCAicmVqZWN0Il9zLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUp
IHsKICAgICAgICAgc3Ryb25nUHJvbWlzZS5nZXQoKS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAgICAgIHJldHVybiBlbmNvZGVkSlNVbmRlZmluZWQo
KTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElW
YWx1ZVdyYXBwZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3Jh
cHBlci5jcHAKaW5kZXggMjFhN2E5N2MwZWNlZGY5MDEyNTUzMDFlNzZjNzhjNGYyYjQ0NmQ3Yy4u
MTc3OGI2MWQ2NzU1YjlhNWI3NmE1NDA1NjYxNTgyMzk0YjRlZjYyYiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKQEAgLTI4LDYgKzI4LDYg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShKU0FQSVZhbHVlV3JhcHBlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQVBJVmFsdWVXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQVBJVmFsdWVXcmFwcGVyOjpzX2luZm8gPSB7ICJBUEkgV3JhcHBlciJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBl
cikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCmluZGV4IDQ3NzNiMDc0NDg3MzQ4YTg3ZWZjODIxZDEy
YjJhOTNjZTg2MTIxOTUuLmZjODVlZDdiZGViNmY5ZjUwMjA3MWZmM2ZiOWY2M2RmMjdhODM5MmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1t
CkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRp
Y0Z1bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyT2JqZWN0Q2FsbGJhY2tPCiAKIERFRklORV9WSVNJ
VF9DSElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNB
UElXcmFwcGVyT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9i
amVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBl
ck9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGUgPD4gY29uc3QgYm9vbCBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVl
OwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0NhbGxiYWNrQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCmluZGV4IDQ4Nzc3ODg5MzBlZTQyZmRhYjM1ODc1OWRiZjcx
NDJmMDM2YTMzYmEuLmJhMDU2NjVjOTg5YTg1NWQ1ZTk1ODIyZWM0OWZlMjBlOTM0MWY3M2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0
cnVjdG9yKSB9OwogCiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3Rv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlND
bGFzc1JlZiBqc0NsYXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDEyODY3
MDljMDhjMmExY2FhMWQzYzM5Yjc5NjBjYzZiNzkxNzEzZGIuLmM5OTY1MDE5ZDJjMDI5NzU2NjZm
NzJkOGVmODIzZGJmZGU3NDJiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTQ2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0NhbGxiYWNrRnVu
Y3Rpb24pOwogCi1jb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7
ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0
aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTQ2FsbGJhY2tGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwCmluZGV4IDQ0NGMxNTAzNDUx
ZGQ5Nzk1MzBhMTg1Y2RhMzg2ZWUxZDFjNjdiYjguLjE1ZGFmM2MyZmNjNDdlNTkyZjFkNjQyMTI2
YWQ3ZmE4YjU3MjM4Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxi
YWNrT2JqZWN0LmNwcApAQCAtNDUsOCArNDUsOCBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lU
SF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplYwog
REVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFj
a09iamVjdDxKU0dsb2JhbE9iamVjdD4pOwogCiAvLyBEZWZpbmUgdGhlIHR3byB0eXBlcyBvZiBK
U0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZv
IEpTQ2FsbGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNr
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBK
U0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpT
Q2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2Jh
bE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2Fs
bGJhY2tPYmplY3Q8SlNOb25GaW5hbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaAppbmRleCBjNzg0ZGZiYTk0MDY5Njky
NDk5ZWM3MzY4YWUxYWNiZWIxYzc5NGRiLi41MWRhNzc3YWQyNDU0NTg1MTgyM2MxZDczNjk3YjU3
ZGUyMGFlMDdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJh
Y2tPYmplY3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2Fs
bGJhY2tPYmplY3RGdW5jdGlvbnMuaApAQCAtMjExLDcgKzIxMSw3IEBAIGJvb2wgSlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgSlNH
bG9iYWxPYmplCiAgICAgaWYgKHByb3BlcnR5TmFtZS51aWQoKSA9PSB2bS5wcm9wZXJ0eU5hbWVz
LT50b1N0cmluZ1RhZ1N5bWJvbC5pbXBsKCkpIHsKICAgICAgICAgU3RyaW5nIGNsYXNzTmFtZSA9
IHRoaXNPYmplY3QtPmNsYXNzUmVmKCktPmNsYXNzTmFtZSgpOwogICAgICAgICBpZiAoY2xhc3NO
YW1lLmlzRW1wdHkoKSkKLSAgICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXNPYmplY3QtPmNsYXNz
TmFtZSh2bSk7CisgICAgICAgICAgICBjbGFzc05hbWUgPSAgdGhpc09iamVjdC0+Y2xhc3NOYW1l
KHZtKTsKICAgICAgICAgc2xvdC5zZXRWYWx1ZSh0aGlzT2JqZWN0LCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwganNTdHJpbmcodm0sIFdURk1vdmUo
Y2xhc3NOYW1lKSkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU1NjcmlwdC5tbQppbmRleCA4NTAzNDdiN2NkNzEyNjBhMGJmNjU5MDc1MGE5YTQ1
MGRjMzExYzFjLi42YjAyMDZlMDM3ZjMyM2MzMmY5OTEzNDIyMWFkYWRhYjM3NWZhMGUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNTY3JpcHQubW0KQEAgLTE1NCw4ICsxNTQsNyBAQCAtICh2
b2lkKXJlYWRDYWNoZQogICAgIGlmICghbV9jYWNoZVBhdGgpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIE5TU3RyaW5nICpjYWNoZVBhdGhTdHJpbmcgPSBbbV9jYWNoZVBhdGggcGF0aF07Ci0gICAg
Y29uc3QgY2hhciogY2FjaGVGaWxlbmFtZSA9IGNhY2hlUGF0aFN0cmluZy5VVEY4U3RyaW5nOwor
ICAgIFN0cmluZyBjYWNoZUZpbGVuYW1lID0gW21fY2FjaGVQYXRoIHBhdGhdOwogCiAgICAgYXV0
byBmZCA9IEZpbGVTeXN0ZW06Om9wZW5BbmRMb2NrRmlsZShjYWNoZUZpbGVuYW1lLCBGaWxlU3lz
dGVtOjpGaWxlT3Blbk1vZGU6OlJlYWQsIHtGaWxlU3lzdGVtOjpGaWxlTG9ja01vZGU6OkV4Y2x1
c2l2ZSwgRmlsZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpOb25ibG9ja2luZ30pOwogICAgIGlmICgh
RmlsZVN5c3RlbTo6aXNIYW5kbGVWYWxpZChmZCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTVHlwZWRBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTVHlwZWRBcnJheS5jcHAKaW5kZXggYWJhNmRmNmUyYTMxODM4ZTczODg0OWQyOGI3MjkyZTIx
MzJhNGU5MS4uOTNlZTg4NGM1Yzk5ZGViNzBiYjQxOWRiODZhMmM5NWVjMTEyZGNkMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNUeXBlZEFycmF5LmNwcApAQCAtMjE5LDcgKzIxOSw3
IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIoSlND
b250ZXh0UmVmIGN0eCwgSlNUeXBlZEFycmF5CiAKICAgICBKU0FycmF5QnVmZmVyKiBqc0J1ZmZl
ciA9IGpzRHluYW1pY0Nhc3Q8SlNBcnJheUJ1ZmZlcio+KHZtLCB0b0pTKGpzQnVmZmVyUmVmKSk7
CiAgICAgaWYgKCFqc0J1ZmZlcikgewotICAgICAgICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRp
b24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5
V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmpl
Y3QiKSk7CisgICAgICAgIHNldEV4Y2VwdGlvbihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIg
ZXhwZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJyYXkgQnVmZmVyIG9iamVjdCJfcykpOwogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAKQEAgLTI0NCw3ICsyNDQsNyBAQCBKU09iamVjdFJl
ZiBKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyQW5kT2Zmc2V0KEpTQ29udGV4
dFJlZiBjdHgsIEpTVAogCiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBqc0R5bmFtaWND
YXN0PEpTQXJyYXlCdWZmZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAgIGlmICghanNC
dWZmZXIpIHsKLSAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZl
ciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0IikpOworICAgICAg
ICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVy
IHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFs
dWUubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KaW5kZXggZDNhZDA4
MGUxZGRmNGZlNmVmYmE5MTM1YmEyNjg3NmM3N2RjYmMyNi4uZjEyYTJjNDk1M2YwMDMyZGZiNGI3
MmY2OGZmODBmZWRkYjY5MDM1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU1ZhbHVlLm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZS5tbQpA
QCAtMTE3OSw3ICsxMTc5LDcgQEAgc3RhdGljIFN0cnVjdEhhbmRsZXJzKiBjcmVhdGVTdHJ1Y3RI
YW5kbGVyTWFwKCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgLy8gVHJ5IHRvIGZpbmQg
YSBtYXRjaGluZyB2YWx1ZVdpdGg8Rm9vPjpjb250ZXh0OiBtZXRob2QuCiAgICAgICAgIGF1dG8g
dHlwZSA9IGFkb3B0U3lzdGVtPGNoYXJbXT4obWV0aG9kX2NvcHlSZXR1cm5UeXBlKG1ldGhvZCkp
OwotICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJz
LT5maW5kKHR5cGUuZ2V0KCkpOworICAgICAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRl
ciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKFN0cmluZyB7IHR5cGUuZ2V0KCkgfSk7CiAgICAgICAg
IGlmIChpdGVyID09IHN0cnVjdEhhbmRsZXJzLT5lbmQoKSkKICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgU3RydWN0VGFnSGFuZGxlciYgaGFuZGxlciA9IGl0ZXItPnZhbHVlOwpAQCAtMTIx
Nyw3ICsxMjE3LDcgQEAgc3RhdGljIFN0cnVjdFRhZ0hhbmRsZXIqIGhhbmRlckZvclN0cnVjdFRh
Zyhjb25zdCBjaGFyKiBlbmNvZGVkVHlwZSkKIAogICAgIHN0YXRpYyBTdHJ1Y3RIYW5kbGVycyog
c3RydWN0SGFuZGxlcnMgPSBjcmVhdGVTdHJ1Y3RIYW5kbGVyTWFwKCk7CiAKLSAgICBTdHJ1Y3RI
YW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5maW5kKGVuY29kZWRUeXBl
KTsKKyAgICBTdHJ1Y3RIYW5kbGVyczo6aXRlcmF0b3IgaXRlciA9IHN0cnVjdEhhbmRsZXJzLT5m
aW5kKFN0cmluZyB7IGVuY29kZWRUeXBlIH0pOwogICAgIGlmIChpdGVyID09IHN0cnVjdEhhbmRs
ZXJzLT5lbmQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuICZpdGVyLT52YWx1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJNYXAubW0KaW5kZXggNzBkZWZjMDA0
MDNmYTFiYTUwZmE1MmNiNTU5NWMyYzE2YjdjNjJkYy4uZjgyMWRmOGUzZWJlZDU3ZjU0MGNkMmYw
MWQ2NGVjOTZkY2ZhODZjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U1dyYXBwZXJNYXAubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1dyYXBwZXJN
YXAubW0KQEAgLTQzOCw3ICs0MzgsNyBAQCBzdGF0aWMgSlNDOjpKU09iamVjdCogYWxsb2NhdGVD
b25zdHJ1Y3RvckZvckN1c3RvbUNsYXNzKEpTQ29udGV4dCAqY29udGV4dCwgY29ucwogICAgICAg
ICAgICAgICAgIGNvbnN0IGNoYXIqIG5hbWUgPSBzZWxfZ2V0TmFtZShzZWxlY3Rvcik7CiAgICAg
ICAgICAgICAgICAgaWYgKCFpc0luaXRGYW1pbHlNZXRob2QoQChuYW1lKSkpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KG5hbWUsIChf
X2JyaWRnZSBDRlR5cGVSZWYpcHJvdG9jb2wpOworICAgICAgICAgICAgICAgIGluaXRUYWJsZS5z
ZXQoU3RyaW5nIHsgbmFtZSB9LCAoX19icmlkZ2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsKICAgICAg
ICAgICAgIH0pOwogICAgICAgICB9KTsKICAgICB9CkBAIC00NTEsNyArNDUxLDcgQEAgc3RhdGlj
IEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3RydWN0b3JGb3JDdXN0b21DbGFzcyhKU0NvbnRl
eHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgZm9yRWFjaE1ldGhvZEluQ2xhc3MoY3VycmVudENs
YXNzLCBeKE1ldGhvZCBtZXRob2QpIHsKICAgICAgICAgICAgIFNFTCBzZWxlY3RvciA9IG1ldGhv
ZF9nZXROYW1lKG1ldGhvZCk7CiAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lID0gc2VsX2dl
dE5hbWUoc2VsZWN0b3IpOwotICAgICAgICAgICAgYXV0byBpdGVyID0gaW5pdFRhYmxlLmZpbmQo
bmFtZSk7CisgICAgICAgICAgICBhdXRvIGl0ZXIgPSBpbml0VGFibGUuZmluZChTdHJpbmcgeyBu
YW1lIH0pOwogCiAgICAgICAgICAgICBpZiAoaXRlciA9PSBpbml0VGFibGUuZW5kKCkpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2Jq
Q0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXggZGY3NjBjNjI4NjY4YTRmNDZlODlkNTMzNjA5M2Qx
Y2E1YzAyNDRkYy4uOGQ4ZTM1MTY5ZDk2MzQ2OTIzN2U0Mzk1ZDYyOTMzMzM0YjI2ZmQ1YSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5t
bQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxsYmFja0Z1bmN0aW9uLm1t
CkBAIC01MzMsNyArNTMzLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVmIG9iakNDYWxsYmFja0Z1bmN0
aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNhbGxlckNvbnQKICAgICByZXR1cm4g
Y29uc3RfY2FzdDxKU09iamVjdFJlZj4ocmVzdWx0KTsKIH0KIAotY29uc3QgSlNDOjpDbGFzc0lu
Zm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakND
YWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ0NhbGxiYWNrRnVuY3Rpb24p
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxPYmpDQ2FsbGJhY2tG
dW5jdGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RPYmpD
Q2FsbGJhY2tGdW5jdGlvbik7CkBAIC01NzQsMTAgKzU3NCwxMCBAQCB2b2lkIE9iakNDYWxsYmFj
a0Z1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIFN0cmluZyBPYmpDQ2FsbGJhY2tGdW5j
dGlvbkltcGw6Om5hbWUoKQogewogICAgIGlmIChtX3R5cGUgPT0gQ2FsbGJhY2tJbml0TWV0aG9k
KQotICAgICAgICByZXR1cm4gY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0KCkpOwor
ICAgICAgICByZXR1cm4gU3RyaW5nIHsgY2xhc3NfZ2V0TmFtZShtX2luc3RhbmNlQ2xhc3MuZ2V0
KCkpIH07CiAgICAgLy8gRklYTUU6IE1heWJlIHdlIGNvdWxkIHN1cHBvcnQgaGF2aW5nIHRoZSBz
ZWxlY3RvciBhcyB0aGUgbmFtZSBvZiB0aGUgbm9uLWluaXQgCiAgICAgLy8gZnVuY3Rpb25zIHRv
IG1ha2UgaXQgYSBiaXQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb20gdGhlIEpTIHNpZGU/Ci0gICAg
cmV0dXJuICIiOworICAgIHJldHVybiBlbXB0eVN0cmluZygpOwogfQogCiBKU1ZhbHVlUmVmIE9i
akNDYWxsYmFja0Z1bmN0aW9uSW1wbDo6Y2FsbChKU0NvbnRleHQgKmNvbnRleHQsIEpTT2JqZWN0
UmVmIHRoaXNPYmplY3QsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCmlu
ZGV4IDNkYmQ5ZDM1M2Q2ZWJkYWI2ZjIzYzgyOTEyNzdlNTM2NjY3YzA2OGYuLjlhNTg3MmNiMTc3
NWIwYzE4OTc2YzgxNmEwOWYzYThlMDE3MmJhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwCkBA
IC02Miw3ICs2Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRpY0Z1
bmN0aW9uR2V0dGVySlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0Q2FsCiAKIERFRklORV9WSVNJVF9D
SElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElX
cmFwcGVyR2xvYmFsT2JqZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJ
V3JhcHBlckdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0
IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46OnNf
aW5mbyA9IHsgIkpTQVBJV3JhcHBlckdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9Owog
dGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyR2xvYmFs
T2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CiAKIHRlbXBsYXRlIDw+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xp
Yi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0
R0xpYi5jcHAKaW5kZXggM2VhZjhmNjc5MGFlNzg1YTNkZDUyM2FiOWFlNDE3NGQxYmRiMjhkNC4u
ZjA1OTljMTBmNDQzOTM2NjYyY2VkNTZiMTY4NTc2NTBiN2I1ODkyOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJPYmplY3RHTGli
LmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihz
dGF0aWNGdW5jdGlvbkdldHRlckpTQVBJV3JhcHBlck9iamVjdENhbGxiYWNrTwogCiBERUZJTkVf
VklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlND
YWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBw
ZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdy
YXBwZXJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBK
U0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0
cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDA4MTA3N2E0YzA0M2NjYjQ4YWVi
MjliMDFmOGZmYzBkOGFmYmUxM2EuLmVkN2YxYTczOWYwNWJkODgzN2ZkNjM5ZjY4NDZmZWY2MDc1
Y2FlODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxs
YmFja0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlND
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIEpTT2JqZWN0UmVm
IGNhbGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiBjYWxsZXJDb250ZXh0LCBKU09iamVjdFJl
ZiBjb24KICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SlNDQ2FsbGJhY2tGdW5jdGlvbio+KHRvSlMo
Y29uc3RydWN0b3IpKS0+Y29uc3RydWN0KGNhbGxlckNvbnRleHQsIGFyZ3VtZW50Q291bnQsIGFy
Z3VtZW50cywgZXhjZXB0aW9uKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTQ0NhbGxiYWNrRnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ0NhbGxiYWNr
RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNDQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZv
ID0geyAiQ2FsbGJhY2tGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0aW9uKSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNDQ2FsbGJhY2tGdW5j
dGlvbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU0NDYWxs
YmFja0Z1bmN0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVz
dHMvSlNPTlBhcnNlVGVzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pT
T05QYXJzZVRlc3QuY3BwCmluZGV4IGEwNjJhYWI3ZWRjNzNkNWI1MjE3YTU1YTllZjg1ZWE2NmRj
NzgyZmIuLmRmN2JmZGJiMDIxMGIyNmMwMGRjNzhjMzE2MTAwOGZjYjZlYjllYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcApAQCAt
NDMsMTMgKzQzLDEzIEBAIGludCB0ZXN0SlNPTlBhcnNlKCkKICAgICBKU0xvY2tIb2xkZXIgbG9j
a2VyKHZtLmdldCgpKTsKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gSlNHbG9i
YWxPYmplY3Q6OmNyZWF0ZSgqdm0sIEpTR2xvYmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUoKnZt
LCBqc051bGwoKSkpOwogICAgIAotICAgIEpTVmFsdWUgdjAgPSBKU09OUGFyc2UoZ2xvYmFsT2Jq
ZWN0LCAiIik7Ci0gICAgSlNWYWx1ZSB2MSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIjJCVe
Iik7CisgICAgSlNWYWx1ZSB2MCA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIiX3MpOworICAg
IEpTVmFsdWUgdjEgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiJfcyk7CiAgICAgSlNW
YWx1ZSB2MiA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsIFN0cmluZygpKTsKICAgICBVQ2hhciBl
bXB0eVVDaGFyQXJyYXlbMV0gPSB7ICdcMCcgfTsKICAgICBKU1ZhbHVlIHYzID0gSlNPTlBhcnNl
KGdsb2JhbE9iamVjdCwgU3RyaW5nKGVtcHR5VUNoYXJBcnJheSwgMCkpOwogICAgIEpTVmFsdWUg
djQ7Ci0gICAgSlNWYWx1ZSB2NSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIxMjMiKTsKKyAg
ICBKU1ZhbHVlIHY1ID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIjEyMyJfcyk7CiAgICAgCiAg
ICAgZmFpbGVkID0gZmFpbGVkIHx8ICh2MCAhPSB2MSk7CiAgICAgZmFpbGVkID0gZmFpbGVkIHx8
ICh2MSAhPSB2Mik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mv
U2NyaXB0RnVuY3Rpb25DYWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9T
Y3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDdmZjNlNjFlNDI1MjM2YThlNjU2NTVhYjkwZTNh
OWQ0NzllOWFmNDIuLjNhYTkyNTNkMzM0ODcwMDNlOTczN2RiZDIyMGI4MGE0YWFiOTNhOTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlvbkNh
bGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iaW5kaW5ncy9TY3JpcHRGdW5jdGlv
bkNhbGwuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHZvaWQgU2NyaXB0Q2FsbEFyZ3VtZW50SGFuZGxl
cjo6YXBwZW5kQXJndW1lbnQoY29uc3QgY2hhciogYXJndW1lbnQpCiB7CiAgICAgVk0mIHZtID0g
bV9nbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0pOwotICAgIG1f
YXJndW1lbnRzLmFwcGVuZChqc1N0cmluZyh2bSwgYXJndW1lbnQpKTsKKyAgICBtX2FyZ3VtZW50
cy5hcHBlbmQoanNTdHJpbmcodm0sIFN0cmluZyB7IGFyZ3VtZW50IH0pKTsKIH0KIAogdm9pZCBT
Y3JpcHRDYWxsQXJndW1lbnRIYW5kbGVyOjphcHBlbmRBcmd1bWVudChKU1ZhbHVlIGFyZ3VtZW50
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAppbmRleCAw
OThhZWQ5MzVhNjhmN2Q2Njg3YmQzNTIzMjUzMDc3ZjMxZWQxOWYyLi42ZDlkOGI1MWUxMTlkYmMw
NzgwOTExNGUxY2IxMGVkYjY3Mjg0NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvQ29kZUJsb2NrLmNwcApAQCAtOTYsNyArOTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIERF
RklORV9BTExPQ0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoQ29kZUJsb2NrUmFyZURhdGEpOwog
CiBjb25zdCBDbGFzc0luZm8gQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkNvZGVCbG9jayIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkNvZGVCbG9jayJfcywgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKENvZGVCbG9jaykKIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJs
b2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBmYWE1MTk1MTM0NjQ4YzY2MjVmN2FjNTk0MzkxMjc0ZGQwNGI5YmIwLi42MGU5ZDg4
NjQ3ZDMyNTRhOTAyZjAzNmE4OWIxMGM5MDNiZDJkZjA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBu
YW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9
IHsKLSAgICAiRXZhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CisgICAgIkV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShFdmFsQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9ja0Vk
Z2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVC
bG9ja0VkZ2UuY3BwCmluZGV4IGJmOWQ2ZmU0MWNmODU3ODE0MGRmYWYzZGNkN2RlYWRkN2EzNjMz
OTQuLjM2ZGRiN2E2NjU3OTliNjc3NjdiMzA0ZmU1ZjM1ODk0N2FkNDc5MzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlOjpzX2luZm8gPSB7ICJFeGVj
dXRhYmxlVG9Db2RlQmxvY2tFZGdlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEV4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGVUb0Nv
ZGVCbG9ja0VkZ2UiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSkgfTsKIAogU3RydWN0dXJlKiBFeGVjdXRh
YmxlVG9Db2RlQmxvY2tFZGdlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCmluZGV4IGRlNmZlYmY4OGEzNGI5MDczZDBiNzc3
M2I3MWRjMjk0MDgzM2UzODEuLjg5NDAyNjBjODk5NTEyMzIyN2FhODM2NmRlNzQwMGMwYWU2OWQ3
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmNwcApAQCAt
MzEsNzAgKzMxLDcwIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kIGtpbmQpCitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0cmluZyhF
eGl0S2luZCBraW5kKQogewogICAgIHN3aXRjaCAoa2luZCkgewogICAgIGNhc2UgRXhpdEtpbmRV
bnNldDoKLSAgICAgICAgcmV0dXJuICJVbnNldCI7CisgICAgICAgIHJldHVybiAiVW5zZXQiX3M7
CiAgICAgY2FzZSBCYWRUeXBlOgotICAgICAgICByZXR1cm4gIkJhZFR5cGUiOworICAgICAgICBy
ZXR1cm4gIkJhZFR5cGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudFZhbHVlOgotICAgICAgICBy
ZXR1cm4gIkJhZENvbnN0YW50VmFsdWUiOworICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50VmFs
dWUiX3M7CiAgICAgY2FzZSBCYWRJZGVudDoKLSAgICAgICAgcmV0dXJuICJCYWRJZGVudCI7Cisg
ICAgICAgIHJldHVybiAiQmFkSWRlbnQiX3M7CiAgICAgY2FzZSBCYWRFeGVjdXRhYmxlOgotICAg
ICAgICByZXR1cm4gIkJhZEV4ZWN1dGFibGUiOworICAgICAgICByZXR1cm4gIkJhZEV4ZWN1dGFi
bGUiX3M7CiAgICAgY2FzZSBCYWRDYWNoZToKLSAgICAgICAgcmV0dXJuICJCYWRDYWNoZSI7Cisg
ICAgICAgIHJldHVybiAiQmFkQ2FjaGUiX3M7CiAgICAgY2FzZSBCYWRDb25zdGFudENhY2hlOgot
ICAgICAgICByZXR1cm4gIkJhZENvbnN0YW50Q2FjaGUiOworICAgICAgICByZXR1cm4gIkJhZENv
bnN0YW50Q2FjaGUiX3M7CiAgICAgY2FzZSBCYWRJbmRleGluZ1R5cGU6Ci0gICAgICAgIHJldHVy
biAiQmFkSW5kZXhpbmdUeXBlIjsKKyAgICAgICAgcmV0dXJuICJCYWRJbmRleGluZ1R5cGUiX3M7
CiAgICAgY2FzZSBCYWRUeXBlSW5mb0ZsYWdzOgotICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZv
RmxhZ3MiOworICAgICAgICByZXR1cm4gIkJhZFR5cGVJbmZvRmxhZ3MiX3M7CiAgICAgY2FzZSBP
dmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJPdmVyZmxvdyI7CisgICAgICAgIHJldHVybiAiT3Zl
cmZsb3ciX3M7CiAgICAgY2FzZSBOZWdhdGl2ZVplcm86Ci0gICAgICAgIHJldHVybiAiTmVnYXRp
dmVaZXJvIjsKKyAgICAgICAgcmV0dXJuICJOZWdhdGl2ZVplcm8iX3M7CiAgICAgY2FzZSBOZWdh
dGl2ZUluZGV4OgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlSW5kZXgiOworICAgICAgICByZXR1
cm4gIk5lZ2F0aXZlSW5kZXgiX3M7CiAgICAgY2FzZSBJbnQ1Mk92ZXJmbG93OgotICAgICAgICBy
ZXR1cm4gIkludDUyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkludDUyT3ZlcmZsb3ciX3M7
CiAgICAgY2FzZSBTdG9yZVRvSG9sZToKLSAgICAgICAgcmV0dXJuICJTdG9yZVRvSG9sZSI7Cisg
ICAgICAgIHJldHVybiAiU3RvcmVUb0hvbGUiX3M7CiAgICAgY2FzZSBMb2FkRnJvbUhvbGU6Ci0g
ICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIjsKKyAgICAgICAgcmV0dXJuICJMb2FkRnJvbUhv
bGUiX3M7CiAgICAgY2FzZSBPdXRPZkJvdW5kczoKLSAgICAgICAgcmV0dXJuICJPdXRPZkJvdW5k
cyI7CisgICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiX3M7CiAgICAgY2FzZSBJbmFkZXF1YXRl
Q292ZXJhZ2U6Ci0gICAgICAgIHJldHVybiAiSW5hZGVxdWF0ZUNvdmVyYWdlIjsKKyAgICAgICAg
cmV0dXJuICJJbmFkZXF1YXRlQ292ZXJhZ2UiX3M7CiAgICAgY2FzZSBBcmd1bWVudHNFc2NhcGVk
OgotICAgICAgICByZXR1cm4gIkFyZ3VtZW50c0VzY2FwZWQiOworICAgICAgICByZXR1cm4gIkFy
Z3VtZW50c0VzY2FwZWQiX3M7CiAgICAgY2FzZSBFeG90aWNPYmplY3RNb2RlOgotICAgICAgICBy
ZXR1cm4gIkV4b3RpY09iamVjdE1vZGUiOworICAgICAgICByZXR1cm4gIkV4b3RpY09iamVjdE1v
ZGUiX3M7CiAgICAgY2FzZSBWYXJhcmdzT3ZlcmZsb3c6Ci0gICAgICAgIHJldHVybiAiVmFyYXJn
c092ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJWYXJhcmdzT3ZlcmZsb3ciX3M7CiAgICAgY2Fz
ZSBURFpGYWlsdXJlOgotICAgICAgICByZXR1cm4gIlREWkZhaWx1cmUiOworICAgICAgICByZXR1
cm4gIlREWkZhaWx1cmUiX3M7CiAgICAgY2FzZSBIb2lzdGluZ0ZhaWxlZDoKLSAgICAgICAgcmV0
dXJuICJIb2lzdGluZ0ZhaWxlZCI7CisgICAgICAgIHJldHVybiAiSG9pc3RpbmdGYWlsZWQiX3M7
CiAgICAgY2FzZSBVbmNvdW50YWJsZToKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZSI7Cisg
ICAgICAgIHJldHVybiAiVW5jb3VudGFibGUiX3M7CiAgICAgY2FzZSBVbmNvdW50YWJsZUludmFs
aWRhdGlvbjoKLSAgICAgICAgcmV0dXJuICJVbmNvdW50YWJsZUludmFsaWRhdGlvbiI7CisgICAg
ICAgIHJldHVybiAiVW5jb3VudGFibGVJbnZhbGlkYXRpb24iX3M7CiAgICAgY2FzZSBXYXRjaGRv
Z1RpbWVyRmlyZWQ6Ci0gICAgICAgIHJldHVybiAiV2F0Y2hkb2dUaW1lckZpcmVkIjsKKyAgICAg
ICAgcmV0dXJuICJXYXRjaGRvZ1RpbWVyRmlyZWQiX3M7CiAgICAgY2FzZSBEZWJ1Z2dlckV2ZW50
OgotICAgICAgICByZXR1cm4gIkRlYnVnZ2VyRXZlbnQiOworICAgICAgICByZXR1cm4gIkRlYnVn
Z2VyRXZlbnQiX3M7CiAgICAgY2FzZSBFeGNlcHRpb25DaGVjazoKLSAgICAgICAgcmV0dXJuICJF
eGNlcHRpb25DaGVjayI7CisgICAgICAgIHJldHVybiAiRXhjZXB0aW9uQ2hlY2siX3M7CiAgICAg
Y2FzZSBHZW5lcmljVW53aW5kOgotICAgICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiOworICAg
ICAgICByZXR1cm4gIkdlbmVyaWNVbndpbmQiX3M7CiAgICAgY2FzZSBCaWdJbnQzMk92ZXJmbG93
OgotICAgICAgICByZXR1cm4gIkJpZ0ludDMyT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIkJp
Z0ludDMyT3ZlcmZsb3ciX3M7CiAgICAgfQogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgcmV0dXJuICJVbmtub3duIjsKKyAgICByZXR1cm4gIlVua25vd24iX3M7CiB9CiAK
IGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCBraW5kKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAppbmRleCBiOGViMzEwNDgwNWZjYjVlOGYzNjMwYjZk
YTkxNWRjMjBiODRiYjhhLi5kODQwMzYyMGVjMjkyYzgxNzQ0ZWZjNjM3NzM3YTM2ZWNkOGY2NTg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuaApAQCAtNTksNyAr
NTksNyBAQCBlbnVtIEV4aXRLaW5kIDogdWludDhfdCB7CiAgICAgQmlnSW50MzJPdmVyZmxvdywg
Ly8gV2UgZXhpdGVkIGJlY2F1c2Ugb2YgYW4gQmlnSW50MzIgb3ZlcmZsb3cuCiB9OwogCi1jb25z
dCBjaGFyKiBleGl0S2luZFRvU3RyaW5nKEV4aXRLaW5kKTsKK0FTQ0lJTGl0ZXJhbCBleGl0S2lu
ZFRvU3RyaW5nKEV4aXRLaW5kKTsKIGJvb2wgZXhpdEtpbmRNYXlKZXR0aXNvbihFeGl0S2luZCk7
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RlMGRhY2NhYTNmYWQyZDA3MDE5
MDZmMGM0MzMxMDMwMjNlYWMwYi4uODcwOWVjNmFkOTVmYjkzNmRjNzE2OGVjOWQ2Y2RkMWYyZGVh
ZGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9u
Q29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rp
b25Db2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkZ1bmN0aW9u
Q29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rp
b25Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNw
cAppbmRleCA2NTNkZDdhNGQzMzE0ODM2NjhiNTJhMjYxOWUxN2FjMTIyZWE0NWU3Li4xMGEwN2Qw
ZTA3MDcwOGM5YzcxZTk1ZDNmYjljODc3MmRhMmUxY2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBA
IC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIE1vZHVs
ZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAgICAiTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
ayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIk1vZHVsZVByb2dyYW1D
b2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRF
X01FVEhPRF9UQUJMRShNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGE1
MDhiNDY2MGEwNDgxYTg5MTRkYjJhNjA2MDdmNDEwNDU3Mzk3Y2UuLjgwNWIzZjc5N2EwMTZhMGJk
NjlhMTBiYzliMDE1ZjA4NDE2YTc3ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIG5hbWVz
cGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0g
ewotICAgICJQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwKKyAgICAiUHJvZ3JhbUNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1Db2RlQmxvY2spCiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxv
Y2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2Nr
LmNwcAppbmRleCAxNjUzNTU3MTcxNWFlZDEzNTY2YmM3NzUwOWNiY2ViOTZjMTVlNWE2Li4xZDVk
MjEwYzkxMmViNmVlYjAzYmFiYTE4OThhNGM5MTYyMDZjMjc2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKQEAgLTM5LDcg
KzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENv
ZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkQ29kZUJsb2NrKSB9OworY29u
c3QgQ2xhc3NJbmZvIFVubGlua2VkQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZENvZGVC
bG9jayJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShV
bmxpbmtlZENvZGVCbG9jaykgfTsKIAogVW5saW5rZWRDb2RlQmxvY2s6OlVubGlua2VkQ29kZUJs
b2NrKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIENvZGVUeXBlIGNvZGVUeXBlLCBjb25z
dCBFeGVjdXRhYmxlSW5mbyYgaW5mbywgT3B0aW9uU2V0PENvZGVHZW5lcmF0aW9uTW9kZT4gY29k
ZUdlbmVyYXRpb25Nb2RlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNw
cAppbmRleCBlNDcxMmQ4NjhkZWJjZWZlNzQ2MzQ1NjY0NDYyMzgwZjg2MGYxY2E4Li5mNTdjYTM3
ZjIzNzM2MmU4NjNhMzJlNjZhMmI0Yzk3OGExY2ZhNTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmNwcApAQCAt
MzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlu
a2VkRXZhbENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRFdmFsQ29kZUJsb2NrIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtl
ZEV2YWxDb2RlQmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRFdmFsQ29kZUJsb2Nr
OjpzX2luZm8gPSB7ICJVbmxpbmtlZEV2YWxDb2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRXZhbENvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNlbGwp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAKaW5kZXggM2RhZWYwM2ZhNjdhZWI3Y2IxNjcxNDEy
YWNmZGRjMjk0ZGY2MDE4Yi4uY2ZhYzhiYzczYTVmZDE3Zjk5ZWI0MDdiNTY2NGM4MGYzNjEyNzU0
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVu
Y3Rpb25Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNf
aW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBj
ZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggY2JmZWRmNTJjODAyNDAzNTA4
MjE0Y2RkNTc1MGY4OTc0ZTI2NmRlOS4uMTc1ZTVkNTgwM2ViMzhkNGNiZmYzY2Q2NmZiMjQ3ZjAz
NDdiNjA2YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCkBAIC00NCw3ICs0NCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBzdGF0aWNfYXNzZXJ0KHNpemVvZihVbmxpbmtlZEZ1bmN0aW9uRXhl
Y3V0YWJsZSkgPD0gMTI4LCAiVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUgc2hvdWxkIGZpdCBp
biBhIDEyOC1ieXRlIGNlbGwgdG8ga2VlcCBhbGxvY2F0ZWQgYmxvY2tzIGNvdW50IHRvIG9ubHkg
b25lIGFmdGVyIGluaXRpYWxpemluZyBKU0dsb2JhbE9iamVjdC4iKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0
aW9uRXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25FeGVj
dXRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKSB9OwogCiBzdGF0aWMgVW5saW5rZWRGdW5jdGlv
bkNvZGVCbG9jayogZ2VuZXJhdGVVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKAogICAgIFZNJiB2
bSwgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNv
ZGUmIHNvdXJjZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggYzlkNGJj
NDYxMzU1ZWI3Y2IxYWFmZDcyZWY3MjJmYTEwNGU5MzBlMi4uM2NjODFhODM2MzUxNTQyYzBkMWNm
ZDVmODgzMzYwYjEyOGNhZmY5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0geyAiVW5s
aW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9j
aykgfTsKIAogdm9pZCBVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OmRlc3Ryb3koSlND
ZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCAyOWVjOWRiMGQ4ZjljYmU4
ZWRmOWE0OGNiY2QyYTdkZjk2YmMxMThmLi40ZTE5ZjYyMTQ2NmIxYTI4MjRmNmJhOGNiMTczZDc2
N2I5MDU1NzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9j
azo6c19pbmZvID0geyAiVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZFByb2dyYW1Db2Rl
QmxvY2spIH07Citjb25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2lu
Zm8gPSB7ICJVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2Nr
KSB9OwogCiB2b2lkIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6ZGVzdHJveShKU0NlbGwqIGNl
bGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5
dGVjb2RlR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIv
Qnl0ZWNvZGVHZW5lcmF0b3IuY3BwCmluZGV4IDc5M2UwOWYyNjMwNWIzNzhmZDBlYTRiMjk4M2My
NzBlYmY0OGFiNDguLjNhMDM3MGQ1NmU1M2MzMzA0ZWZkOGY0MDgyY2I3NDIzN2U3NWMzZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNvZGVHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNv
ZGVHZW5lcmF0b3IuY3BwCkBAIC00NTAsMTQgKzQ1MCwxNCBAQCBCeXRlY29kZUdlbmVyYXRvcjo6
Qnl0ZWNvZGVHZW5lcmF0b3IoVk0mIHZtLCBGdW5jdGlvbk5vZGUqIGZ1bmN0aW9uTm9kZSwgVW5s
aW5rZQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6TmFrZWQ6CiAg
ICAgICAgIGlmICghaXNDb25zdHJ1Y3RvcigpKSB7Ci0gICAgICAgICAgICBlbWl0VGhyb3dUeXBl
RXJyb3IoIkNhbm5vdCBjYWxsIGEgY29uc3RydWN0b3Igd2l0aG91dCB8bmV3fCIpOworICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVjdG9yIHdpdGhv
dXQgfG5ld3wiX3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgQ29uc3RydWN0b3JLaW5kOjpCYXNlOgogICAgIGNhc2UgQ29uc3RydWN0
b3JLaW5kOjpFeHRlbmRzOgogICAgICAgICBpZiAoIWlzQ29uc3RydWN0b3IoKSkgewotICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGNvbnN0cnVjdG9y
IHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90
IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Il9zKTsKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTI4NzEsNyArMjg3MSw3IEBA
IFJlZ2lzdGVySUQqIEJ5dGVjb2RlR2VuZXJhdG9yOjplbWl0SGFzUHJpdmF0ZUJyYW5kKFJlZ2lz
dGVySUQqIGRzdCwgUmVnaXN0ZXJJRCoKICAgICBpZiAoaXNTdGF0aWMpIHsKICAgICAgICAgUmVm
PExhYmVsPiBpc09iamVjdExhYmVsID0gbmV3TGFiZWwoKTsKICAgICAgICAgZW1pdEp1bXBJZlRy
dWUoZW1pdElzT2JqZWN0KG5ld1RlbXBvcmFyeSgpLCBiYXNlKSwgaXNPYmplY3RMYWJlbC5nZXQo
KSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJp
dmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3Igb2YgYSBub24tT2JqZWN0Iik7CisgICAgICAgIGVtaXRU
aHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNj
ZXNzb3Igb2YgYSBub24tT2JqZWN0Il9zKTsKICAgICAgICAgZW1pdExhYmVsKGlzT2JqZWN0TGFi
ZWwuZ2V0KCkpOwogICAgICAgICBlbWl0RXF1YWxpdHlPcDxPcFN0cmljdGVxPihkc3QsIGJhc2Us
IGJyYW5kKTsKICAgICB9IGVsc2UKQEAgLTI4ODQsNyArMjg4NCw3IEBAIHZvaWQgQnl0ZWNvZGVH
ZW5lcmF0b3I6OmVtaXRDaGVja1ByaXZhdGVCcmFuZChSZWdpc3RlcklEKiBiYXNlLCBSZWdpc3Rl
cklEKiBicmFuCiAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJlbD4gYnJhbmRD
aGVja09rTGFiZWwgPSBuZXdMYWJlbCgpOwogICAgICAgICBlbWl0SnVtcElmVHJ1ZShlbWl0RXF1
YWxpdHlPcDxPcFN0cmljdGVxPihuZXdUZW1wb3JhcnkoKSwgYmFzZSwgYnJhbmQpLCBicmFuZENo
ZWNrT2tMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFj
Y2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3IiKTsKKyAgICAgICAgZW1pdFRo
cm93VHlwZUVycm9yKCJDYW5ub3QgYWNjZXNzIHN0YXRpYyBwcml2YXRlIG1ldGhvZCBvciBhY2Nl
c3NvciJfcyk7CiAgICAgICAgIGVtaXRMYWJlbChicmFuZENoZWNrT2tMYWJlbC5nZXQoKSk7CiAg
ICAgICAgIHJldHVybjsKICAgICAKQEAgLTM2NTYsNyArMzY1Niw3IEBAIFJlZ2lzdGVySUQqIEJ5
dGVjb2RlR2VuZXJhdG9yOjplbWl0UmV0dXJuKFJlZ2lzdGVySUQqIHNyYywgUmV0dXJuRnJvbSBm
cm9tKQogICAgICAgICAgICAgaWYgKGlzRGVyaXZlZCkgewogICAgICAgICAgICAgICAgIFJlZjxM
YWJlbD4gaXNVbmRlZmluZWRMYWJlbCA9IG5ld0xhYmVsKCk7CiAgICAgICAgICAgICAgICAgZW1p
dEp1bXBJZlRydWUoZW1pdElzVW5kZWZpbmVkKG5ld1RlbXBvcmFyeSgpLCBzcmMpLCBpc1VuZGVm
aW5lZExhYmVsLmdldCgpKTsKLSAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNh
bm5vdCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVy
aXZlZCBjbGFzcy4iKTsKKyAgICAgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5v
dCByZXR1cm4gYSBub24tb2JqZWN0IHR5cGUgaW4gdGhlIGNvbnN0cnVjdG9yIG9mIGEgZGVyaXZl
ZCBjbGFzcy4iX3MpOwogICAgICAgICAgICAgICAgIGVtaXRMYWJlbChpc1VuZGVmaW5lZExhYmVs
LmdldCgpKTsKICAgICAgICAgICAgICAgICBlbWl0VERaQ2hlY2soJm1fdGhpc1JlZ2lzdGVyKTsK
ICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29t
cGlsZXIvTm9kZXNDb2RlZ2VuLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGls
ZXIvTm9kZXNDb2RlZ2VuLmNwcAppbmRleCBmNmU0M2VjOGNiYmE4ZjI1NTkwYzZmODA4YTI0NDc1
ZGMyYjZlYWUxLi43YWM3NTg2NjVkOWZjMmFjOTA4NmU5N2VkMWNjNDRlMDY2ZGJlM2Q1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4u
Y3BwCkBAIC04OTYsNyArODk2LDcgQEAgdm9pZCBQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFAKICAgICAgICAg
UmVmPExhYmVsPiB2YWxpZFByb3BlcnR5TmFtZUxhYmVsID0gZ2VuZXJhdG9yLm5ld0xhYmVsKCk7
CiAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcm90b3R5cGVTdHJpbmcgPSBnZW5lcmF0b3Iu
ZW1pdExvYWQobnVsbHB0ciwgSlNWYWx1ZShnZW5lcmF0b3IuYWRkU3RyaW5nQ29uc3RhbnQoZ2Vu
ZXJhdG9yLnByb3BlcnR5TmFtZXMoKS5wcm90b3R5cGUpKSk7CiAgICAgICAgIGdlbmVyYXRvci5l
bWl0SnVtcElmRmFsc2UoZ2VuZXJhdG9yLmVtaXRCaW5hcnlPcDxPcFN0cmljdGVxPihnZW5lcmF0
b3IubmV3VGVtcG9yYXJ5KCksIHByb3RvdHlwZVN0cmluZy5nZXQoKSwgcHJvcGVydHlOYW1lLmdl
dCgpLCBPcGVyYW5kVHlwZXMoUmVzdWx0VHlwZTo6c3RyaW5nVHlwZSgpLCBSZXN1bHRUeXBlOjpz
dHJpbmdUeXBlKCkpKSwgdmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7Ci0gICAgICAgIGdl
bmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxk
IG5hbWVkICdwcm90b3R5cGUnIik7CisgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIkNhbm5vdCBkZWNsYXJlIGEgc3RhdGljIGZpZWxkIG5hbWVkICdwcm90b3R5cGUnIl9zKTsK
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbCh2YWxpZFByb3BlcnR5TmFtZUxhYmVsLmdldCgp
KTsKICAgICB9CiAKQEAgLTEwMTUsNyArMTAxNSw3IEBAIFJlZ2lzdGVySUQqIEJhc2VEb3ROb2Rl
OjplbWl0R2V0UHJvcGVydHlWYWx1ZShCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdp
CiAgICAgICAgICAgICBBU1NFUlQoc2NvcGUpOyAvLyBQcml2YXRlIG5hbWVzIGFyZSBhbHdheXMg
Y2FwdHVyZWQuCiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5kU3lt
Ym9sID0gZ2VuZXJhdG9yLmVtaXRHZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFy
eSgpLCBzY29wZS5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3ltYm9s
LmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwotICAgICAgICAgICAgZ2VuZXJhdG9y
LmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0
ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRy
eWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIl9zKTsKICAgICAgICAg
ICAgIHJldHVybiBkc3Q7CiAgICAgICAgIH0KIApAQCAtMTA3NCw3ICsxMDc0LDcgQEAgUmVnaXN0
ZXJJRCogQmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eShCeXRlY29kZUdlbmVyYXRvciYgZ2Vu
ZXJhdG9yLCBSZWdpc3RlckkKICAgICAgICAgICAgIFJlZlB0cjxSZWdpc3RlcklEPiBwcml2YXRl
QnJhbmRTeW1ib2wgPSBnZW5lcmF0b3IuZW1pdEdldFByaXZhdGVCcmFuZChnZW5lcmF0b3IubmV3
VGVtcG9yYXJ5KCksIHNjb3BlLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZhdGVCcmFuZChiYXNlLCBwcml2YXRlQnJh
bmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKLSAgICAgICAgICAg
IGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZp
bmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlw
ZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7
CiAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgIH0KIApAQCAtMjQ1NCw3ICsyNDU0
LDcgQEAgUmVnaXN0ZXJJRCogUG9zdGZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3Im
IGdlbmVyYXRvciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRD
aGVja1ByaXZhdGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHBy
aXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhw
cmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5k
ZWZpbmVkIHByaXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93
VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJf
cyk7CiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwog
ICAgICAgICB9CiAKQEAgLTI0NzIsNyArMjQ3Miw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2Rl
OjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkK
ICAgICAgICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0
KCkpOwogICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwoZ2VuZXJhdG9yLm5l
d1RlbXBvcmFyeSgpLCBnZXR0ZXJGdW5jdGlvbi5nZXQoKSwgTm9FeHBlY3RlZEZ1bmN0aW9uLCBh
cmdzLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBtX3Bvc2l0aW9uLCBEZWJ1Z2dhYmxlQ2FsbDo6
WWVzKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dU
eXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIik7
CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICByZXR1cm4g
Z2VuZXJhdG9yLnRlbXBEZXN0aW5hdGlvbihkc3QpOwogICAgICAgICB9CiAKQEAgLTI0OTAsNyAr
MjQ5MCw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJh
dG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBn
ZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5l
ZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAg
ICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIG9sZFZhbHVlLmdldCgpKTsKICAgICB9CiAK
QEAgLTI1NTgsNyArMjU1OCw3IEBAIFJlZ2lzdGVySUQqIERlbGV0ZUJyYWNrZXROb2RlOjplbWl0
Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0CiAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IHIxID0gZ2VuZXJhdG9yLmVtaXROb2RlKG1fc3Vic2NyaXB0KTsKICAgICBn
ZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RF
bmQoKSk7CiAgICAgaWYgKG1fYmFzZS0+aXNTdXBlck5vZGUoKSkKLSAgICAgICAgcmV0dXJuIGVt
aXRUaHJvd1JlZmVyZW5jZUVycm9yKGdlbmVyYXRvciwgIkNhbm5vdCBkZWxldGUgYSBzdXBlciBw
cm9wZXJ0eSIsIGRzdCk7CisgICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihn
ZW5lcmF0b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiX3MsIGRzdCk7CiAgICAg
cmV0dXJuIGdlbmVyYXRvci5lbWl0RGVsZXRlQnlWYWwoZmluYWxEZXN0LmdldCgpLCByMC5nZXQo
KSwgcjEuZ2V0KCkpOwogfQogCkBAIC0yNTc0LDcgKzI1NzQsNyBAQCBSZWdpc3RlcklEKiBEZWxl
dGVEb3ROb2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVn
aXN0ZXJJRAogCiAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9uSW5mbyhkaXZvdCgpLCBkaXZv
dFN0YXJ0KCksIGRpdm90RW5kKCkpOwogICAgIGlmIChtX2Jhc2UtPmlzU3VwZXJOb2RlKCkpCi0g
ICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0b3IsICJDYW5ub3Qg
ZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiLCBkc3QpOworICAgICAgICByZXR1cm4gZW1pdFRocm93
UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5
Il9zLCBkc3QpOwogICAgIHJldHVybiBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5SWQoZmluYWxEZXN0
LmdldCgpLCByMC5nZXQoKSwgbV9pZGVudCk7CiB9CiAKQEAgLTI3NDMsNyArMjc0Myw3IEBAIFJl
Z2lzdGVySUQqIFByZWZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRv
ciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRDaGVja1ByaXZh
dGVCcmFuZChiYXNlLmdldCgpLCBwcml2YXRlQnJhbmRTeW1ib2wuZ2V0KCksIHByaXZhdGVUcmFp
dHMuaXNTdGF0aWMoKSk7CiAKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbklu
Zm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKLSAgICAgICAgICAgIGdlbmVy
YXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHBy
aXZhdGUgc2V0dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciJfcyk7CiAgICAg
ICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBwcm9wRHN0LmdldCgpKTsKICAgICAg
ICAgfQogCkBAIC0yNzYwLDcgKzI3NjAsNyBAQCBSZWdpc3RlcklEKiBQcmVmaXhOb2RlOjplbWl0
RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAg
ICAgICAgIGdlbmVyYXRvci5tb3ZlKGFyZ3MudGhpc1JlZ2lzdGVyKCksIGJhc2UuZ2V0KCkpOwog
ICAgICAgICAgICAgdmFsdWUgPSBnZW5lcmF0b3IuZW1pdENhbGwocHJvcERzdC5nZXQoKSwgZ2V0
dGVyRnVuY3Rpb24uZ2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywgbV9wb3NpdGlvbiwg
bV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7CiAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcg
dG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICAgICAgZ2Vu
ZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQg
cHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRz
dCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0KIApAQCAtMjc3OCw3ICsyNzc4LDcgQEAgUmVn
aXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9y
LCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0
LCBwcm9wRHN0LmdldCgpKTsKICAgICAgICAgfSAKIAotICAgICAgICBnZW5lcmF0b3IuZW1pdFRo
cm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRl
ciIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNj
ZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgIHJldHVybiBnZW5l
cmF0b3IubW92ZShkc3QsIHByb3BEc3QuZ2V0KCkpOwogICAgIH0KIApAQCAtMzIwOCw3ICszMjA4
LDcgQEAgUmVnaXN0ZXJJRCogSW5zdGFuY2VPZk5vZGU6OmVtaXRCeXRlY29kZShCeXRlY29kZUdl
bmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlckkKICAgICBnZW5lcmF0b3IuZW1pdEp1bXAoZG9u
ZS5nZXQoKSk7CiAKICAgICBnZW5lcmF0b3IuZW1pdExhYmVsKHR5cGVFcnJvci5nZXQoKSk7Ci0g
ICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiUmlnaHQgaGFuZCBzaWRlIG9mIGluc3Rh
bmNlb2YgaXMgbm90IGFuIG9iamVjdCIpOworICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9mIGlzIG5vdCBhbiBvYmplY3QiX3MpOwog
CiAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbChjdXN0b20uZ2V0KCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAppbmRleCBh
MzFmYzFmMTVkNGI4Mzg5NDhmNDJiNGNmMWMwOWM0N2QzOTk1MDdhLi5lMDJmYjgxN2QzZmZiNjEw
NjA4MGNhOTA3ZjExMmZjNjlkNDQ2MGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKQEAgLTE0NSw3ICsxNDUsNyBAQCBT
dHJpbmcgRGVidWdnZXJDYWxsRnJhbWU6OmZ1bmN0aW9uTmFtZSgpIGNvbnN0CiAgICAgaWYgKGlz
VGFpbERlbGV0ZWQoKSkgewogICAgICAgICBpZiAoSlNGdW5jdGlvbiogZnVuYyA9IGpzRHluYW1p
Y0Nhc3Q8SlNGdW5jdGlvbio+KHZtLCBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jYWxsZWUpKQogICAg
ICAgICAgICAgcmV0dXJuIGZ1bmMtPmNhbGN1bGF0ZWREaXNwbGF5TmFtZSh2bSk7Ci0gICAgICAg
IHJldHVybiBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2stPmluZmVycmVkTmFtZSgpLmRh
dGEoKTsKKyAgICAgICAgcmV0dXJuIFN0cmluZyB7IG1fc2hhZG93Q2hpY2tlbkZyYW1lLmNvZGVC
bG9jay0+aW5mZXJyZWROYW1lKCkuZGF0YSgpIH07CiAgICAgfQogCiAgICAgcmV0dXJuIG1fdmFs
aWRNYWNoaW5lRnJhbWUtPmZyaWVuZGx5RnVuY3Rpb25OYW1lKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAKaW5kZXggMDRiOTRmNWU1Y2Fj
Y2M5ZmQ1MzE0ZWE4MGI5MmQ4NDNhYjMxZmFiMi4uZTc2YTQxZjNhYzY4N2M4ZjVlZDRkZWFhZWU5
ODFhZDkyM2I5NWE5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2Vy
L0RlYnVnZ2VyU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlclNjb3BlLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERlYnVnZ2VyU2NvcGUpOwogCi1j
b25zdCBDbGFzc0luZm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVidWdnZXJTY29wZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGVi
dWdnZXJTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7
ICJEZWJ1Z2dlclNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07CiAKIERlYnVnZ2VyU2NvcGUqIERlYnVn
Z2VyU2NvcGU6OmNyZWF0ZShWTSYgdm0sIEpTU2NvcGUqIHNjb3BlKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAppbmRleCBhOGNk
ZTg4MTUxNzU3Y2Q3ZGRhNDkwZDQ0NDU4Mjc4ZWEzYWY4ZTE5Li5mMGE4MTkzMjQ5ZjA2M2M2NTAz
Y2I3N2U3MmJlMmM3ODcxNzZiMzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwU25hcHNob3RCdWlsZGVyLmNwcApAQCAtNTc1LDcgKzU3NSw3IEBAIFN0cmluZyBI
ZWFwU25hcHNob3RCdWlsZGVyOjpqc29uKEZ1bmN0aW9uPGJvb2wgKGNvbnN0IEhlYXBTbmFwc2hv
dE5vZGUmKT4gYWxsb3dOCiAgICAgICAgICAgICBqc29uLmFwcGVuZChzbmFwc2hvdE5vZGUudmFs
dWUoKS5pZGVudGlmaWVyKTsKIAogICAgICAgICAgICAgLy8gTWF5YmUgd2Ugc2hvdWxkIGp1c3Qg
YWx3YXlzIGVuY29kZSB0aGUgcm9vdCBuYW1lcy4KLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHJv
b3ROYW1lID0gcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1ZS5tYXJrUmVhc29uKTsK
KyAgICAgICAgICAgIGF1dG8gcm9vdE5hbWUgPSByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKGl0
LnZhbHVlLm1hcmtSZWFzb24pOwogICAgICAgICAgICAgYXV0byByZXN1bHQgPSBsYWJlbEluZGV4
ZXMuYWRkKHJvb3ROYW1lLCBuZXh0TGFiZWxJbmRleCk7CiAgICAgICAgICAgICBpZiAocmVzdWx0
LmlzTmV3RW50cnkpCiAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgrKzsKQEAgLTU4Myw3
ICs1ODMsNyBAQCBTdHJpbmcgSGVhcFNuYXBzaG90QnVpbGRlcjo6anNvbihGdW5jdGlvbjxib29s
IChjb25zdCBIZWFwU25hcHNob3ROb2RlJik+IGFsbG93TgogCiAgICAgICAgICAgICB1bnNpZ25l
ZCByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IDA7CiAgICAgICAgICAgICBpZiAoaXQudmFsdWUu
cmVhY2hhYmlsaXR5RnJvbU9wYXF1ZVJvb3RSZWFzb25zKSB7Ci0gICAgICAgICAgICAgICAgYXV0
byByZXN1bHQgPSBsYWJlbEluZGV4ZXMuYWRkKGl0LnZhbHVlLnJlYWNoYWJpbGl0eUZyb21PcGFx
dWVSb290UmVhc29ucywgbmV4dExhYmVsSW5kZXgpOworICAgICAgICAgICAgICAgIGF1dG8gcmVz
dWx0ID0gbGFiZWxJbmRleGVzLmFkZChTdHJpbmcgeyBpdC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9t
T3BhcXVlUm9vdFJlYXNvbnMgfSwgbmV4dExhYmVsSW5kZXgpOwogICAgICAgICAgICAgICAgIGlm
IChyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgICAgICAgICAgbmV4dExhYmVsSW5kZXgr
KzsKICAgICAgICAgICAgICAgICByZWFjaGFiaWxpdHlSZWFzb25JbmRleCA9IHJlc3VsdC5pdGVy
YXRvci0+dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290
TWFya1JlYXNvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNv
bi5jcHAKaW5kZXggOTQzOTM5Y2NlNzlhMTdiZGJkZmUxYmFhMTY3MWRkNzIzZjJjY2Q5YS4uNjUy
MjRiOWIzZWI3MjIxZTE1Mzk3OTVjODc4MWY2YTQ0ODU0NDc3MCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmNwcApAQCAtMzAsMTEgKzMwLDExIEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KFJvb3RNYXJrUmVhc29uIHJlYXNvbikKK0FTQ0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2Ny
aXB0aW9uKFJvb3RNYXJrUmVhc29uIHJlYXNvbikKIHsKICNkZWZpbmUgQ0FTRV9ST09UX01BUktf
UkVBU09OKHJlYXNvbikgXAogICAgIGNhc2UgSlNDOjpSb290TWFya1JlYXNvbjo6cmVhc29uOiBc
Ci0gICAgICAgIHJldHVybiAjcmVhc29uOyBcCisgICAgICAgIHJldHVybiAjcmVhc29uIiJfczsg
XAogCiAgICAgc3dpdGNoIChyZWFzb24pIHsKICAgICAgICAgRk9SX0VBQ0hfUk9PVF9NQVJLX1JF
QVNPTihDQVNFX1JPT1RfTUFSS19SRUFTT04pCkBAIC00Miw3ICs0Miw3IEBAIGNvbnN0IGNoYXIq
IHJvb3RNYXJrUmVhc29uRGVzY3JpcHRpb24oUm9vdE1hcmtSZWFzb24gcmVhc29uKQogI3VuZGVm
IENBU0VfUk9PVF9NQVJLX1JFQVNPTgogCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuICJOb25lIjsKKyAgICByZXR1cm4gIk5vbmUiX3M7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFz
b24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgKaW5kZXgg
ZjIwOTYzMzZhMmQyYTM2MTUzMzAxMmI0MWUyODJmNTA1MDNlNTVmNC4uYTg2ZjljNGI5OTYzMjdm
NjIyNGJhODI1NTIyYWU4YjZkNzg1MWQ1MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9Sb290TWFya1JlYXNvbi5oCkBAIC01NSw3ICs1NSw3IEBAIGVudW0gY2xhc3MgUm9vdE1hcmtS
ZWFzb24gOiB1aW50OF90IHsKIAogI3VuZGVmIERFQ0xBUkVfUk9PVF9NQVJLX1JFQVNPTgogCi1j
b25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKK0FT
Q0lJTGl0ZXJhbCByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uKTsKIAog
fSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVy
LmNwcAppbmRleCA2YWUxNzkzOWY0ODg1OGQ2MDQ2Yzk1OTI5MmQzNmNmYmM2MzQ3MWYxLi4yNTFk
YmUzYTVkZTkwNmE1NmUwZDc4MzAzYzJiZTRiNDQ1MzExMWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0dsb2JhbE9iamVj
dEluc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xNjMsNyArMTYzLDcgQEAgdm9pZCBKU0dsb2Jh
bE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXI6OmFwcGVuZEFQSUJhY2t0cmFjZShTY3JpcHRDYWxs
U3RhY2smIGNhbGwKICAgICBmb3IgKGludCBpID0gMDsgaSA8IHNpemU7ICsraSkgewogICAgICAg
ICBhdXRvIGRlbWFuZ2xlZCA9IFN0YWNrVHJhY2U6OmRlbWFuZ2xlKHN0YWNrW2ldKTsKICAgICAg
ICAgaWYgKGRlbWFuZ2xlZCkKLSAgICAgICAgICAgIGNhbGxTdGFjay5hcHBlbmQoU2NyaXB0Q2Fs
bEZyYW1lKGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgpID8gZGVtYW5nbGVkLT5kZW1hbmdsZWRO
YW1lKCkgOiBkZW1hbmdsZWQtPm1hbmdsZWROYW1lKCksICJbbmF0aXZlIGNvZGVdIl9zLCBub1Nv
dXJjZUlELCAwLCAwKSk7CisgICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxG
cmFtZShTdHJpbmcgeyBkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA/IGRlbWFuZ2xlZC0+ZGVt
YW5nbGVkTmFtZSgpIDogZGVtYW5nbGVkLT5tYW5nbGVkTmFtZSgpIH0sICJbbmF0aXZlIGNvZGVd
Il9zLCBub1NvdXJjZUlELCAwLCAwKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGNhbGxT
dGFjay5hcHBlbmQoU2NyaXB0Q2FsbEZyYW1lKCI/Il9zLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9T
b3VyY2VJRCwgMCwgMCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKaW5kZXggNzhlNzczNGUyNjM5
YjdlOTg4YmQ5NDU5YjA3NmJmN2JjZTRjMDcxZS4uMzBhMmIwMWVhODBiM2VlNDlhZWMzOWQ3MzFk
NmM0NDkwMzcwOWUwOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rv
ci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTcyLDcgKzcyLDcgQEAgbmFtZXNw
YWNlIEluc3BlY3RvciB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5m
byBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0KSB9
OwogCiBKU0luamVjdGVkU2NyaXB0SG9zdDo6SlNJbmplY3RlZFNjcmlwdEhvc3QoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPEluamVjdGVkU2NyaXB0SG9zdD4mJiBpbXBsKQogICAg
IDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMzM2LDEzICszMzYsMTMgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgdW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICBKU0FycmF5
KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyKTsKICAg
ICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJy
YXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJu
YWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJ0YXJnZXRGdW5jdGlvbiIsIGJvdW5kRnVuY3Rpb24t
PnRhcmdldEZ1bmN0aW9uKCkpKTsKKyAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2Jh
bE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3Qs
ICJ0YXJnZXRGdW5jdGlvbiJfcywgYm91bmRGdW5jdGlvbi0+dGFyZ2V0RnVuY3Rpb24oKSkpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyIsIGJvdW5kRnVuY3Rpb24tPmJv
dW5kVGhpcygpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3Qs
IGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRU
aGlzIl9zLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRoaXMoKSkpOwogICAgICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICBpZiAoYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzKCkpIHsKICAgICAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYm91bmRBcmdzIiwgYm91bmRGdW5jdGlvbi0+
Ym91bmRBcmdzQ29weShnbG9iYWxPYmplY3QpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImJvdW5kQXJncyJfcywgYm91bmRGdW5jdGlvbi0+Ym91bmRBcmdzQ29w
eShnbG9iYWxPYmplY3QpKSk7CiAgICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMzg4LDEwICszODgsMTAgQEAgSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAgICAg
IEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxw
dHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgp
KTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAiYXJyYXkiLCBpdGVy
YXRlZFZhbHVlKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2Jq
ZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImFy
cmF5Il9zLCBpdGVyYXRlZFZhbHVlKSk7CiAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAg
ICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3Ry
dWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkp
KTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4
KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9T
dHJpbmcoa2luZCkpKTsKICAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICAgfQogCkBA
IC00MDIsMTAgKzQwMiwxMCBAQCBKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRl
cm5hbFByb3BlcnRpZXMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgICAgICAgICAg
dW5zaWduZWQgaW5kZXggPSAwOwogICAgICAgICAgICAgSlNBcnJheSogYXJyYXkgPSBjb25zdHJ1
Y3RFbXB0eUFycmF5KGdsb2JhbE9iamVjdCwgbnVsbHB0ciwgMik7CiAgICAgICAgICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwotICAgICAgICAgICAgYXJyYXktPnB1
dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9w
ZXJ0eShnbG9iYWxPYmplY3QsICJtYXAiLCBpdGVyYXRlZFZhbHVlKSk7CisgICAgICAgICAgICBh
cnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRl
cm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgIm1hcCJfcywgaXRlcmF0ZWRWYWx1ZSkpOwogICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
ICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChn
bG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2Jq
ZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5nKGtpbmQpKSk7CiAgICAgICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDE2LDEwICs0MTYsMTAgQEAgSlNWYWx1ZSBK
U0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAg
ICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51
bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1
ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGlu
ZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0IiwgaXRl
cmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJz
ZXQiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1
Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiLCB0b1N0cmluZyhraW5kKSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIl9zLCB0b1N0
cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAg
fQpAQCAtNDI5LDcgKzQyOSw3IEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldElu
dGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgIEpT
QXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxwdHIs
IDEpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAg
ICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9i
YWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0
LCAic3RyaW5nIiwgc3RyaW5nSXRlcmF0b3ItPml0ZXJhdGVkU3RyaW5nKCkpKTsKKyAgICAgICAg
YXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50
ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJzdHJpbmciX3MsIHN0cmluZ0l0ZXJhdG9yLT5p
dGVyYXRlZFN0cmluZygpKSk7CiAgICAgICAgIHJldHVybiBhcnJheTsKICAgICB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhv
c3RQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVj
dGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKaW5kZXggYWRiYjVlNTdjMzQ1MWMzZDNhODhmODE4
ZjdlYzA1N2NlYjU5ODgyNC4uOThiNTJlYzJlODQ4NWNmN2FiMWQwYTIxYTRkNmE3NjZkNWVlOWU5
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVk
U2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKQEAgLTUyLDcgKzUyLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGVGdW5jdGlvbkV2YWx1YXRlV2kKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmlidXRlRXZhbHVhdGUpOwogc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVB
dHRyaWJ1dGVTYXZlZFJlc3VsdEFsaWFzKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRT
Y3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0
ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3Rl
ZFNjcmlwdEhvc3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZh
U2NyaXB0Q2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lLmNwcAppbmRleCAyODk4Y2RmZWI5OWVlYWFjOTNlMjZlYTA2OTJj
ZDcxMjFlYzc4NjEyLi45NTU2OWUwYmNiZDQyNTk1M2Y1YjYyY2RjZDE5MmFhMmRkNzEwYzliIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENh
bGxGcmFtZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFT
Y3JpcHRDYWxsRnJhbWUuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3Ig
ewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0
Q2FsbEZyYW1lOjpzX2luZm8gPSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRDYWxs
RnJhbWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNKYXZhU2NyaXB0Q2FsbEZyYW1lOjpzX2luZm8g
PSB7ICJKYXZhU2NyaXB0Q2FsbEZyYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZSkgfTsKIAogSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lOjpKU0phdmFTY3JpcHRDYWxsRnJhbWUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmPEphdmFTY3JpcHRDYWxsRnJhbWU+JiYgaW1wbCkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcAppbmRl
eCBhYjVhOGFjZDAzMmZiODIxNTkzNGM3ZTQwYTAzMzJmODZhMGI4YjEyLi4xNzA4OGQ4NTkzNmQ1
NjdmOWUwNzFjMjY3ZTU3Y2M2YTY0Y2IxZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGpzSmF2YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVRoaXNPYmplY3QpOwogc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lQXR0cmlidXRlVHlw
ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0phdmFTY3JpcHRDYWxsRnJh
bWVJc1RhaWxEZWxldGVkKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2Fs
bEZyYW1lUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRD
YWxsRnJhbWVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JBdWRpdEFnZW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCmluZGV4IDMwYWNhZjMzNDU4MDUzNzRkODFk
YmIwYjFjNWQ0OWZmN2FmMGE2ZTEuLmMyODc3MzZkNzFlN2ViOWU4ODU1OGZmY2QwYjcwNDUyNWJm
ZmNmOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckF1ZGl0QWdlbnQuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFBy
b3RvY29sOjpFcnJvclN0cmluZ09yPHN0ZDo6dHVwbGU8UmVmPFByb3RvY29sOjpSdW50aW1lOjpS
ZW1vdGVPYmplY3Q+LCBzdGQ6Om9wCiAgICAgaWYgKGluamVjdGVkU2NyaXB0Lmhhc05vVmFsdWUo
KSkKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKGVycm9yU3RyaW5nKTsKIAotICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIiksICIpYCkoV2ViSW5zcGVjdG9yQXVkaXQpOyB9KSIpOworICAgIGF1
dG8gZnVuY3Rpb25TdHJpbmcgPSBtYWtlU3RyaW5nKCIoZnVuY3Rpb24oV2ViSW5zcGVjdG9yQXVk
aXQpIHsgXCJ1c2Ugc3RyaWN0XCI7IHJldHVybiBldmFsKGAoIiwgU3RyaW5nIHsgdGVzdCB9LnJl
cGxhY2UoJ2AnLCAiXFxgIl9zKSwgIilgKShXZWJJbnNwZWN0b3JBdWRpdCk7IH0pIik7CiAKICAg
ICBJbmplY3RlZFNjcmlwdDo6RXhlY3V0ZU9wdGlvbnMgb3B0aW9uczsKICAgICBvcHRpb25zLm9i
amVjdEdyb3VwID0gImF1ZGl0Il9zOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcApp
bmRleCBlZjBmZjYyYTc4YTNhMWY2MGQ1NTMyOWE1NTM3OGI0ZjU1MTJmZDdkLi4wYTY3YzhlYWY3
OGMzMmZjOTJhY2RkNjFiN2MzOWM2NmM1OGZkMjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50LmNwcApAQCAtNDksNyArNDksNyBAQAogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAot
Y29uc3QgY2hhciogY29uc3QgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0
R3JvdXAgPSAiYmFja3RyYWNlIjsKK2NvbnN0IEFTQ0lJTGl0ZXJhbCBJbnNwZWN0b3JEZWJ1Z2dl
ckFnZW50OjpiYWNrdHJhY2VPYmplY3RHcm91cCA9ICJiYWNrdHJhY2UiX3M7CiAKIC8vIE9iamVj
dHMgY3JlYXRlZCBhbmQgcmV0YWluZWQgYnkgZXZhbHVhdGluZyBicmVha3BvaW50IGFjdGlvbnMg
YXJlIHB1dCBpbnRvIG9iamVjdCBncm91cHMKIC8vIGFjY29yZGluZyB0byB0aGUgYnJlYWtwb2lu
dCBhY3Rpb24gaWRlbnRpZmllciBhc3NpZ25lZCBieSB0aGUgZnJvbnRlbmQuIEEgYnJlYWtwb2lu
dCBtYXkKQEAgLTc0MSw3ICs3NDEsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxTdHJpbmc+
IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmdldFNjcmlwdFNvdXJjZShjb25zdCBQcgogewogICAg
IGF1dG8gaXQgPSBtX3NjcmlwdHMuZmluZChwYXJzZUludGVnZXJBbGxvd2luZ1RyYWlsaW5nSnVu
azxKU0M6OlNvdXJjZUlEPihzY3JpcHRJZCkudmFsdWVfb3IoMCkpOwogICAgIGlmIChpdCA9PSBt
X3NjcmlwdHMuZW5kKCkpCi0gICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZCgiTWlzc2luZyBz
Y3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3Rl
ZCgiTWlzc2luZyBzY3JpcHQgZm9yIGdpdmVuIHNjcmlwdElkIl9zKTsKIAogICAgIHJldHVybiBp
dC0+dmFsdWUuc291cmNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2lu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCmluZGV4IGUw
Y2U3NjVhNDJjYWE1ZmQwNjM3MDE1ZGVhZGQ1MjU0YWEzOTdhMTguLjRmYWUxYTk5ZGJhMmNmZWMy
OWM5Mzc2ODdjNDRjZTVlMTNmOTAwN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgK
QEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFJlZlB0cjxKU0M6OkJyZWFr
cG9pbnQ+IGRlYnVnZ2VyQnJlYWtwb2ludEZyb21QYXlsb2FkKFByb3RvY29sOjpFcnJvclN0cmlu
ZyYsIFJlZlB0cjxKU09OOjpPYmplY3Q+JiYgb3B0aW9ucyk7CiAKLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgYmFja3RyYWNlT2JqZWN0R3JvdXA7CisgICAgc3RhdGljIGNvbnN0IEFTQ0lJ
TGl0ZXJhbCBiYWNrdHJhY2VPYmplY3RHcm91cDsKIAogICAgIC8vIEluc3BlY3RvckFnZW50QmFz
ZQogICAgIHZvaWQgZGlkQ3JlYXRlRnJvbnRlbmRBbmRCYWNrZW5kKEZyb250ZW5kUm91dGVyKiwg
QmFja2VuZERpc3BhdGNoZXIqKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwCmluZGV4
IDI0YjNlZmQ3YzJhMTg5MTllYjUyNWExNTY3MjM0ZTMwNjc1ODY2ZTAuLmIwNzE4YjljMDU2MmI1
MTc0NDJhODA3Y2ZmZWNhYjFmNDg2YWZkNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySGVhcEFnZW50LmNwcApA
QCAtMjU0LDcgKzI1NCw3IEBAIFByb3RvY29sOjpFcnJvclN0cmluZ09yPFJlZjxQcm90b2NvbDo6
UnVudGltZTo6UmVtb3RlT2JqZWN0Pj4gSW5zcGVjdG9ySGVhcEFnZW50CiAKICAgICBhdXRvIG9i
amVjdCA9IGluamVjdGVkU2NyaXB0LndyYXBPYmplY3QoY2VsbCwgb2JqZWN0R3JvdXAsIHRydWUp
OwogICAgIGlmICghb2JqZWN0KQotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIkludGVy
bmFsIGVycm9yOiB1bmFibGUgdG8gY2FzdCBPYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIG1ha2VV
bmV4cGVjdGVkKCJJbnRlcm5hbCBlcnJvcjogdW5hYmxlIHRvIGNhc3QgT2JqZWN0Il9zKTsKIAog
ICAgIHJldHVybiBvYmplY3QucmVsZWFzZU5vbk51bGwoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCmluZGV4IGExNzMxNWNjNjg0
OTk2YTA1YzVhNWJhNjE1NjQ0MWU4YTliZWQ4NWUuLmM4NjdlZWQyNWE5ZjU4MzdiOTdmYzM3ZWEx
MTRkZGRjMmNiNjRiZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhl
Y3V0YWJsZUFsbG9jYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9FeGVj
dXRhYmxlQWxsb2NhdG9yLmNwcApAQCAtMTE1Miw4ICsxMTUyLDggQEAgdm9pZCBkdW1wSklUTWVt
b3J5KGNvbnN0IHZvaWQqIGRzdCwgY29uc3Qgdm9pZCogc3JjLCBzaXplX3Qgc2l6ZSkKICAgICAg
ICAgc3RhdGljIHZvaWQgZmx1c2goKSBXVEZfUkVRVUlSRVNfTE9DSyhkdW1wSklUTWVtb3J5TG9j
aykKICAgICAgICAgewogICAgICAgICAgICAgaWYgKGZkID09IC0xKSB7Ci0gICAgICAgICAgICAg
ICAgU3RyaW5nIHBhdGggPSBPcHRpb25zOjpkdW1wSklUTWVtb3J5UGF0aCgpOwotICAgICAgICAg
ICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoIiVwaWQiLCBTdHJpbmc6Om51bWJlcihnZXRDdXJy
ZW50UHJvY2Vzc0lEKCkpKTsKKyAgICAgICAgICAgICAgICBTdHJpbmcgcGF0aCB7IE9wdGlvbnM6
OmR1bXBKSVRNZW1vcnlQYXRoKCkgfTsKKyAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBs
YWNlKCIlcGlkIl9zLCBTdHJpbmc6Om51bWJlcihnZXRDdXJyZW50UHJvY2Vzc0lEKCkpKTsKICAg
ICAgICAgICAgICAgICBmZCA9IG9wZW4oRmlsZVN5c3RlbTo6ZmlsZVN5c3RlbVJlcHJlc2VudGF0
aW9uKHBhdGgpLmRhdGEoKSwgT19DUkVBVCB8IE9fVFJVTkMgfCBPX0FQUEVORCB8IE9fV1JPTkxZ
IHwgT19FWExPQ0sgfCBPX05PTkJMT0NLLCAwNjY2KTsKICAgICAgICAgICAgICAgICBSRUxFQVNF
X0FTU0VSVChmZCAhPSAtMSk7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRDb2RlLmNwcAppbmRleCA2YmY1YTFjMzYyODVlZDdiMjAwMTY3YzQ4ODcyM2QwNGQ2NTBiZTBj
Li45ODM2ZWE1ZjM5ZjcwYjBhNDdhNzZlNTIzNDY2YTkzNDg2ZmMxY2Y4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUQ29kZS5jcHAKQEAgLTQ0LDI0ICs0NCwyNCBAQCBKSVRDb2RlOjp+SklU
Q29kZSgpCiB7CiB9CiAKLWNvbnN0IGNoYXIqIEpJVENvZGU6OnR5cGVOYW1lKEpJVFR5cGUgaml0
VHlwZSkKK0FTQ0lJTGl0ZXJhbCBKSVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUpCiB7
CiAgICAgc3dpdGNoIChqaXRUeXBlKSB7CiAgICAgY2FzZSBKSVRUeXBlOjpOb25lOgotICAgICAg
ICByZXR1cm4gIk5vbmUiOworICAgICAgICByZXR1cm4gIk5vbmUiX3M7CiAgICAgY2FzZSBKSVRU
eXBlOjpIb3N0Q2FsbFRodW5rOgotICAgICAgICByZXR1cm4gIkhvc3QiOworICAgICAgICByZXR1
cm4gIkhvc3QiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpJbnRlcnByZXRlclRodW5rOgotICAgICAg
ICByZXR1cm4gIkxMSW50IjsKKyAgICAgICAgcmV0dXJuICJMTEludCJfczsKICAgICBjYXNlIEpJ
VFR5cGU6OkJhc2VsaW5lSklUOgotICAgICAgICByZXR1cm4gIkJhc2VsaW5lIjsKKyAgICAgICAg
cmV0dXJuICJCYXNlbGluZSJfczsKICAgICBjYXNlIEpJVFR5cGU6OkRGR0pJVDoKLSAgICAgICAg
cmV0dXJuICJERkciOworICAgICAgICByZXR1cm4gIkRGRyJfczsKICAgICBjYXNlIEpJVFR5cGU6
OkZUTEpJVDoKLSAgICAgICAgcmV0dXJuICJGVEwiOworICAgICAgICByZXR1cm4gIkZUTCJfczsK
ICAgICBkZWZhdWx0OgogICAgICAgICBDUkFTSCgpOwotICAgICAgICByZXR1cm4gIiI7CisgICAg
ICAgIHJldHVybiAiIl9zOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUu
aAppbmRleCA3ZTM4MzM4MmIzZjUxY2U3NDE4NTMzOGQ2MGRkNjAwNWMzYTViY2M3Li5mYjEwNmRl
ZmQzMDlmMTdiMWJkNGQ2ZGNhMDE5MDI3ZjU5MGIzYWJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVENvZGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0pJVENvZGUuaApAQCAtNzAsNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4gdXNpbmcgQ29kZVB0ciA9IE1hY3JvQXNzZW1ibGVyQ29kZVB0cjx0YWc+OwogICAgIHRl
bXBsYXRlPFB0clRhZyB0YWc+IHVzaW5nIENvZGVSZWYgPSBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8
dGFnPjsKIAotICAgIHN0YXRpYyBjb25zdCBjaGFyKiB0eXBlTmFtZShKSVRUeXBlKTsKKyAgICBz
dGF0aWMgQVNDSUlMaXRlcmFsIHR5cGVOYW1lKEpJVFR5cGUpOwogCiAgICAgc3RhdGljIEpJVFR5
cGUgYm90dG9tVGllckpJVCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
T3BlcmF0aW9ucy5jcHAKaW5kZXggZWZjOWEwZThiYjAyZTIyNTgxMTg0NjIzZDEwNjBhODkzNWNk
ZjJhMS4uYWI2NmVhNDI5ZDQ4NTBlYjdjMWJiZGU2NmZjOTFkMmJkZDNjZWUzNiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3BwCkBAIC0xMjcsNyArMTI3LDcg
QEAgc3RhdGljIEpTVmFsdWUgZ2V0V3JhcHBlZFZhbHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTR2xvYmFsT2JqZWN0KiB0YXIKICAgICBpZiAodmFsdWUuaXNDYWxsYWJsZSh2bSkp
CiAgICAgICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNSZW1vdGVGdW5jdGlvbjo6dHJ5
Q3JlYXRlKHRhcmdldEdsb2JhbE9iamVjdCwgdm0sIHN0YXRpY19jYXN0PEpTT2JqZWN0Kj4odmFs
dWUuYXNDZWxsKCkpKSk7CiAKLSAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAidmFsdWUgcGFzc2luZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJlIGNhbGxhYmxlIG9yIHByaW1p
dGl2ZSIpOworICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBw
YXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsK
ICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCBl
N2QzY2U5NDIxZTVkYzEyZTA5YmFmMDJiZTU1MDQyYWZhZDYwN2Q4Li5iZDJlYjgxMmM2YzM3ZWQ1
MmVkYzYzYjkyNjdmY2JjYTk4MTU5NGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtNzQxLDcg
Kzc0MSw3IEBAIHN0YXRpYyBib29sIHNoZWxsU3VwcG9ydHNSaWNoU291cmNlSW5mbyhjb25zdCBK
U0dsb2JhbE9iamVjdCopCiAgICAgcmV0dXJuIHN1cHBvcnRzUmljaFNvdXJjZUluZm87CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCIsICZKU0ds
b2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OwogY29uc3QgR2xvYmFsT2JqZWN0
TWV0aG9kVGFibGUgR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewog
ICAgICZzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8sCiAgICAgJnNob3VsZEludGVycnVwdFNj
cmlwdCwKQEAgLTEwOTMsMTAgKzEwOTMsMTAgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgY2FjaGVQ
YXRoKCkgY29uc3QKICAgICB7CiAgICAgICAgIGlmICghY2FjaGVFbmFibGVkKCkpCi0gICAgICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgY2hhcio+KG51bGxwdHIpOworICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKICAgICAgICAgY29uc3QgY2hhciogY2FjaGVQYXRoID0gT3B0aW9uczo6
ZGlza0NhY2hlUGF0aCgpOwogICAgICAgICBTdHJpbmcgZmlsZW5hbWUgPSBGaWxlU3lzdGVtOjpl
bmNvZGVGb3JGaWxlTmFtZShGaWxlU3lzdGVtOjpsYXN0Q29tcG9uZW50T2ZQYXRoSWdub3JpbmdU
cmFpbGluZ1NsYXNoKHNvdXJjZU9yaWdpbigpLnVybCgpLmZpbGVTeXN0ZW1QYXRoKCkpKTsKLSAg
ICAgICAgcmV0dXJuIEZpbGVTeXN0ZW06OnBhdGhCeUFwcGVuZGluZ0NvbXBvbmVudChjYWNoZVBh
dGgsIG1ha2VTdHJpbmcoc291cmNlKCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUs
ICIuYnl0ZWNvZGUtY2FjaGUiKSk7CisgICAgICAgIHJldHVybiBGaWxlU3lzdGVtOjpwYXRoQnlB
cHBlbmRpbmdDb21wb25lbnQoU3RyaW5nIHsgY2FjaGVQYXRoIH0sIG1ha2VTdHJpbmcoc291cmNl
KCkudG9TdHJpbmcoKS5oYXNoKCksICctJywgZmlsZW5hbWUsICIuYnl0ZWNvZGUtY2FjaGUiKSk7
CiAgICAgfQogCiAgICAgdm9pZCBsb2FkQnl0ZWNvZGUoKSBjb25zdApAQCAtMTI1OSwxMCArMTI1
OSwxMCBAQCBzdGF0aWMgQ1N0cmluZyB0b0NTdHJpbmcoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIFQmIHN0cgogICAgICAgICB0aHJvd091dE9mTWVtb3J5
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVVRG
OENvbnZlcnNpb25FcnJvcjo6SWxsZWdhbFNvdXJjZToKLSAgICAgICAgc2NvcGUudGhyb3dFeGNl
cHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxlZ2FsIHNv
dXJjZSBlbmNvdW50ZXJlZCBkdXJpbmcgVVRGOCBjb252ZXJzaW9uIikpOworICAgICAgICBzY29w
ZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwg
IklsbGVnYWwgc291cmNlIGVuY291bnRlcmVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24iX3MpKTsK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBVVEY4Q29udmVyc2lvbkVycm9yOjpTb3VyY2VFeGhh
dXN0ZWQ6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgY3JlYXRl
RXJyb3IoZ2xvYmFsT2JqZWN0LCAiU291cmNlIGV4aGF1c3RlZCBkdXJpbmcgVVRGOCBjb252ZXJz
aW9uIikpOworICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0
ZUVycm9yKGdsb2JhbE9iamVjdCwgIlNvdXJjZSBleGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVy
c2lvbiJfcykpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNF
X0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMTQ3Nyw3ICsxNDc3LDcgQEAgcHJpdmF0ZToKICAg
ICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNDTWVtb3J5Rm9vdHByaW50OjpzX2luZm8gPSB7
ICJNZW1vcnlGb290cHJpbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ01lbW9yeUZvb3RwcmludCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0NNZW1vcnlGb290cHJpbnQ6OnNfaW5mbyA9IHsgIk1lbW9yeUZvb3RwcmludCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NNZW1vcnlG
b290cHJpbnQpIH07CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk1lbW9yeVVz
YWdlU3RhdGlzdGljcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSop
KQogewpAQCAtMTY2MiwxMyArMTY2MiwxMyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVu
Y3Rpb25SZWFkRmlsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcgogICAg
ICAgICBTdHJpbmcgdHlwZSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSkudG9XVEZTdHJpbmcoZ2xv
YmFsT2JqZWN0KTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CiAgICAgICAgIGlmICh0eXBlICE9ICJiaW5hcnkiKQotICAgICAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScg
YXMgc2Vjb25kIGFyZ3VtZW50LiIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiRXhwZWN0ZWQgJ2JpbmFyeScgYXMgc2Vjb25kIGFyZ3VtZW50
LiJfcyk7CiAgICAgICAgIGlzQmluYXJ5ID0gdHJ1ZTsKICAgICB9CiAKICAgICBSZWZQdHI8VWlu
dDhBcnJheT4gY29udGVudCA9IGZpbGxCdWZmZXJXaXRoQ29udGVudHNPZkZpbGUoZmlsZU5hbWUp
OwogICAgIGlmICghY29udGVudCkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iKTsKKyAgICAgICAgcmV0dXJuIHRo
cm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQ291bGQgbm90IG9wZW4gZmlsZS4iX3Mp
OwogCiAgICAgaWYgKCFpc0JpbmFyeSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1N0cmluZyh2bSwgU3RyaW5nOjpmcm9tVVRGOFdpdGhMYXRpbjFGYWxsYmFjayhjb250ZW50LT5k
YXRhKCksIGNvbnRlbnQtPmxlbmd0aCgpKSkpOwpAQCAtMTgxMiw3ICsxODEyLDcgQEAgcHJpdmF0
ZToKICAgICBGSUxFKiBtX2Rlc2NyaXB0b3I7CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNGaWxl
RGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2NyaXB0b3IiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZURlc2NyaXB0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSlNGaWxlRGVzY3JpcHRvcjo6c19pbmZvID0geyAiRmlsZURlc2Ny
aXB0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNGaWxlRGVzY3JpcHRvcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1
bmN0aW9uT3BlbkZpbGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSkpCiB7CkBAIC0xODQ3LDcgKzE4NDcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVO
Q1RJT04oZnVuY3Rpb25SZWFkbGluZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcgogICAgICAgICBsaW5lLmFwcGVuZChjKTsKICAgICB9CiAgICAgbGluZS5hcHBlbmQoJ1ww
Jyk7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhnbG9iYWxPYmplY3QtPnZt
KCksIGxpbmUuZGF0YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyhn
bG9iYWxPYmplY3QtPnZtKCksIFN0cmluZyB7IGxpbmUuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJlY2lzZVRpbWUsIChKU0dsb2JhbE9iamVjdCos
IENhbGxGcmFtZSopKQpAQCAtMTkwMSw3ICsxOTAxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uQ2FsbGVySXNCQlFPck9NR0NvbXBpbGVkLCAoSlNHbG9iYWxPYmplY3QqIGds
b2IKICAgICBDYWxsZXJGdW5jdG9yIHdhc21Ub0pTRnJhbWU7CiAgICAgU3RhY2tWaXNpdG9yOjp2
aXNpdChjYWxsRnJhbWUsIHZtLCB3YXNtVG9KU0ZyYW1lKTsKICAgICBpZiAoIXdhc21Ub0pTRnJh
bWUuY2FsbGVyRnJhbWUoKSB8fCAhd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5pc0FueVdh
c21DYWxsZWUoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdhc20tPmpzIGltcG9ydCBmdW5jdGlvbiIpOworICAgICAg
ICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJjYWxsZXIgaXMgbm90
IGEgd2FzbS0+anMgaW1wb3J0IGZ1bmN0aW9uIl9zKTsKIAogICAgIC8vIFdlIGhhdmUgYSB3cmFw
cGVyIGZyYW1lIHRoYXQgd2UgZ2VuZXJhdGUgZm9yIGltcG9ydHMuIElmIHdlIGV2ZXIgY2FuIGRp
cmVjdCBjYWxsIGZyb20gd2FzbSB3ZSB3b3VsZCBuZWVkIHRvIGNoYW5nZSB0aGlzLgogICAgIEFT
U0VSVCghd2FzbVRvSlNGcmFtZS5jYWxsZXJGcmFtZSgpLT5jYWxsZWUoKS5pc1dhc20oKSk7CkBA
IC0yNTI0LDcgKzI1MjQsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25TZXRU
aW1lb3V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbAogICAgIHZtLmRlZmVy
cmVkV29ya1RpbWVyLT5zY2hlZHVsZVdvcmtTb29uKHRpY2tldCwgW2NhbGxiYWNrXShEZWZlcnJl
ZFdvcmtUaW1lcjo6VGlja2V0KSB7CiAgICAgICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QgPSBjYWxsYmFjay0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVm
ZmVyIGFyZ3M7Ci0gICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmlu
ZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iKTsKKyAgICAgICAgY2FsbChn
bG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4n
dCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgfSk7CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKIH0KQEAgLTI4MTMsOSArMjgxMyw5IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihmdW5jdGlvbldlYkFzc2VtYmx5TWVtb3J5TW9kZSwgKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPCiAKICAgICBpZiAoSlNPYmplY3QqIG9iamVjdCA9IGNhbGxGcmFtZS0+YXJndW1lbnQo
MCkuZ2V0T2JqZWN0KCkpIHsKICAgICAgICAgaWYgKGF1dG8qIG1lbW9yeSA9IGpzRHluYW1pY0Nh
c3Q8SlNXZWJBc3NlbWJseU1lbW9yeSo+KHZtLCBvYmplY3QpKQotICAgICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgbWFrZVN0cmluZyhtZW1vcnktPm1lbW9yeSgp
Lm1vZGUoKSkpKTsKKyAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmco
dm0sIFN0cmluZyB7IG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2RlKCkpIH0pKTsKICAg
ICAgICAgaWYgKGF1dG8qIGluc3RhbmNlID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqPih2bSwgb2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
anNTdHJpbmcodm0sIG1ha2VTdHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkpKTsKKyAgICAg
ICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyB7IG1ha2VT
dHJpbmcoaW5zdGFuY2UtPm1lbW9yeU1vZGUoKSkgfSkpOwogICAgIH0KIAogICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseU1lbW9yeU1v
ZGUgZXhwZWN0cyBlaXRoZXIgYSBXZWJBc3NlbWJseS5NZW1vcnkgb3IgV2ViQXNzZW1ibHkuSW5z
dGFuY2UiX3MpOwpAQCAtMzE4Myw3ICszMTgzLDcgQEAgc3RhdGljIHZvaWQgcnVuV2l0aE9wdGlv
bnMoR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENvbW1hbmRMaW5lJiBvcHRpb25zLCBib28K
ICAgICAgICAgSlNJbnRlcm5hbFByb21pc2UqIHByb21pc2UgPSBudWxscHRyOwogICAgICAgICBi
b29sIGlzTW9kdWxlID0gb3B0aW9ucy5tX21vZHVsZSB8fCBzY3JpcHRzW2ldLnNjcmlwdFR5cGUg
PT0gU2NyaXB0OjpTY3JpcHRUeXBlOjpNb2R1bGU7CiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmNv
ZGVTb3VyY2UgPT0gU2NyaXB0OjpDb2RlU291cmNlOjpGaWxlKSB7Ci0gICAgICAgICAgICBmaWxl
TmFtZSA9IHNjcmlwdHNbaV0uYXJndW1lbnQ7CisgICAgICAgICAgICBmaWxlTmFtZSA9IFN0cmlu
ZyB7IHNjcmlwdHNbaV0uYXJndW1lbnQgfTsKICAgICAgICAgICAgIGlmIChzY3JpcHRzW2ldLnN0
cmljdE1vZGUgPT0gU2NyaXB0OjpTdHJpY3RNb2RlOjpTdHJpY3QpCiAgICAgICAgICAgICAgICAg
c2NyaXB0QnVmZmVyLmFwcGVuZCgiXCJ1c2Ugc3RyaWN0XCI7XG4iLCBzdHJsZW4oIlwidXNlIHN0
cmljdFwiO1xuIikpOwogCkBAIC0zNDMwLDcgKzM0MzAsNyBAQCB2b2lkIENvbW1hbmRMaW5lOjpw
YXJzZUFyZ3VtZW50cyhpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAgICAgICAgICBpZiAoKytp
ID09IGFyZ2MpCiAgICAgICAgICAgICAgICAgcHJpbnRVc2FnZVN0YXRlbWVudCgpOwogICAgICAg
ICAgICAgT3B0aW9uczo6c2V0T3B0aW9uKCJ1c2VQcm9maWxlcj0xIik7Ci0gICAgICAgICAgICBt
X3Byb2ZpbGVyT3V0cHV0ID0gYXJndltpXTsKKyAgICAgICAgICAgIG1fcHJvZmlsZXJPdXRwdXQg
PSBTdHJpbmcgeyBhcmd2W2ldIH07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQog
ICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItbSIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAppbmRleCBkYTYwMGVhMDBmMGM4ZDY0M2E1N2Y2
NmZiNWY5YjBlM2EzNTY4M2E4Li43YjQ4MjdlZjNjMjM2NzIwNWRjOGQyMzllYTQyYTgxN2EzOTgy
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0
aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5j
cHAKQEAgLTIzMjgsOSArMjMyOCw5IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVZhcmFyZ3NDaGVja3Bv
aW50KFZNJiB2bSwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTR2xvYmFsT2JqZWN0CiAKICAgICBK
U1ZhbHVlIHJlc3VsdDsKICAgICBpZiAoT3Bjb2RlOjpvcGNvZGVJRCAhPSBvcF9jb25zdHJ1Y3Rf
dmFyYXJncykKLSAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQo
Y2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRl
Y29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiKTsKKyAgICAgICAgcmVzdWx0ID0gY2FsbChnbG9i
YWxPYmplY3QsIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9w
ZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiX3MpOwogICAg
IGVsc2UKLSAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgZ2V0T3BlcmFu
ZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5
dGVjb2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiIpOworICAgICAgICByZXN1bHQgPSBjb25zdHJ1
Y3QoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUp
LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIl9z
KTsKIAogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgY2FsbEZy
YW1lLT51bmNoZWNrZWRSKGJ5dGVjb2RlLm1fZHN0KSA9IHJlc3VsdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAKaW5kZXggOGNlZTlmMDljYThiMTAxOTJjY2MyYThiOWJkMWMw
YzcwMDJlYzJjOS4uYmUxNDAzODk3ZWE4N2Y4N2M1ZGI5OGM5MDBmYjRlY2RlYzQwNjlkMSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTI2ODUsNyArMjY4NSw3IEBA
IEpTVG9rZW5UeXBlIExleGVyPFQ+OjpzY2FuUmVnRXhwKEpTVG9rZW4qIHRva2VuUmVjb3JkLCBV
Q2hhciBwYXR0ZXJuUHJlZml4KQogICAgICAgICBtX2Vycm9yID0gdHJ1ZTsKICAgICAgICAgU3Ry
aW5nIGNvZGVQb2ludCA9IFN0cmluZzo6ZnJvbUNvZGVQb2ludChjdXJyZW50Q29kZVBvaW50KCkp
OwogICAgICAgICBpZiAoIWNvZGVQb2ludCkKLSAgICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52
YWxpZCB1bmljb2RlIGNoYXJhY3RlcmAiOworICAgICAgICAgICAgY29kZVBvaW50ID0gImBpbnZh
bGlkIHVuaWNvZGUgY2hhcmFjdGVyYCJfczsKICAgICAgICAgbV9sZXhFcnJvck1lc3NhZ2UgPSBt
YWtlU3RyaW5nKCJJbnZhbGlkIG5vbi1sYXRpbiBjaGFyYWN0ZXIgaW4gUmV4RXhwIGxpdGVyYWwn
cyBmbGFncyAnIiwgZ2V0VG9rZW4oKnRva2VuUmVjb3JkKSwgY29kZVBvaW50LCAiJyIpOwogICAg
ICAgICByZXR1cm4gdG9rZW47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXIuY3BwCmluZGV4IDU1MjZmNWM5YTEyNTAwODEzM2U5MThlMjZlZjMyNDdhODVkZTIzODkuLjgy
ZWMyNWE4YmZlM2I0NTZmMzA2NzU5NjZiMGY0OTYxMzUxYTY2ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTUwMDksNyArNTAwOSw3IEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Npb24gUGFyc2VyPExleGVyVHlwZT46OnBhcnNl
UHJpbWFyeUV4cHJlCiAgICAgICAgIFRyZWVFeHByZXNzaW9uIHJlID0gY29udGV4dC5jcmVhdGVS
ZWdFeHAobG9jYXRpb24sICpwYXR0ZXJuLCAqZmxhZ3MsIHN0YXJ0KTsKICAgICAgICAgaWYgKCFy
ZSkgewogICAgICAgICAgICAgWWFycjo6RXJyb3JDb2RlIGVycm9yQ29kZSA9IFlhcnI6OmNoZWNr
U3ludGF4KHBhdHRlcm4tPnN0cmluZygpLCBmbGFncy0+c3RyaW5nKCkpOwotICAgICAgICAgICAg
cmVnZXhGYWlsKFlhcnI6OmVycm9yTWVzc2FnZShlcnJvckNvZGUpKTsKKyAgICAgICAgICAgIHJl
Z2V4RmFpbChTdHJpbmcgeyBZYXJyOjplcnJvck1lc3NhZ2UoZXJyb3JDb2RlKSB9KTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gcmU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDQyNWI4ZmFk
MTM4MGU3M2M2OGU4MjE2ZGU0NWJlZDQ2ZGJhYWRlNTguLmU5MzgyZDQ5NDMyYzkyZWM4NWUzMzFk
ZDViZTMzMTUwYTM2Y2YxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BYnN0cmFjdE1vZHVsZVJlY29yZC5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNw
YWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29s
IHZlcmJvc2UgPSBmYWxzZTsKIH0gLy8gbmFtZXNwYWNlIEFic3RyYWN0TW9kdWxlUmVjb3JkSW50
ZXJuYWwKIAotY29uc3QgQ2xhc3NJbmZvIEFic3RyYWN0TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7
ICJBYnN0cmFjdE1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQWJzdHJhY3RNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFz
c0luZm8gQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIkFic3RyYWN0TW9kdWxlUmVj
b3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEFic3RyYWN0TW9kdWxlUmVjb3JkKSB9OwogCiBBYnN0cmFjdE1vZHVsZVJlY29yZDo6QWJz
dHJhY3RNb2R1bGVSZWNvcmQoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgSWRl
bnRpZmllciYgbW9kdWxlS2V5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcAppbmRleCBlOWJkYjdjODVkYWFmZTU2Y2JmODFiZTZiNGU3NWVmN2RlM2JkMjdl
Li4wZjQ5NWI2NzgzOWMwM2RmNDBmMDlmMjllMTU5OGUyZTY2YWE3ZjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3Ip
OwogCi1jb25zdCBDbGFzc0luZm8gQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQWdncmVnYXRl
RXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCmluZGV4IDA4
ODZmOTNmNjVjZjVjNjExYzUzYjRkOGI1MmQ2NDVjM2Q1MzFlYmYuLmQ3YjEzODY2YTMwYmVlMjE5
ZDcxMTRiOWI4NmY5MmFlZDZjMWI1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQXJyYXlD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmFycmF5Q29uc3RydWN0b3JUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUNvbnN0cnVjdG9yKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEFycmF5Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBhcnJheUNvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRl
cmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggZDNhZDIxZTViYzk3ZWE5NDUwYzZjZTBiNmY3ZTBj
NjI1MTdjOTE5OS4uM2Y5NjhkMjFkNTM3ZGU3ZjZhMmQ5MTBiODAyMzZiMzhkYWM3M2I5NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0
ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheUl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIEFycmF5SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCAxODE1ZTE0
N2I5NjVlY2M2MmEyZWUzYmU4OGQ5NDhhMGMwYjRmMGVkLi41NzNhMTdiMGRjMGQ5MGQzNDE5YTAz
NjUxNjBhNDJjNDE1MDNmM2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlQcm90b3R5cGUuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGFycmF5UHJvdG9GdW5jTGFzdEluZGV4T2YpOwogCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQXJyYXlQcm90b3R5cGUgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6OnNfaW5mbyA9IHsi
QXJyYXkiLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5UHJvdG90eXBlKX07Citjb25zdCBDbGFzc0luZm8gQXJyYXlQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIkFycmF5Il9zLCAmSlNBcnJheTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5UHJvdG90eXBlKSB9OwogCiBBcnJheVByb3RvdHlw
ZSogQXJyYXlQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpAQCAtMjU0LDcgKzI1NCw3IEBAIHN0YXRp
YyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29uc3RydWN0UmVzdWx0LCBKU09iamVj
dCo+IHNwZWNpZXNDb25zdHJ1CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBh
cmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZs
b3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVj
dCwgY29uc3RydWN0b3IsIGFyZ3MsICJTcGVjaWVzIGNvbnN0cnVjdGlvbiBkaWQgbm90IGdldCBh
IHZhbGlkIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24g
ZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZXhjZXB0aW9uUmVzdWx0KTsKICAgICByZXR1cm4gc3RkOjpwYWlyIHsgU3Bl
Y2llc0NvbnN0cnVjdFJlc3VsdDo6Q3JlYXRlZE9iamVjdCwgbmV3T2JqZWN0IH07CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9t
U3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMjA5NTlhOTkwNDcxNTNhY2ViMzlhZGJk
YjBmMjE0MTI2MWZhZjllLi5jZThkYWVlZTRmZGQyYTE4NDFiOGNmZjg0ZGIzMDMxYWQwYWYxN2E3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5j
SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0Zyb21TeW5jSXRlcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnJvbVN5bmNJdGVyYXRvciIsICZCYXNlOjpzX2lu
Zm8sICZhc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShBc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3lu
Y0Zyb21TeW5jSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0Zyb21TeW5jSXRlcmF0
b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Zyb21T
eW5jSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIEFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlw
ZTo6QXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRl
eCBmN2ZhYzU4YmM0OThiZTBjZDJjYTQ0ZDVlM2ZhMmJkMDYxMWNmNjA5Li40Y2Y3ZDZmYjM4MDNi
NTYwMjAwY2QyNTZiNTQ2YjBlNTM2ZmZjNThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0
LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0lu
Zm8gQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3lu
Y0Z1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jRnVu
Y3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCA0NTFk
MTA5MzdkNjQyYzdkMjZhZWUwMmUzNWY4NWQ1ZWE4YjM3ZDFmLi41ZmYxNTJjYWY1YzE4NTU1ZGZl
MGZjMzBmNmNkMjA3OTMzOTk2YTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Qcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jRnVuY3Rpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OwogCiBBc3luY0Z1bmN0aW9uUHJv
dG90eXBlOjpBc3luY0Z1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiAgICAgOiBKU0M6OkpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVy
YXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDEyYzlhYmU0NTc2YzllYjllM2FiNDdi
ODgyYjJkYjY2YzZlMjFkNzUuLjU3YWU5YjAzYTFhNTM5MzQ3ODI1OGVlOTVjYTcxNjIyODUxOWRl
NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkFzeW5j
R2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IDhiNDA0ODU0N2Y4ZmRiY2E1NTk3YjM4YTk3
ZjgwNDliMjlkNDcxODcuLjZmNDYzY2ZlM2I0NTUwOTc5Njg5ZGY3MTUyOTgyOTJjMjgxZDM3YWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Qcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5j
R2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Q
cm90b3R5cGU6OkFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQzo6SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5l
cmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDBlNmRjYjUzZDYzODA5NTU1NTJkZDBjN2YzZDEyNjBl
NzIzZGY1OGMuLmNmMjIxOGRlNWFhYjlmZmY1NzM4MWY1MWQ3MGE0NGFjY2IxZmJhNWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRv
clByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNH
ZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBBc3luY0dlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZhc3luY0dlbmVyYXRvclByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEFzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBjYzY5
ODYzMjEwNzMwZmNmZjQxMGM3ZTlmYjkyYzQ5MmQwZDA3Y2RlLi5mYTNhMDNjYWJhZGE3Y2E3MWU1
MjBlZTAyN2Y1ODgxNWE3YzVmMjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQXN5bmNJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5
bmNJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEFzeW5jSXRlcmF0
b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0
b21pY3NPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09i
amVjdC5jcHAKaW5kZXggOWVlNDVkZjQ3M2E0OTE1NzVkOTU1YmNmNzk5MGVmZDA1YjgwYWQ4Ni4u
ZTJmODE3NTgxY2MxODA2ZTg3ODQzZDVkOGY5OTU0MzEwZjY5MmY3YyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXRvbWljc09iamVjdC5jcHAKQEAgLTU1LDcgKzU1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEF0b21pY3NPYmplY3Qp
OwogRk9SX0VBQ0hfQVRPTUlDU19GVU5DKERFQ0xBUkVfRlVOQ19QUk9UTykKICN1bmRlZiBERUNM
QVJFX0ZVTkNfUFJPVE8KIAotY29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNfaW5mbyA9
IHsgIkF0b21pY3MiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEF0b21pY3NPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQXRvbWljc09iamVj
dDo6c19pbmZvID0geyAiQXRvbWljcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBdG9taWNzT2JqZWN0KSB9OwogCiBBdG9taWNzT2JqZWN0
OjpBdG9taWNzT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05v
bkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNWI4NWQ5YjFiNzU0NWY2NGZm
NWEyYmZhYTFjZThmNTUwNjgwN2U5ZC4uNzc1NmNhZTFhNzA1NzQxODVjZTk3NTdlN2MyM2I3YjM1
ZDI5NGUwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RB
VElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEJpZ0ludENvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sICZiaWdJbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJpZ0ludENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEJp
Z0ludENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
JmJpZ0ludENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQmln
SW50Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgQmlnSW50Q29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBiaWdJbnRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcAppbmRleCBmMTdlNTdjODVkZDZhMGNhNTFkZmU2
NWI2YzM0Y2ViZDJjZjhhYWNiLi4yN2ZhNjhjZjAzMzE4ZDg4MjkzNDI0NTUyM2JiZTE5ZGI4ZTIz
NTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludE9iamVjdC5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShCaWdJbnRPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8g
QmlnSW50T2JqZWN0OjpzX2luZm8gPSB7ICJCaWdJbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludE9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBCaWdJbnRPYmplY3Q6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRPYmplY3QpIH07
CiAKIAogQmlnSW50T2JqZWN0KiBCaWdJbnRPYmplY3Q6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYmlnSW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAKaW5kZXggOTUyMjA5ZDM3MTY1
NWM2MDk4ZGI2YmVlN2I1YjNlNzU2ZjZmOWJkZi4uNzg2NWE3OWZlNmVkODJiYzUwN2Y1MGQ4MDNm
YTMwM2JiZmZhNmY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
aWdJbnRQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGJpZ0ludFByb3RvRnVuY1ZhbHVlT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludFByb3RvdHlwZTo6c19pbmZvID0geyAiQmlnSW50Iiwg
JkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCJfcywgJkJhc2U6OnNfaW5mbywgJmJpZ0ludFByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludFByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCaWdJbnRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBiaWdJbnRQ
cm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jv
b2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZWUyNTA2ZjkyNjM3NTU2ZDc0Mzk4NmI5MTE1NTY2
ZWYxYmJhYWEzNS4uZmEyY2ZkYmM2NGJlZDAzMjQ3MzExYzcwOGVjY2M4N2U0MzBlYTYwNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0
b3IuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVjdG9yKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5D
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Db25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEJvb2xlYW5Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKaW5kZXgg
YjhjNjI0NmQxZmI5MGJjZDU4MjQ2ZWFlZjQzOTJmYTJkMjZhYmZmYS4uMzExY2FjODFmZDFjZTUz
NTMyZmQ1M2Q5NWE2OTA1MWY4MjQ0ZmNhMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbk9iamVjdC5jcHAKQEAgLTI3LDcgKzI3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShCb29sZWFuT2Jq
ZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xl
YW4iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVhbk9iamVjdDo6c19pbmZv
ID0geyAiQm9vbGVhbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0OjpCb29sZWFu
T2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFu
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90
b3R5cGUuY3BwCmluZGV4IGFmMDA3YTM1ZWEwZTQwZjUzN2YxNjdjZDMwZjM1M2Y2OTdkYTAzNWIu
Ljg3N2UzODUwZTIzMDNlNmU2NjUzOTFkZjY1MWNiODc0NDE4ZGUyYzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwCkBAIC0zNSw3
ICszNSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGJvb2xlYW5Qcm90b0Z1
bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFu
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJCb29sZWFuIiwgJkJvb2xlYW5PYmplY3Q6OnNfaW5mbywg
JmJvb2xlYW5Qcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29s
ZWFuUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Qcm90b3R5cGU6OnNfaW5m
byA9IHsgIkJvb2xlYW4iX3MsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gYm9vbGVh
blByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9CeXRlY29kZUNhY2hlRXJyb3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Qnl0ZWNvZGVDYWNoZUVycm9yLmNwcAppbmRleCBhOWZjYjNlZjI1NDk2MmVjOWMwZDg0MWZmN2Ey
ZmZmMWM2MTg2ZmVmLi5kZDljMGUzNmNhZGYyZmE5ZjM2NDNjZTE0YzM3MjNhODkyNTE0NDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJy
b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVjb2RlQ2FjaGVF
cnJvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgYm9vbCBCeXRlY29kZUNhY2hlRXJyb3I6OlN0YW5k
YXJkRXJyb3I6OmlzVmFsaWQoKSBjb25zdAogCiBTdHJpbmcgQnl0ZWNvZGVDYWNoZUVycm9yOjpT
dGFuZGFyZEVycm9yOjptZXNzYWdlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gc2FmZVN0cmVycm9y
KG1fZXJybm8pLmRhdGEoKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgc2FmZVN0cmVycm9yKG1fZXJy
bm8pLmRhdGEoKSB9OwogfQogCiBib29sIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6V3JpdGVFcnJvcjo6
aXNWYWxpZCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9DYWxsRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5j
cHAKaW5kZXggOTc4OWQ3NzNjMWMzNGU2MGFhMDUyNGNmYzcyZTdhMWI2MjMwY2E5ZS4uYjY0MjI2
NjM4ZjdmNDVhZTdlMmRkOWM1ZTdjOTY1ZDczZWJhNDM4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NhbGxEYXRhLmNwcApAQCAtMzMsMTIgKzMzLDEyIEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1KU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNhbGwoZ2xvYmFsT2JqZWN0LCBmdW5jdGlvbk9i
amVjdCwgZnVuY3Rpb25PYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9CiAKLUpTVmFsdWUg
Y2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0
LCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJy
b3JNZXNzYWdlKQorSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiBh
cmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9i
amVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaAppbmRleCA3M2E5YzE1NWVkNDNm
YTIwYjU4OWMxOGIxZmZlZmY0YzQ0OTQ1MjNjLi4xYWM5M2U4MTIwOGI4ZDBmYzNlNmIyZTJkNjEx
MDIwMmQ3YWZiMDdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
YWxsRGF0YS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmgK
QEAgLTYwLDggKzYwLDggQEAgZW51bSBjbGFzcyBQcm9maWxpbmdSZWFzb24gOiB1aW50OF90IHsK
IH07CiAKIC8vIENvbnZlbmllbmNlIHdyYXBwZXIgc28geW91IGRvbid0IG5lZWQgdG8gZGVhbCB3
aXRoIENhbGxEYXRhIHVubGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVzZSBpdC4KLUpTX0VYUE9SVF9Q
UklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmpl
Y3QsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JU
X1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9i
amVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJv
ck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0
KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0ZXJhbCBl
cnJvck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2Jq
ZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAogSlNfRVhQT1JUX1BSSVZBVEUg
SlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29u
c3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYpOwogSlNfRVhQ
T1JUX1BSSVZBVEUgSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlv
bk9iamVjdCwgY29uc3QgQ2FsbERhdGEmLCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlz
dCYsIE5ha2VkUHRyPEV4Y2VwdGlvbj4mIHJldHVybmVkRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKaW5kZXggMjQ2NDAyZTBjNWQwYmI3N2Y0NmY4
ZTBlMWEyMjlkMWJjYWJkYjc4Yi4uYTU3NjkyOGVkOGFiYzEyNWQ5NTg1NDhkYWQwZDlkMGQ0OTUw
Nzc5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZv
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmgKQEAgLTE3
Niw3ICsxNzYsNyBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICB1c2luZyBDaGVja0pTQ2FzdFNu
aXBwZXRGdW5jdGlvblB0ciA9IFJlZjxTbmlwcGV0PiAoKikodm9pZCk7CiAKICAgICAvLyBBIHN0
cmluZyBkZW5vdGluZyB0aGUgY2xhc3MgbmFtZS4gRXhhbXBsZTogIldpbmRvdyIuCi0gICAgY29u
c3QgY2hhciogY2xhc3NOYW1lOworICAgIEFTQ0lJTGl0ZXJhbCBjbGFzc05hbWU7CiAgICAgLy8g
UG9pbnRlciB0byB0aGUgY2xhc3MgaW5mb3JtYXRpb24gb2YgdGhlIGJhc2UgY2xhc3MuCiAgICAg
Ly8gbnVsbHB0cmlmIHRoZXJlIGlzIG5vbmUuCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBwYXJlbnRD
bGFzczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFy
Z3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwCmluZGV4IGRhOTA4ZGFjNDQwYmU3Njg4MDI0NGEwNjViY2Q5ZTdlMTg2N2I1Y2QuLjlm
NTFiZWQzZGFhZmE5YjM4MjEwMWY2MjQyMDMwMzk1ZmY2NGQxYWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNwcApAQCAtMzMsNyArMzMs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKENsb25lZEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBDbG9uZWRBcmd1bWVu
dHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ2xvbmVkQXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJ
bmZvIENsb25lZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENsb25lZEFyZ3VtZW50
cykgfTsKIAogQ2xvbmVkQXJndW1lbnRzOjpDbG9uZWRBcmd1bWVudHMoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgQnV0dGVyZmx5KiBidXR0ZXJmbHkpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUsIGJ1dHRlcmZseSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvZGVDYWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2Fj
aGUuY3BwCmluZGV4IDI4ODRlOWE0YWNiOWQ4OTc2OGFhMGMzNDVkODM2OTBlNjNkN2VmODYuLjUy
NjFlMzA0OWI5Y2JiNDZjMmQwMmVmMjYzNGEzYzUyZjJkOTJjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcApAQCAtMjMzLDcgKzIzMyw3IEBAIFVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6OmdldFVubGlua2VkR2xvYmFsRnVuY3Rp
b25FeGVjdXRhYmxlKFZNJiB2CiAgICAgU3RhdGVtZW50Tm9kZSogZnVuY0RlY2wgPSBwcm9ncmFt
LT5zaW5nbGVTdGF0ZW1lbnQoKTsKICAgICBpZiAoVU5MSUtFTFkoIWZ1bmNEZWNsKSkgewogICAg
ICAgICBKU1Rva2VuIHRva2VuOwotICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNlckVy
cm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJsZSwg
dG9rZW4sICJQYXJzZXIgZXJyb3IiLCAtMSk7CisgICAgICAgIGVycm9yID0gUGFyc2VyRXJyb3Io
UGFyc2VyRXJyb3I6OlN5bnRheEVycm9yLCBQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3JJcnJlY292
ZXJhYmxlLCB0b2tlbiwgIlBhcnNlciBlcnJvciJfcywgLTEpOwogICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICB9CiAgICAgQVNTRVJUKGZ1bmNEZWNsLT5pc0Z1bmNEZWNsTm9kZSgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tcGxldGlvbi5jcHAKaW5kZXggM2ZiZjFk
OGQzMzgzYTdhYjIxNzFhOTM4YWZhZTY5NjJjN2ZjYjBjZi4uMTlkMTZjYjgyNDhlOWExZjlmZDhi
OGEzMTk4ZTc3NmI0MjkyYzgxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29tcGxldGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Q29tcGxldGlvbi5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgYm9vbCBjaGVja01vZHVsZVN5bnRheChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFAK
ICAgICBpZiAoIW1vZHVsZVByb2dyYW1Ob2RlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJFbnRy
eVBvaW50TW9kdWxlIik7CisgICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6
OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSJfcyk7CiAgICAgTW9kdWxlQW5hbHl6ZXIg
bW9kdWxlQW5hbHl6ZXIoZ2xvYmFsT2JqZWN0LCBJZGVudGlmaWVyOjpmcm9tVWlkKHByaXZhdGVO
YW1lKSwgc291cmNlLCBtb2R1bGVQcm9ncmFtTm9kZS0+dmFyRGVjbGFyYXRpb25zKCksIG1vZHVs
ZVByb2dyYW1Ob2RlLT5sZXhpY2FsVmFyaWFibGVzKCkpOwogICAgIG1vZHVsZUFuYWx5emVyLmFu
YWx5emUoKm1vZHVsZVByb2dyYW1Ob2RlKTsKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTE3Miw3ICsx
NzIsNyBAQCBKU1ZhbHVlIGV2YWx1YXRlV2l0aFNjb3BlRXh0ZW5zaW9uKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZAogc3RhdGljIFN5bWJvbCogY3JlYXRlU3lt
Ym9sRm9yRW50cnlQb2ludE1vZHVsZShWTSYgdm0pCiB7CiAgICAgLy8gR2VuZXJhdGUgdGhlIHVu
aXF1ZSBrZXkgZm9yIHRoZSBzb3VyY2UtcHJvdmlkZWQgbW9kdWxlLgotICAgIFByaXZhdGVOYW1l
IHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1bGUi
KTsKKyAgICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24s
ICJFbnRyeVBvaW50TW9kdWxlIl9zKTsKICAgICByZXR1cm4gU3ltYm9sOjpjcmVhdGUodm0sIHBy
aXZhdGVOYW1lLnVpZCgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db25zb2xlT2JqZWN0LmNwcAppbmRleCAwZGRlOTg3NzI3NjY1NTk4NDY5NjQ1ZjQzOTZjMjMy
YzU2NmU0M2ExLi5iOWFhYmQ0YzE0OGQyNGQzMjRmNjYyMjhiYTFjODRlYmYzMTllNzRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zb2xlT2JqZWN0LmNwcApAQCAt
NzQsNyArNzQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJv
dG9GdW5jUmVjb3JkKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQ
cm90b0Z1bmNSZWNvcmRFbmQpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c29sZVByb3RvRnVuY1NjcmVlbnNob3QpOwogCi1jb25zdCBDbGFzc0luZm8gQ29uc29sZU9iamVj
dDo6c19pbmZvID0geyAiY29uc29sZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBD
b25zb2xlT2JqZWN0OjpzX2luZm8gPSB7ICJjb25zb2xlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENvbnNvbGVPYmplY3QpIH07CiAKIENv
bnNvbGVPYmplY3Q6OkNvbnNvbGVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
ICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5jcHAKaW5kZXggOTZlNjdkOGRlMjYyY2Ew
ZGZhMWJmMTFiMzEwMjFmMzAxNmJjYzUzNy4uNjJmYmE2YTcxMWY4YmIyODU0ZDg3M2Y1NzhhM2Iw
YWI4OTc4NmFkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29u
c3RydWN0RGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3Ry
dWN0RGF0YS5jcHAKQEAgLTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNv
bnN0cnVjdG9yT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBjb25zdCBjaGFyKiBlcnJvck1l
c3NhZ2UpCitKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgY29uc3RydWN0b3JPYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVjdChnbG9iYWxPYmplY3Qs
IGNvbnN0cnVjdG9yT2JqZWN0LCBjb25zdHJ1Y3Rvck9iamVjdCwgYXJncywgZXJyb3JNZXNzYWdl
KTsKIH0KIAotSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJn
TGlzdCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorSlNPYmplY3QqIGNvbnN0cnVj
dChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0
LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJnTGlzdCYgYXJncywgQVNDSUlMaXRlcmFsIGVy
cm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0
byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCmluZGV4IDU0NTJhZTJhYjhlOGQ0YTI0NTZhZjFj
NWVmNTIxZDg2ZThhNmVjYzMuLjc5MTYxY2EwNTEyZmNiMWQ1MzBlNjJiNjBmMThmNjdjY2FjZWRi
NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgK
QEAgLTM1LDggKzM1LDggQEAgbmFtZXNwYWNlIEpTQyB7CiBjbGFzcyBKU09iamVjdDsKIAogLy8g
Q29udmVuaWVuY2Ugd3JhcHBlciBzbyB5b3UgZG9uJ3QgbmVlZCB0byBkZWFsIHdpdGggQ2FsbERh
dGEgdW5sZXNzIHlvdSBhcmUgZ29pbmcgdG8gdXNlIGl0LgotSlNfRVhQT1JUX1BSSVZBVEUgSlNP
YmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IGNvbnN0IEFyZ0xpc3QmLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpOwotSlNfRVhQT1JUX1BS
SVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rp
b25PYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgQVND
SUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CitKU19FWFBPUlRfUFJJVkFURSBKU09iamVjdCogY29u
c3RydWN0KEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSBu
ZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKIAog
SlNfRVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgY29uc3RydWN0b3IsIGNvbnN0IENhbGxEYXRhJiwgY29uc3QgQXJnTGlzdCYsIEpTVmFs
dWUgbmV3VGFyZ2V0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0N1c3RvbUdldHRlclNldHRlci5jcHAKaW5kZXggZDFjMDJmMDU5ZDA0NGZhMDNlNTM0NDkzNWNh
MGMyZmNiZjUwZmY4Ny4uZWJmY2M0MzY2MWM2MDc3MzdhNzk3YTI0OWIwZWFlYzdiYTdjMzRhNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0
dGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwCkBAIC0zMiw2ICszMiw2IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKTsKIAotY29u
c3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVy
U2V0dGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShD
dXN0b21HZXR0ZXJTZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVy
OjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB9IC8v
IG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RPTUF0dHJpYnV0ZUdldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDk3ZTcyZTE0MmViYTg0ODk0
MzYzZjA0MzkyOTk1ZmE1YjljZGQyNTEuLjcxZmRiZTZhMmY5ZmNhZDc3OThlNzhjYTcyY2M1N2Mw
MDZkNjNmOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RPTUF0
dHJpYnV0ZUdldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcApAQCAtMzIsNiArMzIsNiBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKERPTUF0
dHJpYnV0ZUdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBET01BdHRyaWJ1dGVHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdldHRlclNldHRlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NQXR0cmlidXRl
R2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUF0dHJpYnV0ZUdldHRlclNldHRl
cjo6c19pbmZvID0geyAiRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRl
clNldHRlcikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAppbmRleCBlNzM3YjJmYTM4ZGE3MDk5
YzYxMGFjZjk3NTRiZGYzZDBhODk2MzgzLi42ZDA5MDJjOWZjYzk0YWQwZDUxZTUxZGUyOGVhMmM5
NjUyOTRjN2EzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVD
b25zdHJ1Y3Rvci5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oZGF0ZU5vdyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
RGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sICZkYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShEYXRlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmRh
dGVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBEYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBkYXRlQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggNTMyNWNmZmVmMzE4YTczN2JiYmJiZTRlYzY0NjBiZDg5
NjhlNGQ5Mi4uZjg3YmI2NmMwMzY3NWIyNjU1MzNmMTg5YmY0ZGQ5ZGUwODk1ODQwOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCkBAIC0yNyw3
ICsyNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRGF0ZUluc3Rh
bmNlOjpzX2luZm8gPSB7IkRhdGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJ
bnN0YW5jZTo6c19pbmZvID0geyAiRGF0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlSW5zdGFuY2UpIH07CiAKIERhdGVJbnN0YW5j
ZTo6RGF0ZUluc3RhbmNlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNl
KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQ
cm90b3R5cGUuY3BwCmluZGV4IDg1NDVhNTU5YTczMjhiNTUzN2RiODEyODNjOThhNjM5ZDZjNGE4
M2IuLjRkMDRhNTJiZWQ4ZmMyMjEzYjUyMWJkYTU2YjdiOGMzOTUxZDExNWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC0yMTAsNyAr
MjEwLDcgQEAgc3RhdGljIGJvb2wgZmlsbFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSoKICAgICByZXR1cm4gb2s7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7Ik9iamVjdCIsICZCYXNlOjpz
X2luZm8sICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RGF0ZVByb3RvdHlwZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlUHJvdG90eXBlVGFibGUKQEAgLTM1OCwx
MiArMzU4LDEyIEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihkYXRlUHJvdG9GdW5jVG9Qcmlt
aXRpdmVTeW1ib2wsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsCiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1l
LT50aGlzVmFsdWUoKS50b1RoaXMoZ2xvYmFsT2JqZWN0LCBFQ01BTW9kZTo6c3RyaWN0KCkpOwog
ICAgIGlmICghdGhpc1ZhbHVlLmlzT2JqZWN0KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9Qcmlt
aXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtT
eW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIHx0aGlzfCB0byBiZSBhbiBvYmplY3QuIl9zKTsK
ICAgICBKU09iamVjdCogdGhpc09iamVjdCA9IGpzQ2FzdDxKU09iamVjdCo+KHRoaXNWYWx1ZSk7
CiAgICAgSW50ZWdyaXR5OjphdWRpdFN0cnVjdHVyZUlEKHRoaXNPYmplY3QtPnN0cnVjdHVyZUlE
KCkpOwogCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSkKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJvdG90eXBl
W1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGUucHJv
dG90eXBlW1N5bWJvbC50b1ByaW1pdGl2ZV0gZXhwZWN0ZWQgYSBmaXJzdCBhcmd1bWVudC4iX3Mp
OwogCiAgICAgSlNWYWx1ZSBoaW50VmFsdWUgPSBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50
KDApOwogICAgIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgdHlwZSA9IHRvUHJlZmVycmVkUHJpbWl0
aXZlVHlwZShnbG9iYWxPYmplY3QsIGhpbnRWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcAppbmRleCBiYTQyYzYxODczZTM3OWMw
ZDNkMmIzOGU3NzNjYzE3NzZmZTRkMTU3Li5hY2M2MjlmMGQzMGQxNDExMzgzNWM2ZWUyYzVjMmYy
N2QwYWYzNzZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJl
Y3RBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RpcmVj
dEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShEaXJlY3RBcmd1bWVudHMpOwogCi1j
b25zdCBDbGFzc0luZm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERpcmVj
dEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBEaXJlY3RBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShEaXJlY3RBcmd1bWVudHMpIH07CiAKIERpcmVjdEFyZ3VtZW50czo6RGly
ZWN0QXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVuc2lnbmVkIGxlbmd0
aCwgdW5zaWduZWQgY2FwYWNpdHkpCiAgICAgOiBHZW5lcmljQXJndW1lbnRzKHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAppbmRleCA1NGIxNDk0NThmZjIy
ODcwZmRkYjgzMWZlYTk5Njc0ZDIyZDFhNTIyLi44ZTQ4YmIxNGRkNjFkYzgyM2EyODAyZGQxODNk
NTM2OGE2YWZlZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKQEAgLTkz
LDcgKzkzLDcgQEAgSlNfRVhQT1JUX1BSSVZBVEUgSlNWYWx1ZSB0aHJvd0RPTUF0dHJpYnV0ZVNl
dHRlclR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCosIFRocm8KIC8vIENvbnZlbmllbmNlIHdyYXBw
ZXJzLCB3cmFwIHJlc3VsdCBhcyBhbiBFbmNvZGVkSlNWYWx1ZS4KIGlubGluZSB2b2lkIHRocm93
Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwg
RXhjZXB0aW9uKiBleGNlcHRpb24pIHsgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgZXhjZXB0aW9uKTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1FcnJvcihKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwgSlNWYWx1ZSBlcnJv
cikgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGVycm9yKSk7IH0KLWlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IGNoYXIq
IGVycm9yTWVzc2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdl
KSkpOyB9CitpbmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVz
c2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgZXJyb3JNZXNzYWdlKSkpOyB9CiBp
bmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTVR5cGVFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRo
cm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUpKTsgfQogaW5saW5lIEVuY29kZWRKU1Zh
bHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dT
Y29wZSYgc2NvcGUsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvck1lc3NhZ2Up
KTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIGNvbnN0IFN0cmluZyYgZXJyb3JN
ZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzA2NGQxMjBhN2Y4YzQyMThl
MTE3YjU2NjVkYjdlYTUwMjhhN2I3ZC4uNTBkMmVmMDRjYTMyNzA1MTJiZGZmZTAyYzNjMTU3MDJk
MjI4ZjAwNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAKQEAgLTI4LDcgKzI4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJv
ckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxFcnJvckNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEVycm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcAppbmRleCA3MzhlN2Y0ZTEy
N2UxN2RlZjJmNDU5Yzk4YmEwYTc3MjUwNTY1OThiLi4zNTJiN2QyOTgzYzNhOTVlMGFkZDYxNjI4
YjMyMDRkMTgwZTM2ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvckluc3RhbmNlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkpTTm9u
RmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShFcnJvckluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9ySW5zdGFuY2U6OnNfaW5m
byA9IHsgIkVycm9yIl9zLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVycm9ySW5zdGFuY2UpIH07CiAKIEVycm9ySW5zdGFu
Y2U6OkVycm9ySW5zdGFuY2UoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgRXJyb3JUeXBl
IGVycm9yVHlwZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcAppbmRleCBlZjQzMWYzOTVlMzQy
NWEyNjM1NGU5MzIwYWNjNGY5MjUyYjM4MjljLi5jNjZiZmE4MzBjNDFkMjdmOTFhMzMwYjY2YjYw
YTBhOWQwN2Y0NzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JQcm90b3R5cGUuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGVycm9yUHJvdG9GdW5jVG9TdHJpbmcpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6
c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmZXJyb3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJvclByb3RvdHlwZSkgfTsKIAogLyog
U291cmNlIGZvciBFcnJvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGVycm9yUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRhYmxlLmNw
cAppbmRleCAxYjJmNGY1MmFiN2JmY2UzNDBiM2MzOTUyOWUxODA1NzJjZDE2NDQzLi5kZDg0OTMz
ODJmZjYxNDEwYmJlZWVkZDBiYmUyNzdkYzUyMDhlNjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5m
byA9IHsgIkV2YWxFeGVjdXRhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShFdmFsRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
dmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiRXZhbEV4ZWN1dGFibGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUp
IH07CiAKIEV2YWxFeGVjdXRhYmxlOjpFdmFsRXhlY3V0YWJsZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaW5TdHJpY3RDb250ZXh0
LCBEZXJpdmVkQ29udGV4dFR5cGUgZGVyaXZlZENvbnRleHRUeXBlLCBib29sIGlzQXJyb3dGdW5j
dGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBFdmFsQ29udGV4dFR5
cGUgZXZhbENvbnRleHRUeXBlLCBOZWVkc0NsYXNzRmllbGRJbml0aWFsaXplciBuZWVkc0NsYXNz
RmllbGRJbml0aWFsaXplciwgUHJpdmF0ZUJyYW5kUmVxdWlyZW1lbnQgcHJpdmF0ZUJyYW5kUmVx
dWlyZW1lbnQpCiAgICAgOiBCYXNlKGdsb2JhbE9iamVjdC0+dm0oKS5ldmFsRXhlY3V0YWJsZVN0
cnVjdHVyZS5nZXQoKSwgZ2xvYmFsT2JqZWN0LT52bSgpLCBzb3VyY2UsIGluU3RyaWN0Q29udGV4
dCwgZGVyaXZlZENvbnRleHRUeXBlLCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBpc0luc2lkZU9y
ZGluYXJ5RnVuY3Rpb24sIGV2YWxDb250ZXh0VHlwZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcAppbmRleCA0ZTIwNjQ2MGI5ZDIwMDY3
OGZmYzRhYmVhMzE2OTA1NDFkOGZmZjVmLi5mYjE5OWYzODc2MGFjYmUwZDM5NGJlMzAxNmY5ZjJk
YzI3NjI2OWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbi5j
cHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGNlcHRpb246OnNfaW5mbyA9IHsgIkV4Y2VwdGlvbiIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEV4Y2VwdGlvbjo6c19pbmZvID0geyAiRXhjZXB0aW9uIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4Y2VwdGlvbikgfTsKIAogRXhjZXB0aW9uKiBF
eGNlcHRpb246OmNyZWF0ZShWTSYgdm0sIEpTVmFsdWUgdGhyb3duVmFsdWUsIFN0YWNrQ2FwdHVy
ZUFjdGlvbiBhY3Rpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0V4Y2VwdGlvbkhlbHBlcnMuY3BwCmluZGV4IDA5OWZmNzFjZDYyNjViOGQxY2E4YzkxZTM2MTEz
NjFlZTBlZTdmYTMuLmQyMTM0Mzk2NDczNjBlOWNiNWI1ZDkzOTZhY2FhNDEyZGM4ZGM4NGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbkhlbHBlcnMu
Y3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIFN0cmluZyBub3RBRnVuY3Rpb25Tb3VyY2VB
cHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY29uc3QgU3QKICAgICAgICAg
cmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2FnZSwgc291
cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNlOjpGb3Vu
ZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIG5vdEFGdW5jdGlvbkluZGV4ID0gb3JpZ2luYWxNZXNz
YWdlLnJldmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiIpOworICAgIGF1dG8gbm90QUZ1bmN0
aW9uSW5kZXggPSBvcmlnaW5hbE1lc3NhZ2UucmV2ZXJzZUZpbmQoImlzIG5vdCBhIGZ1bmN0aW9u
Il9zKTsKICAgICBSRUxFQVNFX0FTU0VSVChub3RBRnVuY3Rpb25JbmRleCAhPSBub3RGb3VuZCk7
CiAgICAgU3RyaW5nVmlldyBkaXNwbGF5VmFsdWU7CiAgICAgaWYgKG9yaWdpbmFsTWVzc2FnZS5p
czhCaXQoKSkgCkBAIC0xOTcsNyArMTk3LDcgQEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUGFyYW1l
dGVySW5Tb3VyY2VBcHBlbmRlcihjb25zdCBTdHJpbmcmIG9yaWdpbmFsTWVzc2FnZSwgY28KICAg
ICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2Fn
ZSwgc291cmNlVGV4dCk7CiAKICAgICBBU1NFUlQob2NjdXJyZW5jZSA9PSBFcnJvckluc3RhbmNl
OjpGb3VuZEV4YWN0U291cmNlKTsKLSAgICBhdXRvIGluSW5kZXggPSBzb3VyY2VUZXh0LnJldmVy
c2VGaW5kKCJpbiIpOworICAgIGF1dG8gaW5JbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQo
ImluIl9zKTsKICAgICBpZiAoaW5JbmRleCA9PSBub3RGb3VuZCkgewogICAgICAgICAvLyBUaGlz
IHNob3VsZCBiYXNpY2FsbHkgbmV2ZXIgaGFwcGVuLCBzaW5jZSBKUyBjb2RlIG11c3QgdXNlIHRo
ZSBsaXRlcmFsCiAgICAgICAgIC8vIHRleHQgImluIiBmb3IgdGhlIGBpbmAgb3BlcmF0aW9uLiBI
b3dldmVyLCBpZiB3ZSBmYWlsIHRvIGZpbmQgImluIgpAQCAtMjE4LDcgKzIxOCw3IEBAIGlubGlu
ZSBTdHJpbmcgaW52YWxpZFBhcmFtZXRlckluc3RhbmNlb2ZTb3VyY2VBcHBlbmRlcihjb25zdCBT
dHJpbmcmIGNvbnRlbnQsIGNvCiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3Vy
Y2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3Vy
cmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBpbnN0
YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9mIik7CisgICAg
YXV0byBpbnN0YW5jZW9mSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbnN0YW5jZW9m
Il9zKTsKICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBTeW1ib2wuaGFzSW5zdGFuY2UgZnVu
Y3Rpb24gaXMgZGlyZWN0bHkgY2FsbGVkLgogICAgIGlmIChpbnN0YW5jZW9mSW5kZXggPT0gbm90
Rm91bmQpCiAgICAgICAgIHJldHVybiBvcmlnaW5hbE1lc3NhZ2U7CkBAIC0yNDYsNyArMjQ2LDcg
QEAgc3RhdGljIFN0cmluZyBpbnZhbGlkUHJvdG90eXBlU291cmNlQXBwZW5kZXIoY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvbnMKICAgICBpZiAob2NjdXJyZW5jZSA9PSBFcnJvcklu
c3RhbmNlOjpGb3VuZEFwcHJveGltYXRlU291cmNlKQogICAgICAgICByZXR1cm4gZGVmYXVsdEFw
cHJveGltYXRlU291cmNlRXJyb3Iob3JpZ2luYWxNZXNzYWdlLCBzb3VyY2VUZXh0KTsKIAotICAg
IGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyIpOwor
ICAgIGF1dG8gZXh0ZW5kc0luZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiZXh0ZW5kcyJf
cyk7CiAgICAgaWYgKGV4dGVuZHNJbmRleCA9PSBub3RGb3VuZCB8fCBzb3VyY2VUZXh0LmZpbmQo
ImV4dGVuZHMiKSAhPSBleHRlbmRzSW5kZXgpCiAgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKG9y
aWdpbmFsTWVzc2FnZSwgIiAoZXZhbHVhdGluZyAnIiwgc291cmNlVGV4dCwgIicpIik7CiAKQEAg
LTMyNCwyNyArMzI0LDI3IEBAIEpTT2JqZWN0KiBjcmVhdGVFcnJvckZvckludmFsaWRHbG9iYWxB
c3NpZ25tZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvCiAKIEpTT2JqZWN0KiBj
cmVhdGVURFpFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVy
biBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIHVuaW5p
dGlhbGl6ZWQgdmFyaWFibGUuIik7CisgICAgcmV0dXJuIGNyZWF0ZVJlZmVyZW5jZUVycm9yKGds
b2JhbE9iamVjdCwgIkNhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJsZS4iX3MpOwog
fQogCiBKU09iamVjdCogY3JlYXRlSW52YWxpZFByaXZhdGVOYW1lRXJyb3IoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgbWFrZVN0cmluZygiQ2Fubm90IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiKSwg
ZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNyZWF0ZVR5
cGVFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIGludmFsaWQgcHJpdmF0ZSBmaWVs
ZCJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEpTT2JqZWN0
KiBjcmVhdGVSZWRlZmluZWRQcml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VT
dHJpbmcoIkNhbm5vdCByZWRlZmluZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIiksIGRlZmF1bHRT
b3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCAiQ2Fubm90IHJlZGVmaW5lIGV4aXN0aW5nIHByaXZhdGUgZmllbGQiX3Ms
IGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3Jl
YXRlUHJpdmF0ZU1ldGhvZEFjY2Vzc0Vycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qp
CiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VTdHJpbmco
IkNhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcyksIGRlZmF1bHRTb3Vy
Y2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyBwcml2YXRlIG1ldGhvZCBvciBhY2Vzc29yIl9zLCBk
ZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0
ZVJlaW5zdGFsbFByaXZhdGVNZXRob2RFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5n
KCJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUgbWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0aGFu
IG9uY2UiX3MpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1
cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCBpbnN0YWxsIHNhbWUgcHJp
dmF0ZSBtZXRob2RzIG9uIG9iamVjdCBtb3JlIHRoYW4gb25jZSJfcywgZGVmYXVsdFNvdXJjZUFw
cGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEV4Y2VwdGlvbiogdGhyb3dPdXRPZk1lbW9yeUVy
cm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwCmluZGV4
IGZkNDczODJkMTVlZjc1OTk3MmY5NGM2MmUzMDBjZTkwZjA2OWI4ZjAuLjY4YWVlYWFmYTFiMDE5
MzU4MDJmOWZjNTViZDY4YTc5NTcyMDc3NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGVjdXRhYmxlQmFzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAi
RXhlY3V0YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZUJhc2U6OnNf
aW5mbyA9IHsgIkV4ZWN1dGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07CiAKIHZvaWQgRXhlY3V0YWJsZUJhc2U6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNw
cAppbmRleCBmMzFkYjg2YTc5NjE2ZTQ1YThkYzExNWFhMjY1NzBhYzNjN2U2NmY1Li5mNWZjMWE4
MWQ2NmM1ZWZjMTUyMzRmMDA3OWEyZjAyODA3NTUwYjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeUNv
bnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgRmluYWxpemF0aW9u
UmVnaXN0cnlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBGaW5hbGl6YXRpb25S
ZWdpc3RyeVByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUu
Y3BwCmluZGV4IDg1M2U0YWE4NzRjYjUxMDBhMzYzYjJjMDAxNDMzNTNjZmZhNWIwOWMuLjhhMGMx
MTgxOTY2MjJlMTY2ZmM4MWFhYmNkOThlYTc4OGExZWNkNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVBy
b3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZTo6c19pbmZvID0geyAiRmlu
YWxpemF0aW9uUmVnaXN0cnkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJGaW5h
bGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZSkgfTsKIAogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxpemF0aW9uUmVnaXN0
cnlSZWdpc3Rlcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNG
aW5hbGl6YXRpb25SZWdpc3RyeVVucmVnaXN0ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAxNjVlN2E3Zjdl
NDZkZGRjODE0MDU1OWQyMTcxMWI4MjBhNTI3MTQyLi5lYTM1NGEwY2ZmZjNjMjRlNTQ4MGQyOWYz
NGNkZDc5YWFlMWU3YjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9u
Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
RnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Db25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0V2l0
aEZ1bmN0aW9uQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
Y2FsbEZ1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKaW5kZXggMjMwN2FjZWNjNTA0ZGVhNzU5
NDEwOTkyNDc0YmJiY2E1OWViMTBmMS4uZDgxYWM2MDZmNzRkODUyYjhkYmVlOTNkZGQ1Njc2NThi
ZTA3NDk5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rp
b25FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5j
dGlvbkV4ZWN1dGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJGdW5jdGlv
bkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uRXhlY3V0YWJsZSJf
cywgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFibGUpIH07CiAKIEZ1bmN0aW9uRXhlY3V0YWJsZTo6
RnVuY3Rpb25FeGVjdXRhYmxlKFZNJiB2bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBVbmxp
bmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogdW5saW5rZWRFeGVjdXRhYmxlLCBJbnRyaW5zaWMgaW50
cmluc2ljLCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbikKICAgICA6IFNjcmlwdEV4ZWN1
dGFibGUodm0uZnVuY3Rpb25FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCB2bSwgc291cmNlLCB1
bmxpbmtlZEV4ZWN1dGFibGUtPmxleGljYWxTY29wZUZlYXR1cmVzKCksIHVubGlua2VkRXhlY3V0
YWJsZS0+ZGVyaXZlZENvbnRleHRUeXBlKCksIGZhbHNlLCBpc0luc2lkZU9yZGluYXJ5RnVuY3Rp
b24gfHwgIXVubGlua2VkRXhlY3V0YWJsZS0+aXNBcnJvd0Z1bmN0aW9uKCksIEV2YWxDb250ZXh0
VHlwZTo6Tm9uZSwgaW50cmluc2ljKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IDFkNTJhYmY1ODVjMmJhYmVkNmM4NGI1
OTk3NGJiYTk2NzNkYTBmYTkuLmM5YzlhOGFjN2UyNDcxMThhNmJmMzRlMmIyNWE1NWU5ZDBkNDRh
M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblBy
b3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvblByb3RvdHlwZSk7CiAKLWNv
bnN0IENsYXNzSW5mbyBGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0
aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblByb3RvdHlwZSkgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25Qcm90b0Z1bmNUb1N0cmluZyk7CiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsRnVuY3Rpb25Qcm90b3R5cGUpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcAppbmRleCBh
MTNkZmE0NTY2ODMxODhmNzk0ZDc5OTM2YTkyMTM4NTYxZjIzMjcwLi40YTliNjQwNGRkNGM3M2Vl
Yzc5NDM4NjljNTg0NDVmYmI0MjRiZjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9GdW5jdGlvblJhcmVEYXRhLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUmFyZURhdGE6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uUmFyZURhdGEiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEZ1bmN0aW9uUmFyZURhdGEpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rp
b25SYXJlRGF0YTo6c19pbmZvID0geyAiRnVuY3Rpb25SYXJlRGF0YSJfcywgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblJhcmVEYXRhKSB9Owog
CiBGdW5jdGlvblJhcmVEYXRhKiBGdW5jdGlvblJhcmVEYXRhOjpjcmVhdGUoVk0mIHZtLCBFeGVj
dXRhYmxlQmFzZSogZXhlY3V0YWJsZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5k
ZXggN2ZhM2IyMTE2MjM2ODdjMWE5OWIzNTUxOGQyYjRkMDQyN2Q0Nzc2MC4uZjQ5MWU3YzVlN2I3
YzEwM2YzZWMwMTY0M2I1MGMzNGJmYWY3MTRkMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5j
cHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkdlbmVyYXRvckZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkdlbmVy
YXRvckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEdlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9y
KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEdlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCmluZGV4IGFlOWVmMjE4
OGQ4ZmJlMWRmYTU2NGJjOWE0MmRiZDQwNzEyNTdlOTMuLmM0MmVkNDMyNTcxYTYxZDA1NGRkNjI2
MmM0ZTNjY2ZiZTY3NDBmMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9HZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RS
VUNUSUJMRShHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBH
ZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdl
bmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZSkgfTsKIAogR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OkdlbmVy
YXRvckZ1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCBmYTA5YjlkMzA2
ZmVmZTA2MzU4MThhZjJjMjJkYmRlODJiMWNkYzhjLi43ZTgwYjFjMzQ3MTIxYTI0NzFhMTc3MDgy
YTc3N2IyMTBjYzkzNmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9HZW5lcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0dlbmVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IkdlbmVyYXRvciIsICZCYXNlOjpzX2luZm8sICZnZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gR2VuZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiX3MsICZC
YXNlOjpzX2luZm8sICZnZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShHZW5lcmF0b3JQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgR2VuZXJh
dG9yUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IGZhZDJj
MjNmNzEwOTI5NzBiNWVjMDhlODE0ODRmMjE5MjEzMDkwNzcuLmU2NmUwMzM0ZTU5Njk3MzU2N2Y5
MWQyYWY3ZDU2Mjk0MjZiMDhiMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0dldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvR2V0dGVyU2V0dGVyLmNwcApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
U1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAK
LWNvbnN0IENsYXNzSW5mbyBHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIs
IG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0
dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEdldHRlclNldHRlcjo6c19pbmZvID0geyAiR2V0dGVy
U2V0dGVyIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEdldHRlclNldHRlcikgfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgR2V0
dGVyU2V0dGVyOjp2aXNpdENoaWxkcmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0
b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVj
dXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFi
bGUuY3BwCmluZGV4IDAwYjY1YzBiYTgyMjY4YjQ4MjY5NTQyMWQwODkyYmQ3ZDMzYjhiM2MuLjc1
ZTg0YjM4ZmY3MjdiMzJjOGViMDAxMTZhMGIxZDBhZDg0MGJmZWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwCkBAIC0zMCw2ICsz
MCw2IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsRXhlY3V0
YWJsZTo6c19pbmZvID0geyAiR2xvYmFsRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsRXhlY3V0YWJsZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBHbG9iYWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJHbG9iYWxFeGVjdXRh
YmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEdsb2JhbEV4ZWN1dGFibGUpIH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwCmluZGV4IGQxYzRjNWNmOTZl
OTc1NGYyMzJiZTUyNjUwZjJlZThkMmI0MmU2NTIuLmVhYmE2NGU2ZDhlMjZiMWU1ZjdmZWIxZGY0
NTA1MDY3ZjEwYjIzNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0hhc2hNYXBJbXBsLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNo
TWFwSW1wbC5jcHAKQEAgLTM2LDExICszNiwxMSBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lU
SF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhSwog
CiB0ZW1wbGF0ZTw+CiBjb25zdCBDbGFzc0luZm8gSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0
RGF0YUtleT46OnNfaW5mbyA9Ci0gICAgeyAiSGFzaE1hcEJ1Y2tldCIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVj
a2V0RGF0YUtleT4pIH07CisgICAgeyAiSGFzaE1hcEJ1Y2tldCJfcywgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNr
ZXREYXRhS2V5PikgfTsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEhhc2hNYXBCdWNr
ZXQ8SGFzaE1hcEJ1Y2tldERhdGFLZXlWYWx1ZT46OnNfaW5mbyA9Ci0gICAgeyAiSGFzaE1hcEJ1
Y2tldCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFz
aE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleVZhbHVlPikgfTsKKyAgICB7ICJIYXNoTWFw
QnVja2V0Il9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFLZXlWYWx1ZT4pIH07CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIERhdGE+CiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAppbmRleCBkNWJj
NDk0MDk1N2U1NTJiZjY0YTUwYTU5MDJjMTEwYzE1MjZkYjkxLi4wMWJjMDg2YWY4NDk4MGY4NmEw
NGJiMmFkZDliNThhMTRkYmU2MTg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGVybmFs
RnVuY3Rpb24pOwogCi1jb25zdCBDbGFzc0luZm8gSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEludGVybmFsRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSW50ZXJuYWxG
dW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlvbikgfTsKIAogSW50
ZXJuYWxGdW5jdGlvbjo6SW50ZXJuYWxGdW5jdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBOYXRpdmVGdW5jdGlvbiBmdW5jdGlvbkZvckNhbGwsIE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0
aW9uRm9yQ29uc3RydWN0KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvci5jcHAKaW5kZXggYjZiYjc1MTU4MGQ3
NjgyZTE2NmE0NTk2NWYzMjMyOWJlMmM0YzY1NS4uMzY5NzU1MTEzNDlhZjNhNDU4OWEzYTAxNWRm
MGU1MWEyOWFkZTJlMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bENvbGxhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
Q29sbGF0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bENvbGxhdG9yOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3I6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
Q29sbGF0b3IpIH07CiAKIG5hbWVzcGFjZSBJbnRsQ29sbGF0b3JJbnRlcm5hbCB7CiBjb25zdGV4
cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CkBAIC0xNzIsNyArMTcyLDcgQEAgdm9pZCBJbnRsQ29s
bGF0b3I6OmluaXRpYWxpemVDb2xsYXRvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1ZhbHVlIGxvY2EKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCiAg
ICAgewotICAgICAgICBTdHJpbmcgY29sbGF0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBudWxscHRy
LCBudWxscHRyKTsKKyAgICAgICAgU3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwg
QVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICAgICAgaWYgKCFjb2xsYXRpb24u
aXNOdWxsKCkpIHsKICAgICAgICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5
cGUoY29sbGF0aW9uKSkgewpAQCAtMTg4LDcgKzE4OCw3IEBAIHZvaWQgSW50bENvbGxhdG9yOjpp
bml0aWFsaXplQ29sbGF0b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBs
b2NhCiAgICAgaWYgKG51bWVyaWMgIT0gVHJpU3RhdGU6OkluZGV0ZXJtaW5hdGUpCiAgICAgICAg
IGxvY2FsZU9wdGlvbnNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5
OjpLbildID0gU3RyaW5nKG51bWVyaWMgPT0gVHJpU3RhdGU6OlRydWUgPyAidHJ1ZSJfcyA6ICJm
YWxzZSJfcyk7CiAKLSAgICBTdHJpbmcgY2FzZUZpcnN0T3B0aW9uID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAi
dXBwZXIiLCAibG93ZXIiLCAiZmFsc2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1
cHBlclwiLCBcImxvd2VyXCIsIG9yIFwiZmFsc2VcIiIsIG51bGxwdHIpOworICAgIFN0cmluZyBj
YXNlRmlyc3RPcHRpb24gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+Y2FzZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIg
fSwgImNhc2VGaXJzdCBtdXN0IGJlIGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJm
YWxzZVwiIl9zLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWNhc2VGaXJzdE9wdGlvbi5pc051bGwoKSkKICAg
ICAgICAgbG9jYWxlT3B0aW9uc1tzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUmVsZXZhbnRFeHRlbnNp
b25LZXk6OktmKV0gPSBjYXNlRmlyc3RPcHRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMGJj
NWFhMzdkN2NkZTAyMDMzZDczZTlmODVjYjJlMTMxNzMxMDMyOS4uOTRlZWQ4N2ZiMzgxNmQ3ZmVj
OGI3ZmNhODkyOTY3ODg4MTU1YWM0MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcApAQCAtNDgsNyArNDgs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNh
bGxJbnRsQ29sbGF0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3Ry
dWN0SW50bENvbGxhdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZj
b2xsYXRvckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bENvbGxhdG9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19p
bmZvLCAmY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxDb2xsYXRvckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxDb2xs
YXRvckNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJv
dG90eXBlLmNwcAppbmRleCAwNTljMTk1ZmIwMzU1ZDQ1NTA3MTZhZWI4NGM1OTkwMWM4MmQ0NTMx
Li5kMGY5YjZjNjE2M2Y0NzE1YjU3ZTg1ZTQwNjMxMDhiYzhmMWQzMTkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5j
cHAKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50
bENvbGxhdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEludGxDb2xsYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Db2xsYXRvciIsICZC
YXNlOjpzX2luZm8sICZjb2xsYXRvclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEludGxDb2xsYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRs
Q29sbGF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuQ29sbGF0b3IiX3MsICZCYXNlOjpz
X2luZm8sICZjb2xsYXRvclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxDb2xsYXRvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0
b3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBjb2xsYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcApp
bmRleCBjMmQ0OWRhOThhNjYwYmM2MmIwNGFmZTE5YzU3OGYyNTkyZmQ0YmI5Li5hMWM2MTQ1YzE3
MWM0MGQxODhmMDcyOTU4NWYwNWVkYjc1YzBhYWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKQEAgLTYwLDcgKzYwLDcg
QEAgdm9pZCBVRGF0ZUludGVydmFsRm9ybWF0RGVsZXRlcjo6b3BlcmF0b3IoKShVRGF0ZUludGVy
dmFsRm9ybWF0KiBmb3JtYXR0ZXIpCiAgICAgICAgIHVkdGl0dmZtdF9jbG9zZShmb3JtYXR0ZXIp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxEYXRlVGltZUZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVG
b3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07CiAKIG5hbWVz
cGFjZSBJbnRsRGF0ZVRpbWVGb3JtYXRJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wg
dmVyYm9zZSA9IGZhbHNlOwpAQCAtNjA0LDcgKzYwNCw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9y
bWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwKICAgICBMb2NhbGVNYXRjaGVyIGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1h
dGNoZXI+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0
Y2hlciwgeyB7ICJsb29rdXAiX3MsIExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZp
dCJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUg
ZWl0aGVyIFwibG9va3VwXCIgb3IgXCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0
Rml0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3Ry
aW5nIGNhbGVuZGFyID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPmNhbGVuZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0
cmluZyBjYWxlbmRhciA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVND
SUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQo
KSk7CiAgICAgaWYgKCFjYWxlbmRhci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29k
ZUxvY2FsZUlkZW50aWZpZXJUeXBlKGNhbGVuZGFyKSkgewpAQCAtNjE0LDcgKzYxNCw3IEBAIHZv
aWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwKICAgICAgICAgbG9jYWxlT3B0aW9uc1tzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oUmVsZXZhbnRFeHRlbnNpb25LZXk6OkNhKV0gPSBjYWxlbmRhcjsKICAgICB9CiAK
LSAgICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmpl
Y3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBudWxs
cHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5
c3RlbSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFudW1iZXJp
bmdTeXN0ZW0uaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlm
aWVyVHlwZShudW1iZXJpbmdTeXN0ZW0pKSB7CkBAIC04ODEsNyArODgxLDcgQEAgdm9pZCBJbnRs
RGF0ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVEYXRlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LAogICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICBpbnRsU3RyaW5nT3B0
aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0Y2hl
ciwgeyAiYmFzaWMiLCAiYmVzdCBmaXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0aGVy
IFwiYmFzaWNcIiBvciBcImJlc3QgZml0XCIiLCAiYmVzdCBmaXQiKTsKKyAgICBpbnRsU3RyaW5n
T3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Zm9ybWF0TWF0
Y2hlciwgeyAiYmFzaWMiLCAiYmVzdCBmaXQiIH0sICJmb3JtYXRNYXRjaGVyIG11c3QgYmUgZWl0
aGVyIFwiYmFzaWNcIiBvciBcImJlc3QgZml0XCIiX3MsICJiZXN0IGZpdCJfcyk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIG1fZGF0ZVN0eWxlID0gaW50
bE9wdGlvbjxEYXRlVGltZVN0eWxlPihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5
TmFtZXMtPmRhdGVTdHlsZSwgeyB7ICJmdWxsIl9zLCBEYXRlVGltZVN0eWxlOjpGdWxsIH0sIHsg
ImxvbmciX3MsIERhdGVUaW1lU3R5bGU6OkxvbmcgfSwgeyAibWVkaXVtIl9zLCBEYXRlVGltZVN0
eWxlOjpNZWRpdW0gfSwgeyAic2hvcnQiX3MsIERhdGVUaW1lU3R5bGU6OlNob3J0IH0gfSwgImRh
dGVTdHlsZSBtdXN0IGJlIFwiZnVsbFwiLCBcImxvbmdcIiwgXCJtZWRpdW1cIiwgb3IgXCJzaG9y
dFwiIl9zLCBEYXRlVGltZVN0eWxlOjpOb25lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNw
cAppbmRleCBiNDUxZWUwOWIxZGRmMTdhZjU3MmFjOWE0ZWJiOTE3M2VlNmYyYjczLi4zZjg1MjFk
MmIyN2MyM2EyNmY4YTgyOTllMzRiYWFiY2RhZDNiMTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsCiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywg
JmRhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0
b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGUuY3BwCmluZGV4IGU3NDEyY2MyODIxMmZiYTlmYTIxODlkZjY0NDY4YTRiM2ZjMzgxMGEu
LmVjMTgxNTY5ODczODcxZmExZjMwYjlkYTg1MzM3ZDA2MzVlYmM4ZDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlLmNwcApAQCAtNTAsNyArNTAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihpbnRsRGF0ZVRpbWVGb3JtYXRGdW5jRm9ybWF0RGF0ZVRpbWUpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZTo6
c19pbmZvID0geyAiSW50bC5EYXRlVGltZUZvcm1hdCIsICZCYXNlOjpzX2luZm8sICZkYXRlVGlt
ZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxE
YXRlVGltZUZvcm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVG
b3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuRGF0ZVRpbWVGb3JtYXQiX3MsICZCYXNl
OjpzX2luZm8sICZkYXRlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNl
IGZvciBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGltZUZv
cm1hdFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxEaXNwbGF5TmFtZXMuY3BwCmluZGV4IGZiZTg2ZTRiN2VhYTA2M2NiYjY0NjNiOWExZmE5
ZjcxYjI5MTg3ZTQuLmE4YmNmYmJhZDE2ZDMxZTViZGI0YjhjODZmNWI0NDJhOTRhMTExMWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXMu
Y3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bERpc3BsYXlOYW1lczo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzKSB9
OworY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9IHsgIk9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGlzcGxheU5hbWVzKSB9OwogCiBJbnRsRGlzcGxheU5hbWVzKiBJbnRsRGlzcGxheU5hbWVz
OjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3Ry
dWN0b3IuY3BwCmluZGV4IGVhMDUxYmIzNGM1ZTFkOTIyZDdiZjA4NGYxM2E1ZTQ2ZjEwYzQzMjQu
LjBhM2JmOGQ0OTQ0ODI3NGQ2MTdkYTE5OWE0NDIwMGJhNmNiNjRlMjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc0Nv
bnN0cnVjdG9yLmNwcApAQCAtNDIsNyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihpbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3JTdXBwb3J0ZWRMb2NhbGVzT2YpOwog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmZGlzcGxheU5h
bWVzQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlz
cGxheU5hbWVzQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERpc3BsYXlOYW1l
c0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmRp
c3BsYXlOYW1lc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxEaXNw
bGF5TmFtZXNDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIGRpc3BsYXlOYW1lc0NvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNw
bGF5TmFtZXNQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKaW5kZXggNDVhNjIwNWQxMmI4ZDhiMzZkMmY4YmFh
OWU3NzNlZTQxMmMwMjU0Mi4uNmMxODVlYTU5MDBhMDQzZTI0MmZjZGE1MzFmNGE2Y2ZkODAwZmM5
YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlO
YW1lc1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bERpc3BsYXlOYW1lc1Byb3RvdHlwZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZUZ1bmNSZXNvbHZl
ZE9wdGlvbnMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNw
bGF5TmFtZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIiwgJkJhc2U6
OnNfaW5mbywgJmRpc3BsYXlOYW1lc1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5EaXNwbGF5TmFtZXMi
X3MsICZCYXNlOjpzX2luZm8sICZkaXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkaXNwbGF5
TmFtZXNQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bExpc3RGb3JtYXQuY3BwCmluZGV4IGY1YzMwNTcwOThjOTQ4ZjMxNGNmMWJjZmQ2OWNkZTg4
ZDI1ZTkzM2YuLjc4NWM5M2ZjNTQ0ZWM3ZDhjZWVlYmMxOTg5ZDA3ZmFkMjJiNTQ1NDUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKQEAg
LTQ5LDcgKzQ5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRs
TGlzdEZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBJbnRsTGlzdEZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0
KSB9OwogCiAvLyBXZSBkbyBub3QgdXNlIElDVURlbGV0ZXI8dWxpc3RmbXRfY2xvc2U+IGJlY2F1
c2Ugd2UgZG8gbm90IHdhbnQgdG8gaW5jbHVkZSB1bGlzdGZvcm1hdHRlci5oIGluIEludGxMaXN0
Rm9ybWF0LmguCiAvLyB1bGlzdGZvcm1hdHRlci5oIG5lZWRzIHRvIGJlIGluY2x1ZGVkIHdpdGgg
I3VuZGVmIFVfSElERV9EUkFGVF9BUEksIGFuZCB3ZSB3b3VsZCBsaWtlIHRvIG1pbmltaXplIHRo
aXMgZWZmZWN0IGluIEludGxMaXN0Rm9ybWF0LmNwcC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggNWQwMDg0NTNmZmY2ZmY3YWQ3M2JmNjk2OTZhNTI5NzQ1MTAwZWZhNS4uNjJmZjJkZTk0NWZi
ZDg0NGI5N2ZjZjYyYzk3MDlhMjdkNmJjOTFiMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAg
LTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bExpc3RG
b3JtYXRDb25zdHJ1Y3RvclN1cHBvcnRlZExvY2FsZXNPZik7CiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmbGlzdEZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bExpc3RGb3JtYXRDb25zdHJ1Y3RvcikgfTsK
K2NvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07
CiAKIC8qIFNvdXJjZSBmb3IgSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2lu
IGxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggYmY3Mzdh
YzViYTRhYmUxMjFiZWM2MTVmODMwZjJiYjNjNjA2YjBiZi4uMjFhZWIwNTc2NTNmYzkzYTBhMzQ5
YjcwM2JjNWM3MWViMTBkNjg1MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bExpc3RGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0UHJvdG90eXBlLmNwcApAQCAtNDEsNyArNDEsNyBA
QCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsTGlzdEZvcm1hdFByb3RvdHlw
ZUZ1bmNSZXNvbHZlZE9wdGlvbnMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEludGxMaXN0Rm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQi
LCAmQmFzZTo6c19pbmZvLCAmbGlzdEZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEludGxMaXN0Rm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxpc3RGb3JtYXQi
X3MsICZCYXNlOjpzX2luZm8sICZsaXN0Rm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSW50bExpc3RGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJj
ZSBmb3IgSW50bExpc3RGb3JtYXRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBsaXN0Rm9ybWF0UHJv
dG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxMb2NhbGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5j
cHAKaW5kZXggZmNjYWQzMTE4OWE4YWQ3ZTAwMjQ5ZDQ5MjBjOWFhOGJjNjA0N2RhNS4uZWIzYmY5
MmZjYzQ3NjQwNzRiZmUzMjQ1YTc1ODE5N2QyNjY4OTA4MiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlOjpzX2luZm8gPSB7ICJPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEludGxMb2NhbGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bExvY2FsZTo6c19pbmZvID0geyAi
T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxMb2NhbGUpIH07CiAKIG5hbWVzcGFjZSBJbnRsTG9jYWxlSW50ZXJuYWwgewog
c3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKQEAgLTI1MSwyMSArMjUxLDIx
IEBAIHZvaWQgSW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRhCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBTdHJpbmcgbGFuZ3VhZ2UgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+bGFuZ3VhZ2UsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7Cisg
ICAgU3RyaW5nIGxhbmd1YWdlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlv
bnMsIHZtLnByb3BlcnR5TmFtZXMtPmxhbmd1YWdlLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
LCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
dm9pZCgpKTsKICAgICBpZiAoIWxhbmd1YWdlLmlzTnVsbCgpICYmICFpc1VuaWNvZGVMYW5ndWFn
ZVN1YnRhZyhsYW5ndWFnZSkpIHsKICAgICAgICAgdGhyb3dSYW5nZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJsYW5ndWFnZSBpcyBub3QgYSB3ZWxsLWZvcm1lZCBsYW5ndWFnZSB2YWx1ZSJf
cyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0
cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlw
dCwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgc2NyaXB0ID0gaW50bFN0cmlu
Z09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNjcmlwdCwg
eyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFzY3JpcHQuaXNOdWxs
KCkgJiYgIWlzVW5pY29kZVNjcmlwdFN1YnRhZyhzY3JpcHQpKSB7CiAgICAgICAgIHRocm93UmFu
Z2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAic2NyaXB0IGlzIG5vdCBhIHdlbGwtZm9ybWVk
IHNjcmlwdCB2YWx1ZSJfcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcg
cmVnaW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPnJlZ2lvbiwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgcmVn
aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5
TmFtZXMtPnJlZ2lvbiwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpu
dWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYg
KCFyZWdpb24uaXNOdWxsKCkgJiYgIWlzVW5pY29kZVJlZ2lvblN1YnRhZyhyZWdpb24pKSB7CiAg
ICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAicmVnaW9uIGlzIG5v
dCBhIHdlbGwtZm9ybWVkIHJlZ2lvbiB2YWx1ZSJfcyk7CkBAIC0yNzUsNyArMjc1LDcgQEAgdm9p
ZCBJbnRsTG9jYWxlOjppbml0aWFsaXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIGNvbnN0IFN0cmluZyYgdGEKICAgICBpZiAoIWxhbmd1YWdlLmlzTnVsbCgpIHx8ICFzY3Jp
cHQuaXNOdWxsKCkgfHwgIXJlZ2lvbi5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQub3ZlcnJp
ZGVMYW5ndWFnZVNjcmlwdFJlZ2lvbihsYW5ndWFnZSwgc2NyaXB0LCByZWdpb24pOwogCi0gICAg
U3RyaW5nIGNhbGVuZGFyID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPmNhbGVuZGFyLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAg
IFN0cmluZyBjYWxlbmRhciA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwg
QVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZv
aWQoKSk7CiAgICAgaWYgKCFjYWxlbmRhci5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5p
Y29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKGNhbGVuZGFyKSkgewpAQCAtMjg1LDcgKzI4NSw3IEBA
IHZvaWQgSW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBjb25zdCBTdHJpbmcmIHRhCiAgICAgICAgIGxvY2FsZUlELnNldEtleXdvcmRWYWx1
ZSgiY2FsZW5kYXIiX3MsIGNhbGVuZGFyKTsKICAgICB9CiAKLSAgICBTdHJpbmcgY29sbGF0aW9u
ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPmNvbGxhdGlvbiwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY29sbGF0
aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5
TmFtZXMtPmNvbGxhdGlvbiwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFs
OjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAg
aWYgKCFjb2xsYXRpb24uaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJ
ZGVudGlmaWVyVHlwZShjb2xsYXRpb24pKSB7CkBAIC0yOTUsMTIgKzI5NSwxMiBAQCB2b2lkIElu
dGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgU3RyaW5nJiB0YQogICAgICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGxh
dGlvbiJfcywgY29sbGF0aW9uKTsKICAgICB9CiAKLSAgICBTdHJpbmcgaG91ckN5Y2xlID0gaW50
bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhv
dXJDeWNsZSwgeyAiaDExIiwgImgxMiIsICJoMjMiLCAiaDI0IiB9LCAiaG91ckN5Y2xlIG11c3Qg
YmUgXCJoMTFcIiwgXCJoMTJcIiwgXCJoMjNcIiwgb3IgXCJoMjRcIiIsIG51bGxwdHIpOworICAg
IFN0cmluZyBob3VyQ3ljbGUgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+aG91ckN5Y2xlLCB7ICJoMTEiLCAiaDEyIiwgImgyMyIsICJo
MjQiIH0sICJob3VyQ3ljbGUgbXVzdCBiZSBcImgxMVwiLCBcImgxMlwiLCBcImgyM1wiLCBvciBc
ImgyNFwiIl9zLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWhvdXJDeWNsZS5pc051bGwoKSkKICAgICAgICAg
bG9jYWxlSUQuc2V0S2V5d29yZFZhbHVlKCJob3VycyJfcywgaG91ckN5Y2xlKTsKIAotICAgIFN0
cmluZyBjYXNlRmlyc3QgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+Y2FzZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIg
fSwgImNhc2VGaXJzdCBtdXN0IGJlIGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJm
YWxzZVwiIiwgbnVsbHB0cik7CisgICAgU3RyaW5nIGNhc2VGaXJzdCA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsg
InVwcGVyIiwgImxvd2VyIiwgImZhbHNlIiB9LCAiY2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwi
dXBwZXJcIiwgXCJsb3dlclwiLCBvciBcImZhbHNlXCIiX3MsIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2Fz
ZUZpcnN0LmlzTnVsbCgpKQogICAgICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbGNh
c2VmaXJzdCJfcywgY2FzZUZpcnN0KTsKQEAgLTMxMCw3ICszMTAsNyBAQCB2b2lkIEludGxMb2Nh
bGU6OmluaXRpYWxpemVMb2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3Qg
U3RyaW5nJiB0YQogICAgIGlmIChudW1lcmljICE9IFRyaVN0YXRlOjpJbmRldGVybWluYXRlKQog
ICAgICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNvbG51bWVyaWMiX3MsIG51bWVyaWMg
PT0gVHJpU3RhdGU6OlRydWUgPyAieWVzIiA6ICJubyIpOwogCi0gICAgU3RyaW5nIG51bWJlcmlu
Z1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAg
U3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBv
cHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRl
cmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7
CiAgICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lz
dGVtKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExv
Y2FsZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxM
b2NhbGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzc2NTNiYjM3MTM5NTc3MjI2NWVhZWVjM2UxMTVk
YjBmMThlYmJiYy4uMDkyZDhhNDRmMjFlYWIxZjQ5NTIxOWJhNmQxZjdmYWQxNjBiZTQ4NSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlQ29u
c3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSW50bExvY2FsZUNvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxMb2NhbGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxMb2NhbGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxl
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVDb25zdHJ1Y3Rvcikg
fTsKIAogSW50bExvY2FsZUNvbnN0cnVjdG9yKiBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OmNyZWF0
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBJbnRsTG9jYWxlUHJvdG90eXBlKiBsb2Nh
bGVQcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsTG9jYWxlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxMb2NhbGVQcm90b3R5cGUuY3BwCmluZGV4IDA5MGM5MjUzMjMxZDYyMzlmOTQ5ZDM4MjZi
MGRmNjQ2NDI2MDkyOGYuLjMyZDIyODI0ZGVjNmVkYTVmYzRmYmZjZTAwNGRmN2U4ZTAyNmQ4ZTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVQ
cm90b3R5cGUuY3BwCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
R0VUVEVSKGludGxMb2NhbGVQcm90b3R5cGVHZXR0ZXJXZWVrSW5mbyk7CiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bExvY2FsZVByb3RvdHlwZTo6c19pbmZvID0geyAi
SW50bC5Mb2NhbGUiLCAmQmFzZTo6c19pbmZvLCAmbG9jYWxlUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bExvY2FsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBJbnRsTG9jYWxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkxvY2FsZSJfcywg
JkJhc2U6OnNfaW5mbywgJmxvY2FsZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEludGxMb2NhbGVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bExv
Y2FsZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGxvY2FsZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCmluZGV4
IDk1M2MzOWZlNjRhOWU4NGQwYmI2YzEwYzA0MmIwNzNhZjY5ZTM1NjkuLmNhMDQyNDk4NTAxZjI2
ODA4N2Y0NDUxZWJmZWU3MjljYWVkOTEzOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXQuY3BwCkBAIC01MSw3ICs1MSw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdDo6c19pbmZv
ID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0KSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1i
ZXJGb3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0KSB9OwogCiBuYW1l
c3BhY2UgSW50bE51bWJlckZvcm1hdEludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2
ZXJib3NlID0gZmFsc2U7CkBAIC0zMDQsNyArMzA0LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0
Ojppbml0aWFsaXplTnVtYmVyRm9ybWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmEKICAgICBMb2NhbGVNYXRjaGVyIGxvY2FsZU1hdGNoZXIgPSBpbnRsT3B0aW9uPExvY2FsZU1h
dGNoZXI+KGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bG9jYWxlTWF0
Y2hlciwgeyB7ICJsb29rdXAiX3MsIExvY2FsZU1hdGNoZXI6Okxvb2t1cCB9LCB7ICJiZXN0IGZp
dCJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCB9IH0sICJsb2NhbGVNYXRjaGVyIG11c3QgYmUg
ZWl0aGVyIFwibG9va3VwXCIgb3IgXCJiZXN0IGZpdFwiIl9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0
Rml0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogCi0gICAgU3Ry
aW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRp
b25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVs
bHB0cik7CisgICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xv
YmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsg
fSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVt
LmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUo
bnVtYmVyaW5nU3lzdGVtKSkgewpAQCAtMzI4LDcgKzMyOCw3IEBAIHZvaWQgSW50bE51bWJlckZv
cm1hdDo6aW5pdGlhbGl6ZU51bWJlckZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhCiAgICAgbV9zdHlsZSA9IGludGxPcHRpb248U3R5bGU+KGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+c3R5bGUsIHsgeyAiZGVjaW1hbCJfcywgU3R5bGU6OkRl
Y2ltYWwgfSwgeyAicGVyY2VudCJfcywgU3R5bGU6OlBlcmNlbnQgfSwgeyAiY3VycmVuY3kiX3Ms
IFN0eWxlOjpDdXJyZW5jeSB9LCB7ICJ1bml0Il9zLCBTdHlsZTo6VW5pdCB9IH0sICJzdHlsZSBt
dXN0IGJlIGVpdGhlciBcImRlY2ltYWxcIiwgXCJwZXJjZW50XCIsIFwiY3VycmVuY3lcIiwgb3Ig
XCJ1bml0XCIiX3MsIFN0eWxlOjpEZWNpbWFsKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCB2b2lkKCkpOwogCi0gICAgU3RyaW5nIGN1cnJlbmN5ID0gaW50bFN0cmluZ09wdGlvbihn
bG9iYWxPYmplY3QsIG9wdGlvbnMsIElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5j
eSIpLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBjdXJyZW5jeSA9IGludGxT
dHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5n
KHZtLCAiY3VycmVuY3kiKSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFs
OjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAg
aWYgKCFjdXJyZW5jeS5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzV2VsbEZvcm1lZEN1cnJl
bmN5Q29kZShjdXJyZW5jeSkpIHsKQEAgLTM1NSw3ICszNTUsNyBAQCB2b2lkIEludGxOdW1iZXJG
b3JtYXQ6OmluaXRpYWxpemVOdW1iZXJGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlNWYQogICAgIG1fY3VycmVuY3lTaWduID0gaW50bE9wdGlvbjxDdXJyZW5jeVNpZ24+KGds
b2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImN1cnJlbmN5
U2lnbiIpLCB7IHsgInN0YW5kYXJkIl9zLCBDdXJyZW5jeVNpZ246OlN0YW5kYXJkIH0sIHsgImFj
Y291bnRpbmciX3MsIEN1cnJlbmN5U2lnbjo6QWNjb3VudGluZyB9IH0sICJjdXJyZW5jeVNpZ24g
bXVzdCBiZSBlaXRoZXIgXCJzdGFuZGFyZFwiIG9yIFwiYWNjb3VudGluZ1wiIl9zLCBDdXJyZW5j
eVNpZ246OlN0YW5kYXJkKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkp
OwogCi0gICAgU3RyaW5nIHVuaXQgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgInVuaXQiKSwgeyB9LCBudWxscHRyLCBu
dWxscHRyKTsKKyAgICBTdHJpbmcgdW5pdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0
LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAidW5pdCIpLCB7IH0sIEFTQ0lJ
TGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBzdGQ6Om9wdGlvbmFsPFdlbGxGb3JtZWRVbml0
PiB3ZWxsRm9ybWVkVW5pdDsKICAgICBpZiAoIXVuaXQuaXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29u
c3RydWN0b3IuY3BwCmluZGV4IDQxNjQwODk5N2MxOGY3Yzc2MjhmNzc1YjhkNDFkZjc3MjQyYTRk
MTYuLjZiZmI4OTllYjlkMjgyNDEyY2UyODM1NTFiYjJiOTM0NThlMDE1NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1h
dENvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihpbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTG9jYWxl
cwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
TnVtYmVyRm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZv
cm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywg
Jm51bWJlckZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxO
dW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIG51bWJlckZvcm1hdENvbnN0cnVj
dG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxO
dW1iZXJGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAKaW5kZXggOGRiMjk0MDhhZGZhYmNhMTgzNmQx
OTBkOGNkMWI4ZTU1ODU5ZmFlYi4uMDUxZmZlOGFiMzQ4Mjc2MTdiZjU1ODA4ZTM4OGZmNGE2YTg5
YjQxYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJl
ckZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bE51bWJlckZvcm1hdFByb3RvdHlwZUZ1bmNGb3Jt
YXRSYW5nZVRvUGFydHMKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRs
TnVtYmVyRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCIsICZC
YXNlOjpzX2luZm8sICZudW1iZXJGb3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuTnVtYmVyRm9y
bWF0Il9zLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSkgfTsKIAog
LyogU291cmNlIGZvciBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbnVt
YmVyRm9ybWF0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bE9iamVjdC5jcHAKaW5kZXggMDQ5YmMzOTQ2ODI1NmRlMzZmYmNkZGE4ZmEyNzIyMTliYjMx
OGVmNC4uNWUxNzY5ZTNmNTlhZjkwNThkZmFlOTJlNTc5NjBlZWJkOGZlMGExZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5jcHAKQEAgLTE2OCw3ICsxNjgs
NyBAQCBzdHJ1Y3QgTWF0Y2hlclJlc3VsdCB7CiAgICAgc2l6ZV90IGV4dGVuc2lvbkluZGV4IHsg
MCB9OwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsgIkludGwi
LCAmQmFzZTo6c19pbmZvLCAmaW50bE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSW50bE9iamVjdDo6c19pbmZv
ID0geyAiSW50bCJfcywgJkJhc2U6OnNfaW5mbywgJmludGxPYmplY3RUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShJbnRsT2JqZWN0KSB9OwogCiB2b2lkIFVGaWVsZFBvc2l0aW9u
SXRlcmF0b3JEZWxldGVyOjpvcGVyYXRvcigpKFVGaWVsZFBvc2l0aW9uSXRlcmF0b3IqIGl0ZXJh
dG9yKSBjb25zdAogewpAQCAtNTg4LDcgKzU4OCw3IEBAIFRyaVN0YXRlIGludGxCb29sZWFuT3B0
aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9w
CiAgICAgcmV0dXJuIHRyaVN0YXRlKHZhbHVlLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKTsKIH0K
IAotU3RyaW5nIGludGxTdHJpbmdPcHRpb24oSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eSwgc3RkOjppbml0aWFsaXpl
cl9saXN0PGNvbnN0IGNoYXIqPiB2YWx1ZXMsIGNvbnN0IGNoYXIqIG5vdEZvdW5kLCBjb25zdCBj
aGFyKiBmYWxsYmFjaykKK1N0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHksIHN0
ZDo6aW5pdGlhbGl6ZXJfbGlzdDxjb25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90
Rm91bmQsIEFTQ0lJTGl0ZXJhbCBmYWxsYmFjaykKIHsKICAgICAvLyBHZXRPcHRpb24gKG9wdGlv
bnMsIHByb3BlcnR5LCB0eXBlPSJzdHJpbmciLCB2YWx1ZXMsIGZhbGxiYWNrKQogICAgIC8vIGh0
dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTQwMi8jc2VjLWdldG9wdGlvbgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCmluZGV4IDk4ZTliYjU4M2U1NWJiN2NmOTdi
MGE4NTgxYzBiOGM2NWNmMWM5OTcuLjM0MTE3NjQyMjhmYWI0ODIyYTZjYmU4MDZlODhlODYxZjM0
MmZiOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmpl
Y3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKQEAg
LTEyMiw3ICsxMjIsNyBAQCBUaW1lWm9uZUlEIHV0Y1RpbWVab25lSURTbG93KCk7CiBDYWxlbmRh
cklEIHV0Y1RpbWVab25lSUQoKTsKIAogVHJpU3RhdGUgaW50bEJvb2xlYW5PcHRpb24oSlNHbG9i
YWxPYmplY3QqLCBKU09iamVjdCogb3B0aW9ucywgUHJvcGVydHlOYW1lKTsKLVN0cmluZyBpbnRs
U3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5
TmFtZSwgc3RkOjppbml0aWFsaXplcl9saXN0PGNvbnN0IGNoYXIqPiB2YWx1ZXMsIGNvbnN0IGNo
YXIqIG5vdEZvdW5kLCBjb25zdCBjaGFyKiBmYWxsYmFjayk7CitTdHJpbmcgaW50bFN0cmluZ09w
dGlvbihKU0dsb2JhbE9iamVjdCosIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHN0
ZDo6aW5pdGlhbGl6ZXJfbGlzdDxjb25zdCBjaGFyKj4gdmFsdWVzLCBBU0NJSUxpdGVyYWwgbm90
Rm91bmQsIEFTQ0lJTGl0ZXJhbCBmYWxsYmFjayk7CiB1bnNpZ25lZCBpbnRsTnVtYmVyT3B0aW9u
KEpTR2xvYmFsT2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSwgdW5zaWdu
ZWQgbWluaW11bSwgdW5zaWduZWQgbWF4aW11bSwgdW5zaWduZWQgZmFsbGJhY2spOwogdW5zaWdu
ZWQgaW50bERlZmF1bHROdW1iZXJPcHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlLCBQcm9w
ZXJ0eU5hbWUsIHVuc2lnbmVkIG1pbmltdW0sIHVuc2lnbmVkIG1heGltdW0sIHVuc2lnbmVkIGZh
bGxiYWNrKTsKIFZlY3RvcjxjaGFyLCAzMj4gbG9jYWxlSURCdWZmZXJGb3JMYW5ndWFnZVRhZ1dp
dGhOdWxsVGVybWluYXRvcihjb25zdCBDU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzLmNwcAppbmRleCBhODUxMzExYzc0NGI1ZWFi
MTY1YWM3ZjRkNTY3MTAwNmQ4NjY3ODNlLi42OGVkZjE2M2JkNDc5ZmExODYxZTAyM2IyZDc3MjQ3
ODNjNmRmZGViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
UGx1cmFsUnVsZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQ
bHVyYWxSdWxlcy5jcHAKQEAgLTUyLDcgKzUyLDcgQEAgdm9pZCBVUGx1cmFsUnVsZXNEZWxldGVy
OjpvcGVyYXRvcigpKFVQbHVyYWxSdWxlcyogcGx1cmFsUnVsZXMpCiAgICAgICAgIHVwbHJ1bGVz
X2Nsb3NlKHBsdXJhbFJ1bGVzKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxl
czo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXMpIH07Citjb25zdCBDbGFzc0luZm8g
SW50bFBsdXJhbFJ1bGVzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzKSB9Owog
CiB1c2luZyBVRW51bWVyYXRpb25EZWxldGVyID0gSUNVRGVsZXRlcjx1ZW51bV9jbG9zZT47CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxl
c0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVy
YWxSdWxlc0NvbnN0cnVjdG9yLmNwcAppbmRleCA4MTJhYWEyMDAwZTMwYjllNmI5Y2Y3MzA1N2Jl
ZDQ0NDAyMjc4ODE2Li4wMGVmYmE1YzFkZWUyZDY5MjQ0YjJiYTBhNWE0YWUxODU4MzI5NDlkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXND
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKGludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yRnVuY1N1cHBvcnRl
ZExvY2FsZXNPCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFBsdXJh
bFJ1bGVzQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rp
b246OnNfaW5mbywgJnBsdXJhbFJ1bGVzQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBJbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3Ip
IH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiBwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwCmluZGV4
IDYyYzA4YmY5NTdhMTMyZjEyZDZkNGJmYjJkODFjZGIwOThkM2E1OTEuLjJiNGU5NTZjODU0NTlm
NTQ1YTIwYzJmMmQ3OTE2YmVkNjUxYzk4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcApAQCAtNDQs
NyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUGx1cmFsUnVs
ZXNQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
UGx1cmFsUnVsZXMiLCAmQmFzZTo6c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLlBsdXJhbFJ1bGVzIl9zLCAmQmFzZTo6c19pbmZvLCAmcGx1cmFsUnVsZXNQcm90b3R5cGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsUGx1cmFsUnVsZXNQcm90b3R5
cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmx1dC5oCiBA
YmVnaW4gcGx1cmFsUnVsZXNQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcAppbmRleCBlMzI4
YTFjMWY0MGM0OWU2OTU0NTFhNTNkMjk5ZTUyMzE3YjlkNzU2Li45NWM0M2FmNzdlNzc5OWMyZWFi
MzNlNzRmZTBhMTMxYzUwYTU2NjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0LmNwcApAQCAtMzUsNyArMzUsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVG
b3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdCkgfTsKK2NvbnN0
IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFJlbGF0aXZlVGltZUZvcm1hdCkgfTsKIAogbmFtZXNwYWNlIEludGxSZWxhdGl2ZVRpbWVGb3Jt
YXRJbnRlcm5hbCB7CiB9CkBAIC05Niw3ICs5Niw3IEBAIHZvaWQgSW50bFJlbGF0aXZlVGltZUZv
cm1hdDo6aW5pdGlhbGl6ZVJlbGF0aXZlVGltZUZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFs
CiAgICAgTG9jYWxlTWF0Y2hlciBsb2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRj
aGVyPihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNo
ZXIsIHsgeyAibG9va3VwIl9zLCBMb2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQi
X3MsIExvY2FsZU1hdGNoZXI6OkJlc3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVp
dGhlciBcImxvb2t1cFwiIG9yIFwiYmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZp
dCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmlu
ZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxw
dHIpOworICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2Jh
bE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0s
IEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5p
c051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51
bWJlcmluZ1N5c3RlbSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCmlu
ZGV4IGE4MjVjMzY2NzEzYzE0NDkwY2I2ZGRlYjQ1NzZkYmQ1NTZjZjM2NjQuLmQ2N2VjZjI1ZTg3
NjMwODQyZTBjNmE0NThlZjM5MmMxYTJlODI2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENv
bnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihpbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3JGdW5jU3VwcG9ydGVkTAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlbGF0aXZlVGlt
ZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxS
ZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlbGF0aXZlVGltZUZv
cm1hdENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKaW5k
ZXggZDQ3OTQ1YWQ2YTk3MmFmZmY1ZTYzOGJhZDk0ZTQyZTA5Zjk5ZTMyMS4uYWZiNDBhN2M3NzM1
ZDc0OWQzNDNhYmVkODQyOWI1ZjhmYjFmMjNmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3Rv
dHlwZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZUZ1bmNSZXNvbHZlZE9wdGkKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlJlbGF0aXZlVGltZUZvcm1hdCIsICZCYXNlOjpzX2lu
Zm8sICZyZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
UmVsYXRpdmVUaW1lRm9ybWF0Il9zLCAmQmFzZTo6c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0
UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZl
VGltZUZvcm1hdFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRpdmVUaW1l
Rm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBl
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdt
ZW50SXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21l
bnRJdGVyYXRvci5jcHAKaW5kZXggYTVjZDAzYmU4YmQwOGRlZjExZjYwNGZkNWNlZTc2NTBkMDFh
MDE5ZC4uMDE2YTFjMzIyNjk2YTY3NWIwZmFkNGQ5YmZlOWQyMGU4ZDUyMzQxNSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvci5j
cHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBJbnRsU2VnbWVudEl0ZXJhdG9yOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50SXRlcmF0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZvID0geyAi
T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxTZWdtZW50SXRlcmF0b3IpIH07CiAKIEludGxTZWdtZW50SXRlcmF0b3IqIElu
dGxTZWdtZW50SXRlcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBz
dGQ6OnVuaXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4mJiBz
ZWdtZW50ZXIsIEJveDxWZWN0b3I8VUNoYXI+PiBidWZmZXIsIEpTU3RyaW5nKiBzdHJpbmcsIElu
dGxTZWdtZW50ZXI6OkdyYW51bGFyaXR5IGdyYW51bGFyaXR5KQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJv
dG90eXBlLmNwcAppbmRleCAwN2MwNWNiYzBiY2FlOWMyNWEzZjNjYjAxMWVjMzJhZDhjNTYzMzI1
Li41NTljNThjMzQ0YmI4MzliNGY0NDk5MzIxYTFhMDk4ODYyMDkwODZjIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJh
dG9yUHJvdG90eXBlLmNwcApAQCAtMzksNyArMzksNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihpbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlRnVuY05leHQpOwogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlNlZ21lbnQgU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywg
JnNlZ21lbnRJdGVyYXRvclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50
bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiU2VnbWVudCBTdHJpbmcgSXRl
cmF0b3IiX3MsICZCYXNlOjpzX2luZm8sICZzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUubHV0LmgK
IEBiZWdpbiBzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcAppbmRleCA4ZDg1ZmU3YzljYzJlNjBj
ZmU2YjIyMzgzMzQ5N2RkZjliNGY3Y2IzLi4zZmRhMDVkMjkwNzkwNTg0N2EwYThmMWYxMjVkNDBj
ODFlNWQxZmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2Vn
bWVudGVyLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEludGxTZWdtZW50ZXI6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyOjpzX2luZm8gPSB7ICJPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bFNlZ21lbnRlcikgfTsKIAogSW50bFNlZ21lbnRlciogSW50bFNlZ21lbnRlcjo6Y3JlYXRlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcAppbmRleCAy
NTkwNjEwNTBjZWNiYmFlZDljYTQxMmM0NjA3MTE3OTA5NWU5ZDA0Li5mMWQxZWM0MWQ4YmI2OTM1
ODU1MjM0ZDkzMjY5N2UzNGFlMTIyMjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsU2VnbWVudGVyQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcg
KzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRlckNv
bnN0cnVjdG9yU3VwcG9ydGVkTG9jYWxlc09mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRlckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIEludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZCYXNlOjpzX2luZm8sICZzZWdtZW50ZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNl
IGZvciBJbnRsU2VnbWVudGVyQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzZWdtZW50ZXJDb25z
dHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCmluZGV4IDY2YTVjYzNhOTdlZGY2OThiYmI5YTFl
MjMxNmUwYzFmYzk5YTllNWEuLmJiZTA5NDdhZGMzZmQyZTcwOWVjNjk2OTJhMDU3MzUwOTNkNjg4
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50
ZXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxT
ZWdtZW50ZXJQcm90b3R5cGUuY3BwCkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGludGxTZWdtZW50ZXJQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25z
KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlNlZ21lbnRlciIsICZCYXNlOjpzX2luZm8sICZzZWdt
ZW50ZXJQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2Vn
bWVudGVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50ZXJQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIkludGwuU2VnbWVudGVyIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVu
dGVyUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21l
bnRlclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudGVyUHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gc2VnbWVudGVyUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwCmluZGV4IDhkZTM0YTMwNGVkZTAzZTBi
ODRiMjBjMjgwMTEzNDQxOTk2YWI0ZjguLjUxNWU1OTUyNjUzNmU3ZDVmZWMxMGNjNTUyYTk2MGJk
ZDc5MmRiOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxT
ZWdtZW50cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21l
bnRzLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxTZWdtZW50czo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHMpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21l
bnRzKSB9OwogCiBJbnRsU2VnbWVudHMqIEludGxTZWdtZW50czo6Y3JlYXRlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIHN0ZDo6dW5pcXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFr
SXRlcmF0b3JEZWxldGVyPiYmIHNlZ21lbnRlciwgQm94PFZlY3RvcjxVQ2hhcj4+JiYgYnVmZmVy
LCBKU1N0cmluZyogc3RyaW5nLCBJbnRsU2VnbWVudGVyOjpHcmFudWxhcml0eSBncmFudWxhcml0
eSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdt
ZW50c1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2Vn
bWVudHNQcm90b3R5cGUuY3BwCmluZGV4IDUzZTNlY2YwMmZmODRhMjkzNjljNTQ5YTY2ZDA3ODk2
ZTVlZjZkZDcuLjBjZTU1Y2RjMGYxZjEwNjkxZTllZmIzN2U2MjMxMGJmYWY5ZGFmNjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJv
dG90eXBlLmNwcApAQCAtNDAsNyArNDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihpbnRsU2VnbWVudHNQcm90b3R5cGVGdW5jSXRlcmF0b3IpOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50c1Byb3RvdHlwZTo6c19pbmZvID0geyAi
JVNlZ21lbnRzJSIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50c1Byb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBJbnRsU2VnbWVudHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdtZW50cyUi
X3MsICZCYXNlOjpzX2luZm8sICZzZWdtZW50c1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50c1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBJbnRsU2VnbWVudHNQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBzZWdtZW50c1Byb3RvdHlwZVRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclBy
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3Rv
dHlwZS5jcHAKaW5kZXggMDkyYmE1NTU5ZDVmYzJkNTllYjFkYzZiNDc0ZTNjZTk3MWFkMTA5YS4u
YTIxZWVkM2IzODk2MmZjN2VjOGI2NGM4ZWY3ZDllYzVkOWI1YmUxYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEs
NyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEl0ZXJhdG9y
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkl0ZXJhdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEl0ZXJh
dG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCmluZGV4IDMxNzk4NWZmZWQ2YWViM2U4ODU5Mzg0
MzAyMDNlYzliYTQzZDBjYzAuLjRhODQwZWVkNmRlMWQ3NTM1ZDY5YWY1ODljMzllOTk1ZmY4NjVh
ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuY3BwCkBAIC0zNiw3
ICszNiw3IEBAIGNvbnN0IEFTQ0lJTGl0ZXJhbCBMZW5ndGhFeGNlZWRlZFRoZU1heGltdW1BcnJh
eUxlbmd0aEVycm9yIHsgIkxlbmd0aCBleGNlZWRlZCB0CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShKU0FycmF5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6
OnNfaW5mbyA9IHsiQXJyYXkiLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXkpfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0FycmF5OjpzX2luZm8gPSB7ICJBcnJheSJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5KSB9OwogCiBKU0Fy
cmF5KiBKU0FycmF5Ojp0cnlDcmVhdGVVbmluaXRpYWxpemVkUmVzdHJpY3RlZChPYmplY3RJbml0
aWFsaXphdGlvblNjb3BlJiBzY29wZSwgR0NEZWZlcnJhbENvbnRleHQqIGRlZmVycmFsQ29udGV4
dCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVuc2lnbmVkIGluaXRpYWxMZW5ndGgpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCmluZGV4IGRh
NmQxZGNlYjIxZTdjMGQ3ZmFkNDc0YmE1MTA5OGMxM2NhNjczNTYuLjlmOGU0MmRiNjYxNDEzNzZh
YjQ5Yjc1NDllNDc3OGY4OGUxYTI3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlcjo6c19pbmZvID0gewotICAgICJB
cnJheUJ1ZmZlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXI6
OnNfaW5mbyA9IHsgIkFycmF5QnVmZmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXIpIH07CiAKIEpTQXJyYXlCdWZm
ZXI6OkpTQXJyYXlCdWZmZXIoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPEFy
cmF5QnVmZmVyPiYmIGFycmF5QnVmZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJD
b25zdHJ1Y3Rvci5jcHAKaW5kZXggYjkyY2UxNTczYzBjOTUxYjkwYjFiOTE5NzA1NmExMTU2OTE5
YjZmYS4uMzhmMmFkZWNmOGQwNDE0ZTc5MjljYjYzMDc0NDI1ZTY0NDM1Yzg5NCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29u
c3RydWN0b3IuY3BwCkBAIC00MSwxMyArNDEsMTMgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29uc3RydWN0U2hhcmVkQXJyYXlCdWZmZXIpOwogCiB0ZW1wbGF0ZTw+CiBjb25z
dCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0FycmF5QnVmZmVyQ29uc3RydWN0b3IpCiB9OwogCiB0ZW1wbGF0ZTw+CiBjb25zdCBD
bGFzc0luZm8gSlNTaGFyZWRBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7Ci0gICAg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKKyAgICAiRnVuY3Rp
b24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1NoYXJlZEFycmF5QnVmZmVyQ29uc3RydWN0b3IpCiB9OwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUu
Y3BwCmluZGV4IGNmYTA4Y2JlZjUxZjExNTgxOTY5NTVkMDUyNzFmNjc2MjFlYmU4YzUuLjE5MGJl
ZjExMmNjNWRiOTEwODExYmNlYjhjNDA0ZTQyN2MyOTIwYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwCkBA
IC05OCw3ICs5OCw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIHN0ZDo6cGFpcjxTcGVjaWVzQ29u
c3RydWN0UmVzdWx0LCBKU0FycmF5QnVmZmVyKj4gc3BlY2llc0NvCiAgICAgTWFya2VkQXJndW1l
bnRCdWZmZXIgYXJnczsKICAgICBhcmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAgICBB
U1NFUlQoIWFyZ3MuaGFzT3ZlcmZsb3dlZCgpKTsKLSAgICBKU09iamVjdCogbmV3T2JqZWN0ID0g
Y29uc3RydWN0KGdsb2JhbE9iamVjdCwgc3BlY2llcy52YWx1ZSgpLCBhcmdzLCAiU3BlY2llcyBj
b25zdHJ1Y3Rpb24gZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciIpOworICAgIEpTT2Jq
ZWN0KiBuZXdPYmplY3QgPSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLnZhbHVlKCks
IGFyZ3MsICJTcGVjaWVzIGNvbnN0cnVjdGlvbiBkaWQgbm90IGdldCBhIHZhbGlkIGNvbnN0cnVj
dG9yIl9zKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlcnJvclJlc3VsdCk7CiAK
ICAgICAvLyAxNy4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QobmV3LCBbW0FycmF5QnVm
ZmVyRGF0YV1dKS4KQEAgLTI1Nyw3ICsyNTcsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04o
c2hhcmVkQXJyYXlCdWZmZXJQcm90b0dldHRlckZ1bmNCeXRlTGVuZ3RoLCAoSlNHbG9iYWxPYgog
fQogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6c19pbmZvID0gewot
ICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclByb3RvdHlwZSkKKyAgICAiQXJyYXlCdWZmZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNBcnJheUJ1ZmZlclByb3RvdHlwZSkKIH07CiAKIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OkpT
QXJyYXlCdWZmZXJQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcApp
bmRleCA5MTliMzE1OWNjMzc2MDQ1ZDlhYjk2YTNiZTYyZTBhYWQyMjZiZTYyLi42ZjhkNWFkMGM5
MzRhZWIyNTM5NDBjYjdhZThlZTBiYzBiZDk0YmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwCkBAIC0zNyw3ICszNyw3IEBA
CiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJWaWV3Ojpz
X2luZm8gPSB7Ci0gICAgIkFycmF5QnVmZmVyVmlldyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZpZXcpCisgICAgIkFy
cmF5QnVmZmVyVmlldyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlCdWZmZXJWaWV3
OjpDb25zdHJ1Y3Rpb25Db250ZXh0OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5kZXggMWNhMjUx
NDZkYTIxNTUwZDczMzQ4OWYzMGIzMWQ1NGM2MDc4YTA4Yi4uYTI0MWFmODA5NTg3Y2RmZmZmYzBl
ZTU4ZDliZDhjZTcxMWQ2MmI2NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5SXRlcmF0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0FycmF5SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJh
dG9yOjpzX2luZm8gPSB7ICJBcnJheUl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlJdGVyYXRvcikgfTsKIAogSlNB
cnJheUl0ZXJhdG9yKiBKU0FycmF5SXRlcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU09iamVjdCogaXRlcmF0ZWRPYmplY3QsIEpTVmFsdWUga2luZCkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwCmlu
ZGV4IDkwODU3ZjRiOGM1NTc1MTA4OGUyODIyOWU0ZmFjNmUyYmU5MzFlMGEuLjVjMGMzMjlhNDU0
OTIwNTE5ZmYyZmI1YTA0ZGMzYWRhMzhhNDcxZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNBc3luY0Z1bmN0aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXN5bmNGdW5jdGlvbjo6c19pbmZv
ID0geyAiQXN5bmNGdW5jdGlvbiIsICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0FzeW5jRnVuY3Rpb246OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iX3MsICAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNGdW5jdGlv
bikgfTsKIAogSlNBc3luY0Z1bmN0aW9uOjpKU0FzeW5jRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlv
bkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCmlu
ZGV4IGVkNTA2ZWVlMTVmOTM4ZTI1MTQ0YWY0NzI2YmNhMjljNDQxZTk0ODIuLmZjZjFkOTJlMTAz
NzVkZTQzNmQ2MGNhOGM3ZTEwZjRlZWM1MDQ4ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvcjo6c19p
bmZvID0geyAiQXN5bmNHZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNBc3luY0dlbmVyYXRvcjo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3IiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3luY0dl
bmVyYXRvcikgfTsKIAogSlNBc3luY0dlbmVyYXRvciogSlNBc3luY0dlbmVyYXRvcjo6Y3JlYXRl
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcAppbmRl
eCA0YjAwMjVjNTQ0YzU5OTFkNDhhNDg0YWJjZGJmNDliN2I1Njg0YTkyLi4zNDJiYWFjMDczMTg5
NjQ1NjgzNmE5NjdhMTM0YWJhMWJmNDg2ZGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKQEAgLTMz
LDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiIs
ICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FzeW5jR2VuZXJh
dG9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uKSB9OwogCiBKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb246OkpTQXN5
bmNHZW5lcmF0b3JGdW5jdGlvbihWTSYgdm0sIEZ1bmN0aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJs
ZSwgSlNTY29wZSogc2NvcGUsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwg
ZXhlY3V0YWJsZSwgc2NvcGUsIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQmlnSW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQmlnSW50LmNwcAppbmRleCAwM2Q5NDQwYmE1ZDBlNzhiZDMxNzFkZjczYzYyMjljMzI1
ZjE0MzJkLi44OWQ3YmNlZWE5NTk2NTc1ZTJkOTcyZTFjNmNhNDhhNjhlYmRlOWRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCaWdJbnQuY3BwCkBAIC02MCw3ICs2MCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9
IHsgIkJpZ0ludCIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNCaWdJbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNCaWdJbnQ6OnNfaW5mbyA9IHsgIkJp
Z0ludCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0JpZ0ludCkgfTsKIAogSlNCaWdJbnQ6OkpTQmlnSW50KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIERpZ2l0KiBkYXRhLCB1bnNpZ25lZCBsZW5ndGgpCiAgICAgOiBCYXNlKHZtLCBzdHJ1
Y3R1cmUpCkBAIC0yNDU5LDcgKzI0NTksNyBAQCBKU1ZhbHVlIEpTQmlnSW50OjpwYXJzZUludChK
U0dsb2JhbE9iamVjdCogbnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCBWTSYgdm0sIENoYQogICAg
ICAgICBBU1NFUlQobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NKTsKICAgICAgICAgaWYgKGVycm9y
UGFyc2VNb2RlID09IEVycm9yUGFyc2VNb2RlOjpUaHJvd0V4Y2VwdGlvbnMpIHsKICAgICAgICAg
ICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKLSAgICAgICAgICAgIHRo
cm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhF
cnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRv
IEJpZ0ludCIpKTsKKyAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9iYWxPYmplY3RG
b3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmplY3RGb3JPT00s
ICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAgICB9CiAgICAg
ICAgIHJldHVybiBKU1ZhbHVlKCk7CiAgICAgfQpAQCAtMjU3Niw3ICsyNTc2LDcgQEAgSlNWYWx1
ZSBKU0JpZ0ludDo6cGFyc2VJbnQoSlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdEZv
ck9PTSwgVk0mIHZtLCBDaGEKICAgICAgICAgICAgICAgICBpZiAoZXJyb3JQYXJzZU1vZGUgPT0g
RXJyb3JQYXJzZU1vZGU6OlRocm93RXhjZXB0aW9ucykgewogICAgICAgICAgICAgICAgICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAgICAgICAgICAgICAgICAgICAg
IEFTU0VSVChudWxsT3JHbG9iYWxPYmplY3RGb3JPT00pOwotICAgICAgICAgICAgICAgICAgICB0
aHJvd1ZNRXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4
RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0
byBCaWdJbnQiKSk7CisgICAgICAgICAgICAgICAgICAgIHRocm93Vk1FcnJvcihudWxsT3JHbG9i
YWxPYmplY3RGb3JPT00sIHNjb3BlLCBjcmVhdGVTeW50YXhFcnJvcihudWxsT3JHbG9iYWxPYmpl
Y3RGb3JPT00sICJGYWlsZWQgdG8gcGFyc2UgU3RyaW5nIHRvIEJpZ0ludCJfcykpOwogICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZSgpOwogICAgICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1
bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlv
bi5jcHAKaW5kZXggYzdhMTY3OTU1M2UwODEzMjU0NTA2NGE1MjVlOTFhMDRiMDdkNGJjOC4uMWVl
ODExZTBkNWY5ZWQzN2EzZDY5MGZlYWZhOGUzMzgyYWZhYmIwNiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNCb3VuZEZ1bmN0aW9u
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNCb3VuZEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTQm91bmRGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCb3VuZEZ1bmN0aW9uKSB9
OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oYm91bmRUaGlzTm9BcmdzRnVuY3Rpb25DYWxs
LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwCmluZGV4IGQ1NDcy
ZTYwNjA2NzNkYjk0ODRmYmVjNWRiNjY4YzIyMjBiYzZiMWIuLjNkMjEzYWViYzRjZWIwNTJlYzgx
MThlYjFhNDNiYWZhM2U3ZDdiYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQ2FsbGVlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NhbGxlZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU0NhbGxlZTo6c19pbmZvID0geyAiQ2FsbGVlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0NhbGxlZTo6c19pbmZvID0geyAiQ2FsbGVlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGVlKSB9OwogCiBK
U0NhbGxlZTo6SlNDYWxsZWUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwCmluZGV4IDYzOTQyODY3YTEzMGZlNmM1ZmUw
MThlNzQ0ZjE0ZDYxMTlkYjRjMmEuLjE2NTU0NDhjODliYjllM2Q4MjJjZWExZjQxNmI1ZDZhOGI4
YTc5N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtNDgs
NyArNDgsNyBAQCB2b2lkIEpTQ2VsbDo6ZHVtcChQcmludFN0cmVhbSYgb3V0KSBjb25zdAogCiB2
b2lkIEpTQ2VsbDo6ZHVtcFRvU3RyZWFtKGNvbnN0IEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0m
IG91dCkKIHsKLSAgICBvdXQucHJpbnRmKCI8JXAsICVzPiIsIGNlbGwsIGNlbGwtPmNsYXNzTmFt
ZShjZWxsLT52bSgpKSk7CisgICAgb3V0LnByaW50ZigiPCVwLCAlcz4iLCBjZWxsLCBjZWxsLT5j
bGFzc05hbWUoY2VsbC0+dm0oKSkuY2hhcmFjdGVycygpKTsKIH0KIAogc2l6ZV90IEpTQ2VsbDo6
ZXN0aW1hdGVkU2l6ZUluQnl0ZXMoVk0mIHZtKSBjb25zdApAQCAtMjEwLDcgKzIxMCw3IEBAIHZv
aWQgSlNDZWxsOjpnZXRPd25TcGVjaWFsUHJvcGVydHlOYW1lcyhKU09iamVjdCosIEpTR2xvYmFs
T2JqZWN0KiwgUHJvcGVydHlOYW1lCiAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsK
IH0KIAotY29uc3QgY2hhciogSlNDZWxsOjpjbGFzc05hbWUoVk0mIHZtKSBjb25zdAorQVNDSUlM
aXRlcmFsIEpTQ2VsbDo6Y2xhc3NOYW1lKFZNJiB2bSkgY29uc3QKIHsKICAgICByZXR1cm4gY2xh
c3NJbmZvKHZtKS0+Y2xhc3NOYW1lOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Nl
bGwuaAppbmRleCA3Yzg4ODM0MzkyYjAxNjQzYTFjNTg3ODBkZGVkOTVmNmM0MjViM2ZiLi5kZjA2
OTc3NzFhZGNmNjViM2VmMWI3ZGNmNDFkMTk4MjM2M2NkMzZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0NlbGwuaApAQCAtMTM5LDcgKzEzOSw3IEBAIHB1YmxpYzoKIAogICAgIFR5
cGVJbmZvOjpJbmxpbmVUeXBlRmxhZ3MgaW5saW5lVHlwZUZsYWdzKCkgY29uc3QgeyByZXR1cm4g
bV9mbGFnczsgfQogICAgIAotICAgIGNvbnN0IGNoYXIqIGNsYXNzTmFtZShWTSYpIGNvbnN0Owor
ICAgIEFTQ0lJTGl0ZXJhbCBjbGFzc05hbWUoVk0mKSBjb25zdDsKIAogICAgIC8vIEV4dHJhY3Rp
bmcgdGhlIHZhbHVlLgogICAgIEpTX0VYUE9SVF9QUklWQVRFIGJvb2wgZ2V0U3RyaW5nKEpTR2xv
YmFsT2JqZWN0KiwgU3RyaW5nJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0N1c3RvbUdldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IDhiOGE0MWY0
YzhiZmUwODQ1OWFlYTJhY2VkNzAyOGVhYmEwYTY1YmEuLmZmZTZiZmQzNTI3NjQyNjE2ZmQ5MWY3
NjM3N2Q2ODZhMGIwNjQ4MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDdXN0b21HZXR0ZXJGdW5jdGlv
bjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBD
bGFzc0luZm8gSlNDdXN0b21HZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlND
dXN0b21HZXR0ZXJGdW5jdGlvbikgfTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGN1c3RvbUdldHRlckZ1bmN0aW9uQ2FsbCk7CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihj
dXN0b21HZXR0ZXJGdW5jdGlvbkNhbGwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0N1c3RvbVNldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ3VzdG9tU2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IDM5ZTI3MDI5OTBhYTEx
NTU3MTliNjlkMWJhZmNkNzg0NjA0MjdlN2UuLjg2MjgxODU3OGYwOTFlZDc0NzViMDgwMTFhYWY4
ZTgwODM3MDI0YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
Q3VzdG9tU2V0dGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQ3VzdG9tU2V0dGVyRnVuY3Rpb24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDdXN0b21TZXR0ZXJGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9tU2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNDdXN0b21TZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDdXN0b21T
ZXR0ZXJGdW5jdGlvbikgfTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGN1c3Rv
bVNldHRlckZ1bmN0aW9uQ2FsbCk7CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjdXN0b21T
ZXR0ZXJGdW5jdGlvbkNhbGwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0RhdGFWaWV3LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZp
ZXcuY3BwCmluZGV4IGFiYTY4OGRlNDg3MWY4NGM2MjUxYjc4ZjBiODNjZDYyODY2NzFkMjMuLjlh
NDM1Y2M5Y2IyZTFhYjMwMTk0MzVhZDZkZDAzMjhkMzRjZGFiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwCkBAIC0zMSw4ICszMSw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNEYXRhVmlldzo6c19pbmZvID0gewot
ICAgICJEYXRhVmlldyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OworY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXc6OnNf
aW5mbyA9IHsgIkRhdGFWaWV3Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTRGF0YVZpZXcpIH07CiAKIEpTRGF0YVZpZXc6OkpTRGF0YVZp
ZXcoVk0mIHZtLCBDb25zdHJ1Y3Rpb25Db250ZXh0JiBjb250ZXh0LCBBcnJheUJ1ZmZlciogYnVm
ZmVyKQogICAgIDogQmFzZSh2bSwgY29udGV4dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlld1Byb3RvdHlwZS5jcHAKaW5kZXggZTk4Yzc4YWJhYmY5
ODMxY2ZmMDY1YzFiZTkwMmJmYWM4MGEwNmQyYS4uMzhjY2ZhZTYzNTAwYmQwM2JmNGQyZWZkYWRm
ZTFkNWI2NmE0Y2YzMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNEYXRhVmlld1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNEYXRhVmlld1Byb3RvdHlwZS5jcHAKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0NVU1RPTV9HRVRURVIoZGF0YVZpZXdQcm90b0dldHRlckJ5dGVPZmZzZXQpOwogbmFt
ZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2lu
Zm8gPSB7Ci0gICAgIkRhdGFWaWV3IiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51
bGxwdHIsCisgICAgIkRhdGFWaWV3Il9zLCAmQmFzZTo6c19pbmZvLCAmZGF0YVZpZXdUYWJsZSwg
bnVsbHB0ciwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGF0YVZpZXdQcm90b3R5cGUpCiB9
OwogCkBAIC0yMzAsNyArMjMwLDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3
UHJvdG9HZXR0ZXJCdWZmZXIsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKIAogICAgIEpT
RGF0YVZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6
ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93
Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5idWZm
ZXIgZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3Rv
dHlwZS5idWZmZXIgZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiX3MpOwog
CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUodmlldy0+cG9z
c2libHlTaGFyZWRKU0J1ZmZlcihnbG9iYWxPYmplY3QpKSk7CiB9CkBAIC0yNDIsNyArMjQyLDcg
QEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlTGVuZ3Ro
LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE8KIAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5
bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwog
ICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5ieXRlTGVuZ3RoIGV4cGVjdHMgfHRoaXN8
IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZUxlbmd0aCBl
eHBlY3RzIHx0aGlzfCB0byBiZSBhIERhdGFWaWV3IG9iamVjdCJfcyk7CiAgICAgaWYgKHZpZXct
PmlzRGV0YWNoZWQoKSkKICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIlVuZGVybHlpbmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNoZWQgZnJv
bSB0aGUgdmlldyJfcyk7CiAKQEAgLTI1Niw3ICsyNTYsNyBAQCBKU0NfREVGSU5FX0NVU1RPTV9H
RVRURVIoZGF0YVZpZXdQcm90b0dldHRlckJ5dGVPZmZzZXQsIChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsTwogCiAgICAgSlNEYXRhVmlldyogdmlldyA9IGpzRHluYW1pY0Nhc3Q8SlNEYXRhVmlldyo+
KHZtLCBKU1ZhbHVlOjpkZWNvZGUodGhpc1ZhbHVlKSk7CiAgICAgaWYgKCF2aWV3KQotICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0YVZpZXcu
cHJvdG90eXBlLmJ5dGVPZmZzZXQgZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmpl
Y3QiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5ieXRlT2Zmc2V0IGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEg
RGF0YVZpZXcgb2JqZWN0Il9zKTsKICAgICBpZiAodmlldy0+aXNEZXRhY2hlZCgpKQogICAgICAg
ICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiVW5kZXJseWlu
ZyBBcnJheUJ1ZmZlciBoYXMgYmVlbiBkZXRhY2hlZCBmcm9tIHRoZSB2aWV3Il9zKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdp
c3RyeS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJl
Z2lzdHJ5LmNwcAppbmRleCBkZjc4ODkyYmExMjljZDViNWYwZWFkZWIyZmIxNWRjZTk1MTkwNGE2
Li40YThjZDQ5Yjc2OGRhYjExNDJhYzE3MGJjZjk5Nzk0NGZjZGY5MDhkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ZpbmFsaXphdGlvblJlZ2lzdHJ5
LmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lz
dHJ5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRmluYWxpemF0
aW9uUmVnaXN0cnk6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxpemF0
aW9uUmVnaXN0cnkpIH07CiAKIFN0cnVjdHVyZSogSlNGaW5hbGl6YXRpb25SZWdpc3RyeTo6Y3Jl
YXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSBwcm90b3R5cGUpCiB7CkBAIC0xNjksNyArMTY5LDcgQEAgdm9pZCBKU0ZpbmFsaXphdGlvblJl
Z2lzdHJ5OjpydW5GaW5hbGl6YXRpb25DbGVhbnVwKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QKICAgICB3aGlsZSAoSlNWYWx1ZSB2YWx1ZSA9IHRha2VEZWFkSG9sZGluZ3NWYWx1ZSgpKSB7
CiAgICAgICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgICAgIGFyZ3MuYXBwZW5k
KHZhbHVlKTsKLSAgICAgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3MsICJU
aGlzIHNob3VsZCBub3QgYmUgdmlzaWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdzLndl
YmtpdC5vcmciKTsKKyAgICAgICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrKCksIGFyZ3Ms
ICJUaGlzIHNob3VsZCBub3QgYmUgdmlzaWJsZTogcGxlYXNlIHJlcG9ydCBhIGJ1ZyB0byBidWdz
LndlYmtpdC5vcmciX3MpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lk
KCkpOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlv
bi5jcHAKaW5kZXggZDkzN2IzNmIzMDQ1NzQ0MGNlYThiZWE1MThkMTk4MTlhNjRhOWQ1Yy4uYTM3
NmFmNWVlYTBkZTZiNTE3MGM0ZmI0NDczNzMwZDI1ODMzMWM1MiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTUzLDEwICs1MywxMCBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oY2FsbEhvc3RGdW5jdGlvbkFzQ29uc3RydWN0b3IsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsTwogICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgY3JlYXRlTm90QUNvbnN0cnVjdG9yRXJyb3IoZ2xvYmFsT2JqZWN0LCBjYWxsRnJh
bWUtPmpzQ2FsbGVlKCkpKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTRnVuY3Rpb246OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0Z1bmN0aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0RnVu
Y3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N0cmljdEZ1bmN0aW9uKSB9OwotY29uc3QgQ2xh
c3NJbmZvIEpTU2xvcHB5RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nsb3BweUZ1bmN0
aW9uKSB9OwotY29uc3QgQ2xhc3NJbmZvIEpTQXJyb3dGdW5jdGlvbjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyb3dGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0Z1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaWN0
RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaWN0RnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNTbG9wcHlGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTbG9w
cHlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0Fycm93RnVuY3Rpb246OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTQXJyb3dGdW5jdGlvbikgfTsKIAogYm9vbCBKU0Z1bmN0aW9uOjppc0hv
c3RGdW5jdGlvbk5vbklubGluZSgpIGNvbnN0CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyYXRvci5jcHAKaW5kZXggMTU2MmFjMjYyYmQ4MDExMDYxNGRlNDlkYjM5
ZGU2YjgxOGRkOGZjYS4uMjRmYmRmNjNhNjQzMzcwM2YwNWFlMWFkZGZjNDA0NGQwY2NkOTVlOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcApAQCAt
MzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2Vu
ZXJhdG9yOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTR2VuZXJhdG9yOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHZW5lcmF0b3IpIH07CiAK
IEpTR2VuZXJhdG9yKiBKU0dlbmVyYXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dl
bmVyYXRvckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2Vu
ZXJhdG9yRnVuY3Rpb24uY3BwCmluZGV4IDA2YWUwNTE4YWIxOTBhNDNhMTM5NmU4MGM5M2RkMTZk
MDBlYTI2YjguLmE2OTU0NjM2YWJlNGExODU5ZGVmM2NjZmEyOTk3MTVhYTJkNjc5MGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yRnVuY3Rp
b24uY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNHZW5lcmF0b3JGdW5jdGlvbjo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
R2VuZXJhdG9yRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNHZW5lcmF0b3JGdW5jdGlv
bjo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHZW5lcmF0b3JGdW5jdGlvbikgfTsK
IAogSlNHZW5lcmF0b3JGdW5jdGlvbjo6SlNHZW5lcmF0b3JGdW5jdGlvbihWTSYgdm0sIEZ1bmN0
aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNTY29wZSogc2NvcGUsIFN0cnVjdHVyZSogc3Ry
dWN0dXJlKQogICAgIDogQmFzZSh2bSwgZXhlY3V0YWJsZSwgc2NvcGUsIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJy
YXlWaWV3SW5saW5lcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmlj
VHlwZWRBcnJheVZpZXdJbmxpbmVzLmgKaW5kZXggZDMyYTJiMGMwYzAzYjNjMjliYjhlNWZlOTRj
M2MwN2VmYmQ4YjU3MC4uMTRhNmNmMzlhZGI1OTQyYWE5MDFmZDVjYWUwZjNjNWNjMjRiOWFlNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRB
cnJheVZpZXdJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
ZW5lcmljVHlwZWRBcnJheVZpZXdJbmxpbmVzLmgKQEAgLTEwNiwxMSArMTA2LDExIEBAIEpTR2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3PEFkYXB0b3I+KiBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFw
dG9yPjo6Y3JlYXRlKAogICAgIHNpemVfdCBlbGVtZW50U2l6ZSA9IHNpemVvZih0eXBlbmFtZSBB
ZGFwdG9yOjpUeXBlKTsKICAgICBBU1NFUlQoYnVmZmVyKTsKICAgICBpZiAoIUFycmF5QnVmZmVy
Vmlldzo6dmVyaWZ5U3ViUmFuZ2VMZW5ndGgoKmJ1ZmZlciwgYnl0ZU9mZnNldCwgbGVuZ3RoLCBl
bGVtZW50U2l6ZSkpIHsKLSAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9m
IGJ1ZmZlciIpKTsKKyAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwg
Y3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJMZW5ndGggb3V0IG9mIHJhbmdlIG9mIGJ1
ZmZlciJfcykpOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgICAgaWYgKCFBcnJh
eUJ1ZmZlclZpZXc6OnZlcmlmeUJ5dGVPZmZzZXRBbGlnbm1lbnQoYnl0ZU9mZnNldCwgZWxlbWVu
dFNpemUpKSB7Ci0gICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNy
ZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQi
KSk7CisgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJh
bmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiQnl0ZSBvZmZzZXQgaXMgbm90IGFsaWduZWQiX3MpKTsK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogICAgIENvbnN0cnVjdGlvbkNvbnRleHQg
Y29udGV4dCh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGJ1ZmZlciksIGJ5dGVPZmZzZXQsIGxlbmd0
aCk7CkBAIC0xNTIsNyArMTUyLDcgQEAgYm9vbCBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFw
dG9yPjo6dmFsaWRhdGVSYW5nZSgKICAgICBpZiAoY2FuQWNjZXNzUmFuZ2VRdWlja2x5KG9mZnNl
dCwgbGVuZ3RoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgCi0gICAgdGhyb3dFeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJS
YW5nZSBjb25zaXN0aW5nIG9mIG9mZnNldCBhbmQgbGVuZ3RoIGFyZSBvdXQgb2YgYm91bmRzIikp
OworICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCAiUmFuZ2UgY29uc2lzdGluZyBvZiBvZmZzZXQgYW5kIGxlbmd0aCBh
cmUgb3V0IG9mIGJvdW5kcyJfcykpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQ
cm90b3R5cGVGdW5jdGlvbnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKaW5kZXggZGYwNDM1ZjZlMzc5
ODA2MWQ5ZjZjY2M2ZDc1OWRmZTY2YmQ2ZDlmYS4uYjk0ZWIzZmIyMjZjNTAwMDVjYzgxYjU5OWQ2
NjU1ZmRmOGJkODlmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1
bmN0aW9ucy5oCkBAIC02Niw3ICs2Niw3IEBAIGlubGluZSBKU0FycmF5QnVmZmVyVmlldyogc3Bl
Y2llc0NvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjCiAgICAg
ICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgZGVmYXVsdENvbnN0cnVjdG9yKCkpOwogCiAK
LSAgICBKU1ZhbHVlIHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFy
Z3MsICJzcGVjaWVzIGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7CisgICAgSlNWYWx1ZSByZXN1bHQg
PSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3Qg
YSBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0
cik7CiAKICAgICBpZiAoSlNBcnJheUJ1ZmZlclZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpT
QXJyYXlCdWZmZXJWaWV3Kj4odm0sIHJlc3VsdCkpIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBBTFdB
WVNfSU5MSU5FIEVuY29kZWRKU1ZhbHVlIGdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1Nl
dChWTSYgdm0sIEpTR2xvYmFsTwogICAgICAgICBkb3VibGUgb2Zmc2V0TnVtYmVyID0gY2FsbEZy
YW1lLT51bmNoZWNrZWRBcmd1bWVudCgxKS50b0ludGVnZXJPckluZmluaXR5KGdsb2JhbE9iamVj
dCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwogICAgICAgICBpZiAoVU5MSUtFTFkob2Zmc2V0TnVtYmVyIDwgMCkpCi0gICAgICAgICAgICBy
ZXR1cm4gdGhyb3dWTVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIk9mZnNldCBzaG91
bGQgbm90IGJlIG5lZ2F0aXZlIik7CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVJhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIk9mZnNldCBzaG91bGQgbm90IGJlIG5lZ2F0aXZlIl9z
KTsKICAgICAgICAgaWYgKG9mZnNldE51bWJlciA8PSBtYXhTYWZlSW50ZWdlcigpICYmIG9mZnNl
dE51bWJlciA8PSBzdGF0aWNfY2FzdDxkb3VibGU+KHN0ZDo6bnVtZXJpY19saW1pdHM8c2l6ZV90
Pjo6bWF4KCkpKQogICAgICAgICAgICAgb2Zmc2V0ID0gb2Zmc2V0TnVtYmVyOwogICAgICAgICBl
bHNlCkBAIC02MjUsNyArNjI1LDcgQEAgQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5l
cmljVHlwZWRBcnJheVZpZXdQcml2YXRlRnVuY1N1YmFycmF5Q3JlYXRlKFZNJgogICAgIGFyZ3Mu
YXBwZW5kKGpzTnVtYmVyKGxlbmd0aCkpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2Vk
KCkpOwogCi0gICAgSlNPYmplY3QqIHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNw
ZWNpZXMsIGFyZ3MsICJzcGVjaWVzIGlzIG5vdCBhIGNvbnN0cnVjdG9yIik7CisgICAgSlNPYmpl
Y3QqIHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMsIGFyZ3MsICJzcGVj
aWVzIGlzIG5vdCBhIGNvbnN0cnVjdG9yIl9zKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCB7IH0pOwogCiAgICAgSlNBcnJheUJ1ZmZlclZpZXcqIHZhbGlkYXRlZCA9IHZhbGlkYXRl
VHlwZWRBcnJheShnbG9iYWxPYmplY3QsIHJlc3VsdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAK
aW5kZXggOWE4MWM5NjkzYTBmY2Q1ZTMyODljOTFmMDYzNGJhMTc2YjNlNDVkOC4uNjVhMjlmOWRk
Y2JjZDU1YTQwMjdkZDQ1MmFmZTEzNmQ2Y2U2ZDQ5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50LmNw
cApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50OjpzX2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxF
bnZpcm9ubWVudCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8g
SlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTR2xvYmFsTGV4aWNhbEVu
dmlyb25tZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50KSB9OwogCiB2b2lkIEpTR2xvYmFs
TGV4aWNhbEVudmlyb25tZW50OjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAppbmRleCBmYTYyM2Uw
OTA3NGMzOGZiZTMyMzQxNjdkY2Q1OTIwMmY4ZjE1MWI2Li4wMTJmMTkxY2Q5YWFlZjcyODgzYjA1
MmI1NGIwYjM0NzgzZThjOTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNHbG9iYWxPYmplY3QuY3BwCkBAIC01MTksNyArNTE5LDcgQEAgSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKGRpc2FibGVTdXBlclNhbXBsZXIsIChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFt
ZSopKQogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0
OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gSlNHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCJf
cywgJkJhc2U6OnNfaW5mbywgJmdsb2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RU
YWJsZSBKU0dsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAm
c3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW1tdXRhYmxlQnV0dGVyZmx5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW1tdXRhYmxlQnV0dGVyZmx5LmNwcAppbmRleCBkNTdjNmU3ODgwMWQ5N2U3
OTRiYzgyYjgzN2VhNTYzYTA3M2UzYTU3Li41MWMxNzdkZjlmOThlZjJlMWRhN2Y5MDYzMDg2NWFh
NjIwZDZkYmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lt
bXV0YWJsZUJ1dHRlcmZseS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNJbW11dGFibGVCdXR0ZXJmbHkuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNJbW11dGFibGVCdXR0ZXJmbHk6OnNfaW5mbyA9IHsg
IkltbXV0YWJsZSBCdXR0ZXJmbHkiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSW1tdXRhYmxlQnV0dGVyZmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
SW1tdXRhYmxlQnV0dGVyZmx5OjpzX2luZm8gPSB7ICJJbW11dGFibGUgQnV0dGVyZmx5Il9zLCBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1tdXRhYmxl
QnV0dGVyZmx5KSB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0ltbXV0
YWJsZUJ1dHRlcmZseTo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2
aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRl
cm5hbFByb21pc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5h
bFByb21pc2UuY3BwCmluZGV4IGZmMWQ4ZDBlOWRlYjBhZDFkNzZjODVjMzJkMTY5YTBkOTYwNmI5
ZWIuLjRlMGUxYjNjNTYwNzEyYzA1ZWMwNzg0MTc5NDY3MjUyYjFmOGFlNzEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKQEAg
LTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0lu
dGVybmFsUHJvbWlzZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlz
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZTo6c19pbmZvID0geyAiSW50
ZXJuYWxQcm9taXNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSW50ZXJuYWxQcm9taXNlKSB9OwogCiBKU0ludGVybmFsUHJvbWlzZSog
SlNJbnRlcm5hbFByb21pc2U6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFBy
b21pc2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lu
dGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmNwcAppbmRleCAzMjZmMGU3Y2E5OWI0NTIxNGY0YWM3
MzJkMzg4MThkMzk0MWRhZDg3Li41OWI1NTllOTg1MTE5ZWIzNTE3MTJjMDg1MjEzNWIwMTJhMjNk
MmQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFs
UHJvbWlzZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpT
SW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5h
bFByb21pc2VDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCAmaW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCAmaW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIEpTSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBp
bnRlcm5hbFByb21pc2VDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKaW5k
ZXggYTY5ZDI3MGQ0OGFjMDU0YmMwYzk0OGJmZjgxNjUyZTVjMDNkZjMyZi4uZTE3MWMzMmY0MTg3
Nzk1ODA3MzkwNzZhZDVkZGZjYWM4NmQyMjUwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlLmNwcApA
QCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5h
bFByb21pc2VQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRlcm5hbFBy
b21pc2VQcm90b3R5cGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNJbnRlcm5hbFByb21pc2VQcm90b3R5cGUpIH07CiAKIEpTSW50ZXJu
YWxQcm9taXNlUHJvdG90eXBlKiBKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6Y3JlYXRlKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxF
bnZpcm9ubWVudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxF
bnZpcm9ubWVudC5jcHAKaW5kZXggYzE1MWY0ZDljYWJkOTU3MGQ4NjE0MjRkMDBkMjliYjIxNjVm
YTE5My4uOTEyNTk4OWZmMzllOGUwZWYzODMxNThkNjI2YThhODE1OGNkMmZkOSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTGV4aWNhbEVudmlyb25tZW50
LmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTTGV4aWNhbEVudmlyb25tZW50OjpzX2luZm8gPSB7ICJKU0xleGljYWxFbnZpcm9ubWVu
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNMZXhpY2FsRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNMZXhpY2FsRW52aXJv
bm1lbnQ6OnNfaW5mbyA9IHsgIkpTTGV4aWNhbEVudmlyb25tZW50Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4aWNhbEVudmlyb25t
ZW50KSB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU0xleGljYWxFbnZp
cm9ubWVudDo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9y
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwCmluZGV4IDE5ZGI1MTYxOWQw
OTdlNTA3YmQ3OTZmYzEwNzcwN2UyMjAwYjcwMjMuLjY2NzAxNWQyYjE2MmRkODVjNmJhMTU1ZWY0
OTYwYjRhN2FkZDE4YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U01hcDo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19p
bmZvID0geyAiTWFwIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTTWFwKSB9OwogCiBKU01hcCogSlNNYXA6OmNsb25lKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCmluZGV4IDU1
MWVjMzU2MmM0ZDQzYTM4NTk4OGQ4M2U4ODY0YWFhOTQ2NDIyMTMuLjU3MzExM2I3ZDE5MDI4YmEx
ODZkYzUxYmNhN2JmMWZmZmRlZGNkNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTTWFwSXRlcmF0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNNYXBJdGVyYXRvcjo6c19pbmZvID0geyAiTWFwIEl0
ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU01hcEl0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNf
aW5mbyA9IHsgIk1hcCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcEl0ZXJhdG9yKSB9OwogCiBKU01hcEl0ZXJhdG9y
KiBKU01hcEl0ZXJhdG9yOjpjcmVhdGVXaXRoSW5pdGlhbFZhbHVlcyhWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU01vZHVsZUVudmlyb25tZW50LmNwcAppbmRleCA4NWQwYzJlMDMwYzBhOTQ3YzlhNzUzNDVl
Y2NkNzYzNDBjNjgyY2U0Li40YjRhMjA2NzI2ODhlOTQ0YzkwOWZjNmQ4ZTUyYjI2ZTc5NGUxN2Nm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVudmly
b25tZW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUVu
dmlyb25tZW50LmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTTW9kdWxlRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9kdWxlRW52
aXJvbm1lbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTTW9kdWxlRW52aXJvbm1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNNb2R1bGVF
bnZpcm9ubWVudDo6c19pbmZvID0geyAiSlNNb2R1bGVFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUVudmly
b25tZW50KSB9OwogCiBKU01vZHVsZUVudmlyb25tZW50KiBKU01vZHVsZUVudmlyb25tZW50Ojpj
cmVhdGUoCiAgICAgVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNTY29wZSogY3VycmVu
dFNjb3BlLCBTeW1ib2xUYWJsZSogc3ltYm9sVGFibGUsIEpTVmFsdWUgaW5pdGlhbFZhbHVlLCBB
YnN0cmFjdE1vZHVsZVJlY29yZCogbW9kdWxlUmVjb3JkKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVMb2FkZXIuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVMb2FkZXIuY3BwCmluZGV4IGI4YjkyMTI4ZDFkYmRhOWI2
YTEwYjU3Y2QxOGU0MzcwNDk1OGUxODcuLmVlZDQ2MzUwMTMxNmUzYTNkNDA0ZjFkNjZkZDhmNTYx
MWFhZjM1ZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9k
dWxlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVs
ZUxvYWRlci5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU01vZHVsZUxvYWRlcik7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU01vZHVsZUxvYWRlcjo6c19pbmZvID0geyAiTW9kdWxlTG9hZGVyIiwgJkJh
c2U6OnNfaW5mbywgJm1vZHVsZUxvYWRlclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTTW9kdWxlTG9hZGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTG9hZGVyOjpz
X2luZm8gPSB7ICJNb2R1bGVMb2FkZXIiX3MsICZCYXNlOjpzX2luZm8sICZtb2R1bGVMb2FkZXJU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUxvYWRlcikgfTsKIAog
LyogU291cmNlIGZvciBKU01vZHVsZUxvYWRlci5sdXQuaAogQGJlZ2luIG1vZHVsZUxvYWRlclRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5h
bWVzcGFjZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVs
ZU5hbWVzcGFjZU9iamVjdC5jcHAKaW5kZXggOTZhMGY3ZGE0M2QzY2U4MzExZmVjOTZkOTYzODM5
YWFjOTg2ZTkxNC4uMjE4MTA0ZjI5MjljZDczZGZmYzljYTllYTlkMjVjNTkwMGFkNmQ3ZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFt
ZXNwYWNlT2JqZWN0LmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1
bGVOYW1lc3BhY2VPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJNb2R1bGVOYW1lc3BhY2VP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QpIH07CiAKIEpTTW9kdWxlTmFtZXNwYWNlT2Jq
ZWN0OjpKU01vZHVsZU5hbWVzcGFjZU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwCmluZGV4IGNiZTY5NTg1M2QyZjFlZmE2ODllMWZk
N2I3YmM3Y2Y5YmM0YTZhYjUuLmFiN2JlY2Q5YzY3YTA4YzJmZTI1OGY3ZGI5MTA1NGYyYmFkNzlk
MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVj
b3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29y
ZC5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU01vZHVsZVJlY29yZDo6c19pbmZvID0geyAiTW9kdWxlUmVjb3JkIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZVJlY29y
ZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01vZHVsZVJlY29yZDo6c19pbmZvID0geyAiTW9kdWxl
UmVjb3JkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTTW9kdWxlUmVjb3JkKSB9OwogCiAKIFN0cnVjdHVyZSogSlNNb2R1bGVSZWNvcmQ6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG90eXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU05hdGl2ZVN0ZEZ1bmN0aW9uLmNwcAppbmRleCA4MDY0MzlmZGYyNTg3YjE2OGVhNjc0ODAz
Nzg1MDYyMzM0ZWIxOTk1Li4xMGNmNmY5OTY0NWRjMzk3YTJiNmMzZWU4YWNlYjM5MjQ2OWE4MTFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0ZEZ1
bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hdGl2ZVN0
ZEZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTTmF0aXZlU3RkRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU05h
dGl2ZVN0ZEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTmF0aXZlU3RkRnVuY3Rpb246
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTmF0aXZlU3RkRnVuY3Rpb24pIH07CiAKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHJ1blN0ZEZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRleCA2YjdjNTg4MWFkOWJmZmRj
YTVhMjQ5YTQzNzEwMjVhMmNmNDdmODBiLi5iZjkwNmEyN2Y4MzU5NzBjODU1OTkwZDA1MmIzZGUz
YzY5OGFhYWQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09O
T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0
LmNwcApAQCAtNjI4LDcgKzYyOCw3IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5k
TmV4dFByb3BlcnR5KFN0cmluZ2lmaWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCiAKLWNvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7
ICJKU09OIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU09OT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTT05P
YmplY3Q6OnNfaW5mbyA9IHsgIkpTT04iX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZq
c29uVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPTk9iamVjdCkgfTsKIAog
LyogU291cmNlIGZvciBKU09OT2JqZWN0Lmx1dC5oCiBAYmVnaW4ganNvblRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAKaW5kZXggMDM5YzQ2NTA1MzExZmNh
NzFiNDI5NWYxYmE2OTNiMzAyMTAzYTk0NS4uNWMxMTE2NDFjZTRiZTRhOGNmMGI4MDQ1OWZlNTI3
MTNmNjFkY2RjZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNw
cApAQCAtNjUsOSArNjUsOSBAQCBjb25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9w
ZXJ0eUNoYW5nZUNvbmZpZ3VyYWJpbGl0eUVycm9yIHsgIkF0dGVtcHRpbgogY29uc3QgQVNDSUlM
aXRlcmFsIFVuY29uZmlndXJhYmxlUHJvcGVydHlDaGFuZ2VFbnVtZXJhYmlsaXR5RXJyb3IgeyAi
QXR0ZW1wdGluZyB0byBjaGFuZ2UgZW51bWVyYWJsZSBhdHRyaWJ1dGUgb2YgdW5jb25maWd1cmFi
bGUgcHJvcGVydHkuIl9zIH07CiBjb25zdCBBU0NJSUxpdGVyYWwgVW5jb25maWd1cmFibGVQcm9w
ZXJ0eUNoYW5nZVdyaXRhYmlsaXR5RXJyb3IgeyAiQXR0ZW1wdGluZyB0byBjaGFuZ2Ugd3JpdGFi
bGUgYXR0cmlidXRlIG9mIHVuY29uZmlndXJhYmxlIHByb3BlcnR5LiJfcyB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU09iamVjdCkgfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTRmluYWxPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbE9iamVjdCkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0ZpbmFsT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbE9iamVj
dCkgfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIEFMV0FZU19JTkxJTkUgdm9pZCBK
U09iamVjdDo6bWFya0F1eGlsaWFyeUFuZFZpc2l0T3V0T2ZMaW5lUHJvcGVydGllcyhWaXNpdG9y
JiB2aXNpdG9yLCBCdXR0ZXJmbHkqIGJ1dHRlcmZseSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBy
b3BlcnR5T2Zmc2V0IG1heE9mZnNldCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1Byb21pc2UuY3BwCmluZGV4IDFhMWQ3YzNmM2M5YTNmNzdhMmI0YWFiYjU2ZTdkNDc1NmY0YWY1
OTMuLjVhMmM1ZmRjNGQ2NzBiNWVjYWI3ZTJjNDhhOTcwNzdlOTk2ZTY3NjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlLmNwcApAQCAtMzUsNyArMzUsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZvID0g
eyAiUHJvbWlzZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNQcm9taXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZTo6c19pbmZv
ID0geyAiUHJvbWlzZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVh
dGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcAppbmRleCA4ZDNi
OWI4NjYzYjcwYWE0YWRiZjhhNWUxMDU4MjI4OWI0NWNmM2FmLi42MThiZGJmYTIzYjY5ODM4NTc4
MTU5ZWY2ODc0YTY3ZTc2YjEyOGVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNQcm9taXNlQ29uc3RydWN0b3IuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Byb21pc2VDb25zdHJ1Y3Rv
cik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnByb21pc2VDb25z
dHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnByb21pc2VDb25zdHJ1Y3RvclRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZUNvbnN0cnVjdG9yKSB9Owog
CiAvKiBTb3VyY2UgZm9yIEpTUHJvbWlzZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcHJvbWlz
ZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwCmluZGV4IDkxNzJmZTU3MjQ5ODhjYjBhNzE5MTc1MDRl
MWViZTk1MWRjNjBkZTcuLjY2NjZjN2Q1MDE5ZjUxYWU4ZTA0OTRjN2VhY2JiOWU5ZDkxNzY0Y2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUHJv
dG90eXBlLmNwcApAQCAtMzksNyArMzksNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoSlNQcm9taXNlUHJvdG90eXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Byb21pc2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlByb21pc2UiLCAm
QmFzZTo6c19pbmZvLCAmcHJvbWlzZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTUHJvbWlzZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlByb21pc2UiX3MsICZCYXNlOjpzX2luZm8sICZwcm9t
aXNlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNl
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIHByb21pc2VQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAKaW5kZXggNmVl
MzIwZjdlM2Q5MDliNmNkMGUzNzkzNjFkYTBhYTBlODc1N2M0My4uNTI1MDliYjZlNDcyMTQzMGEy
YWIxMGNkMzM4NmJlNDMxYWViNjM0OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwCkBAIC0zMCw3ICsz
MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yOjpzX2luZm8gPSB7ICJKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IiLCBudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3I6
OnNfaW5mbyA9IHsgIkpTUHJvcGVydHlOYW1lRW51bWVyYXRvciJfcywgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3Ip
IH07CiAKIEpTUHJvcGVydHlOYW1lRW51bWVyYXRvciogSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9y
OjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgdWludDMyX3QgaW5kZXhlZExl
bmd0aCwgdWludDMyX3QgbnVtYmVyU3RydWN0dXJlUHJvcGVydGllcywgUHJvcGVydHlOYW1lQXJy
YXkmJiBwcm9wZXJ0eU5hbWVzKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNQcm94eS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1By
b3h5LmNwcAppbmRleCBmNDUzZmFiOWM4ZGE3ZDJjZDQxNjNiNTUzMzA4NjU1OGU3ZmU2MmNhLi40
ODFkODU3OTNlYzM5YjFiNDM1ZDlmYmVlMmJiNmU5NDJhZGY0ZTFmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb3h5LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTUHJveHkp
OwogCi1jb25zdCBDbGFzc0luZm8gSlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb3h5OjpzX2luZm8gPSB7ICJKU1Byb3h5Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkp
IH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEpTUHJveHk6OnZpc2l0Q2hp
bGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKaW5kZXggNTkzOWQ4
ZjJkNTFmYTBiM2JmYjU2MjVmMmIxZWY1NDdiMjlkZTFmMC4uYWYwNzE4ZTlhYWNkYTc5NzJmZTc1
MDQ4YjhmODBmNGQxN2Y2NWM1ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNSZW1vdGVGdW5jdGlvbi5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1JlbW90ZUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNSZW1vdGVGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZUZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1JlbW90ZUZ1bmN0aW9uKSB9OwogCiBKU1JlbW90
ZUZ1bmN0aW9uOjpKU1JlbW90ZUZ1bmN0aW9uKFZNJiB2bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhl
Y3V0YWJsZSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTT2JqZWN0KiB0YXJnZXRGdW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUs
IGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQpAQCAtNjYsNyArNjYsNyBAQCBzdGF0aWMgaW5saW5l
IEpTVmFsdWUgd3JhcEFyZ3VtZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTR2xv
YmFsT2JqZWN0KgogICAgIEpTVmFsdWUgcmVzdWx0ID0gd3JhcFZhbHVlKGdsb2JhbE9iamVjdCwg
dGFyZ2V0R2xvYmFsT2JqZWN0LCB2YWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgeyB9KTsKICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxs
YWJsZSBvciBwcmltaXRpdmUiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBv
ciBwcmltaXRpdmUiX3MpOwogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsK
IH0KIApAQCAtNzcsNyArNzcsNyBAQCBzdGF0aWMgaW5saW5lIEpTVmFsdWUgd3JhcFJldHVyblZh
bHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZQogICAgIEpTVmFs
dWUgcmVzdWx0ID0gd3JhcFZhbHVlKGdsb2JhbE9iamVjdCwgdGFyZ2V0R2xvYmFsT2JqZWN0LCB2
YWx1ZSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKICAgICBpZiAoIXJl
c3VsdCkKLSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVl
IHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsK
KyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3Np
bmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiX3MpOwogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsKIH0KIApAQCAtMjI4LDcgKzIyOCw3
IEBAIHZvaWQgSlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNoQ3JlYXRpb24oSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgVk0mIHZtKQogICAgIGF1dG8qIGV4Y2VwdGlvbiA9IHNjb3BlLmV4Y2Vw
dGlvbigpOwogICAgIGlmIChVTkxJS0VMWShleGNlcHRpb24gJiYgIXZtLmlzVGVybWluYXRpb25F
eGNlcHRpb24oZXhjZXB0aW9uKSkpIHsKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24oKTsK
LSAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIndyYXBwaW5nIHJl
dHVybmVkIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvciIpOworICAgICAgICB0aHJvd1R5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAid3JhcHBpbmcgcmV0dXJuZWQgZnVuY3Rpb24gdGhyb3dz
IGFuIGVycm9yIl9zKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTU2NvcGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNTY29wZS5jcHAKaW5kZXggNDk1ZGM2M2M0ZmFiYWE0NTE1NmQ1MzNlYzU3YTU3MjQ0NTA4NjMw
NC4uODM0Y2QzMzQwMTZhMjM3YTQ3ZDYyNmQ5ZjExOTg3MjcxZTU1NDE5OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY29wZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY29wZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Nj
b3BlKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3Bl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2NvcGU6OnNfaW5mbyA9IHsgIlNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NvcGUp
IH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEpTU2NvcGU6OnZpc2l0Q2hp
bGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNw
cAppbmRleCA5ZjIxNTFmYjkzYTkzNTlmNTVkYjY5YjE1NWUxOTVhMWY1NWNlMzU5Li5mZjA2YWZl
OGIyYjBlNzBhYmVkNTk0MWMwYjE1MWEyODBhNzlmZGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMuY3BwCkBA
IC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNT
Y3JpcHRGZXRjaFBhcmFtZXRlcnM6OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJz
IiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njcmlw
dEZldGNoUGFyYW1ldGVycykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NjcmlwdEZldGNoUGFyYW1l
dGVyczo6c19pbmZvID0geyAiSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMiX3MsIG51bGxwdHIsIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaFBhcmFtZXRl
cnMpIH07CiAKIHZvaWQgSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6OmRlc3Ryb3koSlNDZWxsKiBj
ZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3Jp
cHRGZXRjaGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0
Y2hlci5jcHAKaW5kZXggMjZjOWM3NjZjZjAxNTFmNmIzYWU3MDNmODMyNzNkNzFmMzA0ZTNiNC4u
ZTQzNGFkZTg0OWMxNmRiNGVkMTRiZjljYTViNDI1NTJkMGUxZWEyMCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoZXIuY3BwCkBAIC0zMCw3ICsz
MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRj
aGVyOjpzX2luZm8gPSB7ICJKU1NjcmlwdEZldGNoZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NyaXB0RmV0Y2hlcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1NjcmlwdEZldGNoZXI6OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hlciJfcywgbnVs
bHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNo
ZXIpIH07CiAKIHZvaWQgSlNTY3JpcHRGZXRjaGVyOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFy
aWFibGVPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50
ZWRWYXJpYWJsZU9iamVjdC5jcHAKaW5kZXggZWJjYTIxZTg5OWVkOTdjOTcxNzllMGQyNDAyZGYz
NzIxNTNhYjExNy4uYTc0ODM2NDU0ZDc1ODM4NTZiZGI0MzRlMjU3ZDcyNjM2MzEzZjEyNCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJs
ZU9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZWdtZW50
ZWRWYXJpYWJsZU9iamVjdC5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7
ICJTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpzX2luZm8gPSB7ICJTZWdt
ZW50ZWRWYXJpYWJsZU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0KSB9OwogCiBTY29w
ZU9mZnNldCBKU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0OjpmaW5kVmFyaWFibGVJbmRleCh2b2lk
KiB2YXJpYWJsZUFkZHJlc3MpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1NldC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5j
cHAKaW5kZXggOTQ0ZTBmYTA5ZWM0YWNjMmU5MzY2NDY5MDVjYTE4MzkzOGMwZDUzZi4uOWFmM2Q5
NDlmMTc2ODEzNDdmNDJiNmMwNTI1ZTFlOTMyOTY1MmE2MiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU2V0LmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTU2V0OjpzX2luZm8gPSB7ICJTZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXQpIH07CiAKIEpTU2V0KiBKU1Nl
dDo6Y2xvbmUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU2V0SXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJ
dGVyYXRvci5jcHAKaW5kZXggYmYxNzlhZWJkZTFkMmUxODdlZjk0ZDJhNWY3OTI4OTAxMzIzMDhk
Yy4uMTI1ZWI5NjA2MzdlZjBkN2VmN2E5ZmQ5M2VlMzBiYzM4OGUxMDIyNyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXRJdGVyYXRvci5jcHAKQEAgLTMyLDcgKzMy
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NldEl0ZXJhdG9y
OjpzX2luZm8gPSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNTZXRJdGVyYXRvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0SXRlcmF0b3Ip
IH07CiAKIEpTU2V0SXRlcmF0b3IqIEpTU2V0SXRlcmF0b3I6OmNyZWF0ZVdpdGhJbml0aWFsVmFs
dWVzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNTb3VyY2VDb2RlLmNwcAppbmRleCA5MTNjNTgxNmQ1NzhmZmYwZmJi
OGMyN2E5MDQ4YWExM2VlMzg1MjY3Li40ZTIwMGU1NmRjZmE0NzMwMzlkYzg5MDliNzg0YmI5ZTQw
NjY4ZWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJj
ZUNvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU291cmNlQ29k
ZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1NvdXJjZUNvZGU6OnNfaW5mbyA9IHsgIkpTU291cmNlQ29kZSIsIG51bGxwdHIsIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTb3VyY2VDb2RlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTU291cmNlQ29kZTo6c19pbmZvID0geyAiSlNTb3VyY2VDb2RlIl9zLCBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU291cmNlQ29k
ZSkgfTsKIAogdm9pZCBKU1NvdXJjZUNvZGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwCmluZGV4IDU4MjUyMDNiMzIw
Y2I3M2QzOTc1ZWNlYTZiZmY5NzNhMTBkMGJiNDguLmI2NzNjZDgyMTAyMzBmODYyZmExN2M3MmNi
MDQ2N2Y0ZWMyOTE1NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3RyaW5nLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmlu
Zy5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBD
bGFzc0luZm8gSlNTdHJpbmc6OnNfaW5mbyA9IHsgInN0cmluZyIsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTdHJpbmcpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNTdHJpbmc6OnNfaW5mbyA9IHsgInN0cmluZyJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N0cmluZykgfTsKIAogU3RydWN0dXJlKiBKU1N0
cmluZzo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlNWYWx1ZSBwcm90bykKIHsKQEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBKU1N0cmluZzo6ZHVt
cFRvU3RyZWFtKGNvbnN0IEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKIHsKICAgICBW
TSYgdm0gPSBjZWxsLT52bSgpOwogICAgIGNvbnN0IEpTU3RyaW5nKiB0aGlzT2JqZWN0ID0ganND
YXN0PGNvbnN0IEpTU3RyaW5nKj4oY2VsbCk7Ci0gICAgb3V0LnByaW50ZigiPCVwLCAlcywgWyV1
XSwgIiwgdGhpc09iamVjdCwgdGhpc09iamVjdC0+Y2xhc3NOYW1lKHZtKSwgdGhpc09iamVjdC0+
bGVuZ3RoKCkpOworICAgIG91dC5wcmludGYoIjwlcCwgJXMsIFsldV0sICIsIHRoaXNPYmplY3Qs
IHRoaXNPYmplY3QtPmNsYXNzTmFtZSh2bSkuY2hhcmFjdGVycygpLCB0aGlzT2JqZWN0LT5sZW5n
dGgoKSk7CiAgICAgdWludHB0cl90IHBvaW50ZXIgPSB0aGlzT2JqZWN0LT5maWJlckNvbmN1cnJl
bnRseSgpOwogICAgIGlmIChwb2ludGVyICYgaXNSb3BlSW5Qb2ludGVyKSB7CiAgICAgICAgIGlm
IChwb2ludGVyICYgSlNSb3BlU3RyaW5nOjppc1N1YnN0cmluZ0luUG9pbnRlcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKaW5kZXgg
ZDRjMTJlOWI4NGJmYTk4ZWNjYmM0OTc3NzJhZTI1M2Y1N2ZjZjU1ZC4uMjk1NWI3Y2Y4YzAxZTQ0
MTY5NDk3ZmE4NjhmMGE3YzhiMTYyOTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1N0cmluZ0l0ZXJhdG9yOjpzX2luZm8g
PSB7ICJTdHJpbmcgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nSXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
SlNTdHJpbmdJdGVyYXRvcjo6c19pbmZvID0geyAiU3RyaW5nIEl0ZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nSXRl
cmF0b3IpIH07CiAKIHZvaWQgSlNTdHJpbmdJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
LCBKU1N0cmluZyogaXRlcmF0ZWRTdHJpbmcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTU3ltYm9sVGFibGVPYmplY3QuY3BwCmluZGV4IDhmMGE5Y2NlYTcx
ZTVhMTEwNjc0NGUxNjAxMmUwZDljYWM1OTI4OTcuLmZiNjBmY2UwMDg1ZTI4ZjBhOWI5ODdiZjUx
ZTczMGIyZDkzYWQ3NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3ltYm9sVGFibGVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTU3ltYm9sVGFibGVPYmplY3QuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTeW1ib2xUYWJsZU9iamVjdDo6c19pbmZvID0g
eyAiU3ltYm9sVGFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU3ltYm9sVGFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNTeW1ib2xUYWJsZU9iamVjdDo6c19pbmZvID0geyAiU3ltYm9sVGFibGVPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNT
eW1ib2xUYWJsZU9iamVjdCkgfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQg
SlNTeW1ib2xUYWJsZU9iamVjdDo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNp
dG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IuY3BwCmluZGV4IDQyODk5MGEzYWI0YTRh
YmE1Mjg2ODk2OTc3OGUzMWMzMDA2NTljOTguLjA4ODNlODhiNzAzY2ZhMTljYThiZTNhMjQ1NzE2
YTA3ZjZlNWFiMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
VGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVz
Y3JpcHRvcjo6c19pbmZvID0geyAiVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yIiwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1RlbXBsYXRlT2JqZWN0RGVz
Y3JpcHRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6
c19pbmZvID0geyAiVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yIl9zLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9y
KSB9OwogCiAKIEpTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yOjpKU1RlbXBsYXRlT2JqZWN0RGVz
Y3JpcHRvcihWTSYgdm0sIFJlZjxUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I+JiYgZGVzY3JpcHRv
ciwgaW50IGVuZE9mZnNldCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDk1YWJlYzU0MDlhMzFl
YTc4MzEzZDNjNWYzOWFkYjQ1ODViOGZhZDQuLmJlOWEyNWFiYzNlOWFjODhiOGQ2NmI3YzM3OGQ5
ZDRhZTRmMzQyZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNUeXBlZEFycmF5Q29uc3RydWN0b3JzLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogI3VuZGVmIE1BS0VfU19JTkZPCiAjZGVmaW5lIE1BS0VfU19JTkZPKHR5
cGUpIFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0Nv
bnN0cnVjdG9yKX0KKyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9y
OjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMj
I3R5cGUjI0NvbnN0cnVjdG9yKSB9CiAKIE1BS0VfU19JTkZPKEludDhBcnJheSk7CiBNQUtFX1Nf
SU5GTyhJbnQxNkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTVHlwZWRBcnJheVByb3RvdHlwZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90eXBlcy5jcHAKaW5kZXggYmE4MThlYTMwODJmZjQwNGM5
ZDRhN2YxNDE4MWVjOTc3YjgxOTMwYS4uOGQxNzZmOTQ0Y2VkZDBiNmI1NTY2YWNkMTg2NDcxMTg3
MjhhODM3NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBl
ZEFycmF5UHJvdG90eXBlcy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5UHJvdG90eXBlcy5jcHAKQEAgLTMxLDEyICszMSwxMSBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OnNf
aW5mbyA9IHsiUHJvdG90eXBlIiwgJkpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGU6OkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwKLSAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlwZWRB
cnJheVZpZXdQcm90b3R5cGUpfTsKK2NvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJQcm90b3R5cGUiX3MsICZKU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZSkgfTsKIAogI3VuZGVmIE1BS0VfU19JTkZPCiAjZGVm
aW5lIE1BS0VfU19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
UyMjdHlwZSMjUHJvdG90eXBlOjpzX2luZm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlw
ZSMjUHJvdG90eXBlOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlMjI3R5cGUjI1Byb3RvdHlwZSl9CisgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlMjI3R5cGUjI1Byb3RvdHlwZTo6c19pbmZvID0geyAjdHlwZSAiUHJvdG90eXBlIl9z
LCAmSlMjI3R5cGUjI1Byb3RvdHlwZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNQcm90b3R5cGUpIH0KIAogTUFLRV9TX0lORk8o
SW50OEFycmF5KTsKIE1BS0VfU19JTkZPKEludDE2QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggZmEzMzM4MmVmYzgzYzA1ZjE5NWQ1NGJlNmY0NTA4NDNjMTBhZjUyMS4uNDcz
OGYwZWVmNTc0ZjIyZGY4NDdhNmM0M2FiODdhMDU3ODJhY2I0NCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3Ry
dWN0b3IuY3BwCkBAIC0zOSw3ICszOSw3IEBAIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6
SlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1CiB7CiB9
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5
cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgSlNUeXBlZEFycmF5Vmlld0NvbnN0
cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUqIHByb3RvdHlwZSwgR2V0dGVyU2V0dGVyKiBz
cGVjaWVzU3ltYm9sKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAppbmRleCA4ODI3YjNkZTk4ZmUw
NWZlNThiOTE3MDQyOWUzODY0OTk1ZTE5ZjU4Li4zZjllYzg0MDBlOWVjZjllYWEwNTkzMjdkNTIw
NjU4NzlkNjZhZTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlLmNwcApAQCAtMjYzLDcgKzI2Myw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTih0eXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVz
LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1df
U0NPUEUodm0pOwogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0gY2FsbEZyYW1lLT50aGlzVmFsdWUo
KTsKICAgICBpZiAoIXRoaXNWYWx1ZS5pc09iamVjdCgpKQotICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
ICJSZWNlaXZlciBzaG91bGQgYmUgYSB0eXBlZCBhcnJheSB2aWV3IGJ1dCB3YXMgbm90IGFuIG9i
amVjdCIpKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmVjZWl2ZXIgc2hvdWxkIGJlIGEgdHlw
ZWQgYXJyYXkgdmlldyBidXQgd2FzIG5vdCBhbiBvYmplY3QiX3MpKTsKICAgICBzY29wZS5yZWxl
YXNlKCk7CiAgICAgQ0FMTF9HRU5FUklDX1RZUEVEQVJSQVlfUFJPVE9UWVBFX0ZVTkNUSU9OKGdl
bmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY0luY2x1ZGVzKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKaW5kZXggOTBiMzA0NTY3MGFm
MGFiZTJmNmQwMjdlZGU5ZDg4NWZmZjA0YWYzOS4uZDliMjI2Mjk0NDBjOGM3MGExZDZhM2YyOTE5
ZTI3Y2QxNDhkNGQwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNUeXBlZEFycmF5cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNU
eXBlZEFycmF5cy5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgY29uc3QgQVNDSUlMaXRlcmFsIHR5cGVk
QXJyYXlCdWZmZXJIYXNCZWVuRGV0YWNoZWRFcnJvck1lc3NhZ2UgeyAiVW5kZXJseWluZyBBcnIK
ICN1bmRlZiBNQUtFX1NfSU5GTwogI2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCiAgICAgdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI0FycmF5OjpzX2luZm8gPSB7IFwKLSAg
ICAgICAgI3R5cGUgIkFycmF5IiwgJkpTIyN0eXBlIyNBcnJheTo6QmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBcCisgICAgICAgICN0eXBlICJBcnJheSJfcywgJkpTIyN0eXBlIyNBcnJh
eTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBcCiAgICAgICAgIENSRUFURV9NRVRI
T0RfVEFCTEUoSlMjI3R5cGUjI0FycmF5KSBcCiAgICAgfTsgXAogICAgIGNvbnN0IENsYXNzSW5m
byogZ2V0IyN0eXBlIyNBcnJheUNsYXNzSW5mbygpIHsgcmV0dXJuICZKUyMjdHlwZSMjQXJyYXk6
OnNfaW5mbzsgfSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNw
cAppbmRleCA0MWViZDhmN2VmNTQ3ZjQxMGYyNjMwYWVmZWM5YzlkZmVkNjE0NDE1Li5jMTIwODU1
NGI5MWExZDdkMTM4NWRiODQwOTAyZDhkOTgyOGRlNDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKQEAgLTMwLDYgKzMwLDYgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtNYXAi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2Vha01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYWtNYXA6OnNfaW5mbyA9IHsgIldlYWtN
YXAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNXZWFrTWFwKSB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNXZWFrT2JqZWN0UmVmLmNwcAppbmRleCAxNTYxM2QzODkwYThkOTE3YWMyMDJkNjc2MjI3
M2RlODY4NmVmYWU2Li4yODNkN2VmMjgzN2VlZTUwMDczYmZhYWM5MGY4ZGJiOGM0Njc1MzE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha09iamVjdFJlZi5j
cHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBKU1dlYWtPYmplY3RSZWY6OnNfaW5mbyA9IHsgIldlYWtSZWYiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha09iamVjdFJlZikgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1dlYWtPYmplY3RSZWY6OnNfaW5mbyA9IHsgIldlYWtSZWYiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWFrT2JqZWN0UmVmKSB9OwogCiB2b2lkIEpTV2Vha09iamVjdFJlZjo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtLCBKU09iamVjdCogdmFsdWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNXZWFrU2V0LmNwcAppbmRleCBiZmRkOTRlZDA5ZGYzOGRhYThiMWY2MmQ4NTQzZWYxYmJi
YmZhMmYxLi5hMDFiNzhhNzU0OTJlOGU4MDc5MjU5MDY5MWZkOWI3MzE4ODcwOTU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha1NldC5jcHAKQEAgLTMwLDYgKzMwLDYg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNfaW5m
byA9IHsgIldlYWtTZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV2Vha1NldCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYWtTZXQ6OnNf
aW5mbyA9IHsgIldlYWtTZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNXZWFrU2V0KSB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dpdGhTY29wZS5jcHAKaW5kZXggYWMxZmEyNWZiYjQ4NmIwNGYzZDJk
YTQzNzIyYjY5YTU3MDc0NTYxZS4uMTE5ZThhYzJkODQ2NTk0MmE4YzFkNjhmNGVhZmU3ZTdhM2I2
ZDY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2Nv
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNw
cApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJXaXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJXaXRoU2NvcGUiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXaXRoU2NvcGUp
IH07CiAKIEpTV2l0aFNjb3BlKiBKU1dpdGhTY29wZTo6Y3JlYXRlKAogICAgIFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNTY29wZSogbmV4dCwgSlNPYmplY3QqIG9iamVj
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJz
ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAK
aW5kZXggNDEyZTI1OGFiMDk1OWYxOGIzMmRhOTkxZGIzZjk2MDRmMjk4YjdmNC4uYjM5NTFkZWVh
N2VkY2EyYTk1MmJmODY5NGRkYjY2NGVmODU4YmEwMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHAKQEAgLTExNjEsNyArMTE2MSw3IEBAIEFM
V0FZU19JTkxJTkUgSlNWYWx1ZSBMaXRlcmFsUGFyc2VyPENoYXJUeXBlPjo6cGFyc2VQcmltaXRp
dmVWYWx1ZShWTSYgdm0pCiAgICAgICAgICAgICBpZiAodG9rZW4tPnN0cmluZ0xlbmd0aCA+IHNo
b3J0TGVuZ3RoKQogICAgICAgICAgICAgICAgIGVycm9yU3RyaW5nID0gdHJ5TWFrZUVycm9yU3Ry
aW5nKHNob3J0TGVuZ3RoKTsKICAgICAgICAgICAgIGlmICghZXJyb3JTdHJpbmcpCi0gICAgICAg
ICAgICAgICAgZXJyb3JTdHJpbmcgPSAiVW5leHBlY3RlZCBpZGVudGlmaWVyIjsKKyAgICAgICAg
ICAgICAgICBlcnJvclN0cmluZyA9ICJVbmV4cGVjdGVkIGlkZW50aWZpZXIiX3M7CiAgICAgICAg
IH0KIAogICAgICAgICBtX3BhcnNlRXJyb3JNZXNzYWdlID0gZXJyb3JTdHJpbmc7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTVh
Mjg5ODY3NTg0ODI5ZmVhMjE0MWY5Njg4MjQ5NTA2MDhjYjc4Yi4uMzU0MDEyZGJkNDhmNGM3ODI3
YjZiOWQ2ZWE2OWQ5MDVjNDI0YTVjYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcENvbnN0cnVjdG9yLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoTWFwQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTWFwQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKE1hcENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIE1hcENvbnN0cnVj
dG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIE1hcFByb3RvdHlwZSogbWFwUHJvdG90eXBlLCBH
ZXR0ZXJTZXR0ZXIqIHNwZWNpZXNTeW1ib2wpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggNmFjNTg3YjVl
ODY5OTcxM2NjZGNiY2MzZjVhMjExMWVjZmJhOTIyNy4uZjczMWM1ZDM0NWUyYjQxZGE1OWM3MjAw
NjcwMzIwYjQ3OGE1YjljZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcEl0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJNYXAgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3IiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwSXRl
cmF0b3JQcm90b3R5cGUpIH07CiAKIHZvaWQgTWFwSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwCmluZGV4IDkzZWJlMDAz
YzQ3MmJjODk0M2E4NThkYTgzNTM0ZjJiYjdhMTgwNmUuLmZmY2JkNzhmMTY0OWQ0YWJjYzcyNTY0
NDcyMDQ0YjZmMDVlNTM0ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIE1hcFByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNf
aW5mbywgJm1hcFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsg
Ik1hcCJfcywgJkJhc2U6OnNfaW5mbywgJm1hcFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBNYXBQcm90
b3R5cGUubHV0LmgKIEBiZWdpbiBtYXBQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcAppbmRleCA1YjBjYTk3N2QwODUxYzRiYjY3Yzll
NDY0ZTVhMTAzYzIyYzE0YjM3Li5kZTY4YWE5NzQ0NmU3MDlhOGY0MTExMDBiY2QyZmIwYjRiYWVj
MTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXRoT2JqZWN0LmNwcApA
QCAtNjMsNyArNjMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJv
dG9GdW5jVGFuKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1
bmNUYW5oKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKG1hdGhQcm90b0Z1bmNJ
TXVsKTsKIAotY29uc3QgQ2xhc3NJbmZvIE1hdGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hdGhP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gTWF0aE9iamVjdDo6c19pbmZvID0geyAiTWF0aCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShN
YXRoT2JqZWN0KSB9OwogCiBNYXRoT2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0
YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhl
Y3V0YWJsZS5jcHAKaW5kZXggMWQ1M2JmNWQxMGE2ZjQ0OGQzOTMzY2YxNDFiNzA0OWRkMjYyY2M3
NC4uMjQ3ZmFhNjVlYmNlNmVhMzk0NzZjYzI2ZWY0ZDJlNTI2ZDU5ZTU2OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01vZHVsZVByb2dyYW1FeGVjdXRh
YmxlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIE1vZHVsZVByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJNb2R1bGVQcm9ncmFt
RXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gTW9k
dWxlUHJvZ3JhbUV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIk1vZHVsZVByb2dyYW1FeGVjdXRhYmxl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KE1vZHVsZVByb2dyYW1FeGVjdXRhYmxlKSB9OwogCiBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZTo6
TW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29u
c3QgU291cmNlQ29kZSYgc291cmNlKQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkubW9k
dWxlUHJvZ3JhbUV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwg
c291cmNlLCBmYWxzZSwgRGVyaXZlZENvbnRleHRUeXBlOjpOb25lLCBmYWxzZSwgZmFsc2UsIEV2
YWxDb250ZXh0VHlwZTo6Tm9uZSwgTm9JbnRyaW5zaWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDIx
M2Q5ZmI3YTY4YWIyYWM4Zjk2ZDg2NzBkOGFlMzQ2ZjEzOWUzZmMuLjcwMmUzNjkwMDYyZjVjYmRl
NjZlYzc2ZjM3NDc0ZGNkODRhZDY5NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpOwogCi1jb25zdCBDbGFzc0luZm8gTmF0
aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2U6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVFcnJvckNv
bnN0cnVjdG9yQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9y
QmFzZTo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpIH07
CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxFdmFsRXJyb3IpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0RXZhbEVycm9yKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKaW5k
ZXggNjRmOWQxZmQ2Mzg4NjNjZmVmNTEwZDg0MDFhZmM4OWM3ZDdiOWE2YS4uZTA5NjYzYjJkYTMz
N2YyMzMzOGU3ZTliYzYwOTNlNWFkYzJmMTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOYXRpdmVFeGVjdXRhYmxlOjpzX2lu
Zm8gPSB7ICJOYXRpdmVFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJsZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBOYXRpdmVFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJOYXRpdmVFeGVjdXRh
YmxlIl9zLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShOYXRpdmVFeGVjdXRhYmxlKSB9OwogCiBOYXRpdmVFeGVjdXRhYmxlKiBO
YXRpdmVFeGVjdXRhYmxlOjpjcmVhdGUoVk0mIHZtLCBSZWY8SklUQ29kZT4mJiBjYWxsVGh1bmss
IFRhZ2dlZE5hdGl2ZUZ1bmN0aW9uIGZ1bmN0aW9uLCBSZWY8SklUQ29kZT4mJiBjb25zdHJ1Y3RU
aHVuaywgVGFnZ2VkTmF0aXZlRnVuY3Rpb24gY29uc3RydWN0b3IsIGNvbnN0IFN0cmluZyYgbmFt
ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0
ZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVy
RnVuY3Rpb24uY3BwCmluZGV4IGFhZTIwYTViYzc1OWIwNTJjZjE5Mzk3ODhiNmMwMGMyYWRiMjJj
ZmIuLjYyNzBkNTM0NzE3MmMyNDI5Zjg3ZTAxODRhMjVkZjllZDM4MWUzN2MgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0aW9uLmNwcApA
QCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE51
bGxHZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxHZXR0ZXJGdW5jdGlvbikg
fTsKK2NvbnN0IENsYXNzSW5mbyBOdWxsR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE51bGxHZXR0ZXJGdW5jdGlvbikgfTsKIAogbmFtZXNwYWNlIE51bGxHZXR0ZXJGdW5jdGlv
bkludGVybmFsIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TnVsbFNldHRlckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bGxTZXR0ZXJGdW5jdGlvbi5jcHAKaW5kZXggZjIxOWI5MzI2YmJkYWFlZGZlM2ZhMWM2Yjg2ZjFh
YWMzYTUxOGJjMy4uMDk1YzYwNWIxOTIwZjc1MTA1YWRjMWQ0NGY4ZDMzYjgwNzIyNzBiOSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0dGVyRnVuY3Rp
b24uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gTnVsbFNldHRlckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVsbFNldHRlckZ1
bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIE51bGxTZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoTnVsbFNldHRlckZ1bmN0aW9uKSB9OwogCiAKICNpZiBBU1NFUlRfRU5BQkxF
RApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3Ry
dWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0
b3IuY3BwCmluZGV4IDYyM2ExNmI1MjM1ZGY4MzlmYjllNWRlZWVmYjY1Mjg1YWNhNjI3ZDAuLmQy
YTA1MDVmZDcyNDFmMTdlNjNjOTMwYTBjYjA3ODY2MzdjMDBmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcg
KzM5LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShOdW1iZXJDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19p
bmZvLCAmbnVtYmVyQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShOdW1iZXJDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJDb25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZu
dW1iZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJl
ckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIE51bWJlckNvbnN0cnVjdG9yLmx1dC5o
CiBAYmVnaW4gbnVtYmVyQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlck9iamVjdC5jcHAKaW5kZXggZWZlYmIyOWExM2I5NWQxNzg3NmUwZjFm
MmRkYTU3NmE3ZDEwZjJiNy4uNTEyZGVmZTc2MTYwMzU1MTA5MTEyNGM0NDA0ZDNmMzI2ZjVhYzVi
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3Bw
CkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RS
SVZJQUxMWV9ERVNUUlVDVElCTEUoTnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51
bWJlck9iamVjdDo6c19pbmZvID0geyAiTnVtYmVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gTnVtYmVyT2JqZWN0OjpzX2luZm8gPSB7ICJOdW1iZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyT2JqZWN0KSB9Owog
CiBOdW1iZXJPYmplY3Q6Ok51bWJlck9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKaW5kZXggODg4NTkxZGRjMDZmZmFjYWQyZjBh
MDk3M2JmMDI1NTRkNjUxODBiNi4uNjliMzBmZjVlMWU3Yzc2YjBiMTc0NTE3N2NiYjhmZWEwNTYz
ZjBlYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90
b3R5cGUuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKG51bWJlclByb3RvRnVuY1RvUHJlY2lzaW9uKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBOdW1iZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk51bWJlciIsICZOdW1i
ZXJPYmplY3Q6OnNfaW5mbywgJm51bWJlclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE51bWJlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIk51bWJlciJfcywgJk51bWJlck9iamVjdDo6c19pbmZvLCAm
bnVtYmVyUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVy
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJl
Z2luIG51bWJlclByb3RvdHlwZVRhYmxlCkBAIC0zNzUsNyArMzc1LDcgQEAgU3RyaW5nIHRvU3Ry
aW5nV2l0aFJhZGl4KGRvdWJsZSBkb3VibGVWYWx1ZSwgaW50MzJfdCByYWRpeCkKICAgICAgICAg
cmV0dXJuIFN0cmluZzo6bnVtYmVyKGRvdWJsZVZhbHVlKTsKIAogICAgIFJhZGl4QnVmZmVyIGJ1
ZmZlcjsKLSAgICByZXR1cm4gdG9TdHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJs
ZVZhbHVlLCByYWRpeCk7CisgICAgcmV0dXJuIFN0cmluZyB7IHRvU3RyaW5nV2l0aFJhZGl4SW50
ZXJuYWwoYnVmZmVyLCBkb3VibGVWYWx1ZSwgcmFkaXgpIH07CiB9CiAKIC8vIHRvRXhwb25lbnRp
YWwgY29udmVydHMgYSBudW1iZXIgdG8gYSBzdHJpbmcsIGFsd2F5cyBmb3JtYXR0aW5nIGFzIGFu
IGV4cG9uZW50aWFsLgpAQCAtNDEyLDcgKzQxMiw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
TihudW1iZXJQcm90b0Z1bmNUb0V4cG9uZW50aWFsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
CiAgICAgICAgIGNvbnZlcnRlci5Ub0V4cG9uZW50aWFsKHgsIC0xLCAmYnVpbGRlcik7CiAgICAg
ZWxzZQogICAgICAgICBjb252ZXJ0ZXIuVG9FeHBvbmVudGlhbCh4LCBkZWNpbWFsUGxhY2VzLCAm
YnVpbGRlcik7Ci0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgYnVpbGRl
ci5GaW5hbGl6ZSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwg
U3RyaW5nIHsgYnVpbGRlci5GaW5hbGl6ZSgpIH0pKTsKIH0KIAogLy8gdG9GaXhlZCBjb252ZXJ0
cyBhIG51bWJlciB0byBhIHN0cmluZywgYWx3YXlzIGZvcm1hdHRpbmcgYXMgYW4gYSBkZWNpbWFs
IGZyYWN0aW9uLgpAQCAtNTEzLDcgKzUxMyw3IEBAIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTU3Ry
aW5nKiBudW1iZXJUb1N0cmluZ0ludGVybmFsKFZNJiB2bSwgZG91YmxlIGRvdWJsZVZhbHVlCiAg
ICAgICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcodm0sIFN0cmluZzo6bnVtYmVyKGRvdWJs
ZVZhbHVlKSk7CiAKICAgICBSYWRpeEJ1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIGpzU3RyaW5n
KHZtLCB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4
KSk7CisgICAgcmV0dXJuIGpzU3RyaW5nKHZtLCBTdHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeElu
dGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4KSB9KTsKIH0KIAogSlNTdHJpbmcqIGlu
dDMyVG9TdHJpbmcoVk0mIHZtLCBpbnQzMl90IHZhbHVlLCBpbnQzMl90IHJhZGl4KQpAQCAtNTQx
LDcgKzU0MSw3IEBAIEpTU3RyaW5nKiBpbnQ1MlRvU3RyaW5nKFZNJiB2bSwgaW50NjRfdCB2YWx1
ZSwgaW50MzJfdCByYWRpeCkKICAgICBjaGFyKiBzdGFydE9mUmVzdWx0U3RyaW5nID0gZGVjaW1h
bFBvaW50OwogICAgICpkZWNpbWFsUG9pbnQgPSAnXDAnOwogCi0gICAgcmV0dXJuIGpzTm9udHJp
dmlhbFN0cmluZyh2bSwgaW50NTJUb1N0cmluZ1dpdGhSYWRpeChzdGFydE9mUmVzdWx0U3RyaW5n
LCB2YWx1ZSwgcmFkaXgpKTsKKyAgICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCBTdHJp
bmcgeyBpbnQ1MlRvU3RyaW5nV2l0aFJhZGl4KHN0YXJ0T2ZSZXN1bHRTdHJpbmcsIHZhbHVlLCBy
YWRpeCkgfSk7CiB9CiAKIEpTU3RyaW5nKiBudW1iZXJUb1N0cmluZyhWTSYgdm0sIGRvdWJsZSBk
b3VibGVWYWx1ZSwgaW50MzJfdCByYWRpeCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAppbmRleCA1ODQwNmVhNzMxYzk0YWViNzQ5
MTE5MmViZTZkMTRjOTNhMjM4Yzc3Li4yNmFmNjE5ZGNhM2QyNmQ4ZWRjNTdiOWM5NTI2YmFlMDVj
OWVmMjZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0
Q29uc3RydWN0b3IuY3BwCkBAIC01Niw3ICs1Niw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0Q29uc3RydWN0b3IpOwog
Ci1jb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJm9iamVjdENvbnN0cnVjdG9yVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqZWN0Q29uc3RydWN0b3IpIH07Citjb25zdCBD
bGFzc0luZm8gT2JqZWN0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50
ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmb2JqZWN0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZv
ciBPYmplY3RDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIG9iamVjdENvbnN0cnVjdG9yVGFibGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3Bw
CmluZGV4IDk1YmJhM2NiMzIwZWE1YzcwZjk4MDQzZmUwZDI2NzAxNzczYTBlMmMuLjU5NWNiNDJh
OWM4NzM5YTMxYjIzMWU2MTVjZTExZWY3NDAyZGUwNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihvYmplY3RQcm90b0Z1bmNUb0xvY2FsZVN0
cmluZyk7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShPYmplY3RQ
cm90b3R5cGUpOwogCi1jb25zdCBDbGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7
ICJPYmplY3QiLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBP
YmplY3RQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkpTTm9uRmluYWxPYmplY3Q6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90
b3R5cGUpIH07CiAKIE9iamVjdFByb3RvdHlwZTo6T2JqZWN0UHJvdG90eXBlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHVjdHVyZSkKICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0dWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oCmluZGV4IDA5MTllNzIx
ODZkMzlkNmQ1NmVkZDcxOGE5Y2ZiOGEzMDRmNTkxNzEuLjJlODE4YmZmYTc5YzRhZjZmMGQzYzEy
NTI4ZmFhNTY1NThlYzVmM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL09wZXJhdGlvbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcGVy
YXRpb25zLmgKQEAgLTU3Myw3ICs1NzMsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUganNBZGQo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MgogfQog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBEb3VibGVPcGVyYXRpb24sIHR5cGVuYW1lIEJpZ0ludE9wPgot
QUxXQVlTX0lOTElORSBKU1ZhbHVlIGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBk
b3VibGVPcCwgQmlnSW50T3AmJiBiaWdJbnRPcCwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQor
QUxXQVlTX0lOTElORSBKU1ZhbHVlIGFyaXRobWV0aWNCaW5hcnlPcChKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBKU1ZhbHVlIHYyLCBEb3VibGVPcGVyYXRpb24mJiBk
b3VibGVPcCwgQmlnSW50T3AmJiBiaWdJbnRPcCwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkK
IHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERF
Q0xBUkVfVEhST1dfU0NPUEUodm0pOwpAQCAtNzgwLDcgKzc4MCw3IEBAIEFMV0FZU19JTkxJTkUg
SlNWYWx1ZSBzaGlmdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYxLCBK
U1ZhbHVlIHYyCiAgICAgfQogI2VuZGlmCiAKLSAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVm
dCA/ICJJbnZhbGlkIG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBv
cGVyYXRpb24uIiA6ICJJbnZhbGlkIG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gc2ln
bmVkIHJpZ2h0IHNoaWZ0IG9wZXJhdGlvbi4iOworICAgIGF1dG8gZXJyb3JNZXNzYWdlID0gaXNM
ZWZ0ID8gIkludmFsaWQgbWl4IG9mIEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBsZWZ0IHNoaWZ0
IG9wZXJhdGlvbi4iX3MgOiAiSW52YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGlu
IHNpZ25lZCByaWdodCBzaGlmdCBvcGVyYXRpb24uIl9zOwogICAgIHJldHVybiB0aHJvd1R5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvck1lc3NhZ2UpOwogfQogCkBAIC04MTUsNyAr
ODE1LDcgQEAgQUxXQVlTX0lOTElORSBKU1ZhbHVlIGpzVVJTaGlmdChKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGxlZnQsIEpTVmEKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUg
SW50MzJPcGVyYXRpb24sIHR5cGVuYW1lIEJpZ0ludE9wPgotQUxXQVlTX0lOTElORSBKU1ZhbHVl
IGJpdHdpc2VCaW5hcnlPcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHYx
LCBKU1ZhbHVlIHYyLCBJbnQzMk9wZXJhdGlvbiYmIGludDMyT3AsIEJpZ0ludE9wJiYgYmlnSW50
T3AsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3
aXNlQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNW
YWx1ZSB2MiwgSW50MzJPcGVyYXRpb24mJiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBB
U0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+
dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAKaW5k
ZXggZWFiZmE4NWFjYTM3ZWYwYWE3YzdkZjg5NWVhZTQxNzM5ZDE1NDkwZS4uNzMyOWZlMjcwMTg2
ODRhYjA1YzZhNDc3NmZhZDI5NmU1ODI4OWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpz
X2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvZ3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBD
bGFzc0luZm8gUHJvZ3JhbUV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFByb2dyYW1FeGVjdXRhYmxlKSB9OwogCiBQcm9ncmFtRXhlY3V0YWJsZTo6UHJvZ3JhbUV4ZWN1
dGFibGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291
cmNlKQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkucHJvZ3JhbUV4ZWN1dGFibGVTdHJ1
Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwgc291cmNlLCBmYWxzZSwgRGVyaXZlZENv
bnRleHRUeXBlOjpOb25lLCBmYWxzZSwgZmFsc2UsIEV2YWxDb250ZXh0VHlwZTo6Tm9uZSwgTm9J
bnRyaW5zaWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9w
ZXJ0eVRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFi
bGUuY3BwCmluZGV4IGFiNDE2Njk5ZTk2Mjc3YjJlY2ExMjE4ODkxNjgwMTkxZmIzMzI2ZmEuLjYy
MzE0YzdiZTJiYTkzYTg3ZmRiNjVhZGRiMTk1ZjU1YzRjZmJjMGYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBERUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVS
KFByb3BlcnR5VGFibGUpOwogCi1jb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZv
ID0geyAiUHJvcGVydHlUYWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoUHJvcGVydHlUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRh
YmxlOjpzX2luZm8gPSB7ICJQcm9wZXJ0eVRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3BlcnR5VGFibGUpIH07CiAKIFByb3BlcnR5VGFi
bGUqIFByb3BlcnR5VGFibGU6OmNyZWF0ZShWTSYgdm0sIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0
eSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1
Y3Rvci5jcHAKaW5kZXggZjcyZjhmN2FlZTUzMDkwNzE4NjM5NmMyMzE0NWNiYWJkZmJiMWYzYy4u
ODhjMTc3NGY4MDgwOWMxNzg1OGI1ZGMwYzRkMjU0ZjkwMzY2NjdmMyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcg
KzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShQcm94eUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIFByb3h5Q29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlByb3h5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIFByb3h5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlByb3h5Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5Q29uc3RydWN0
b3IpIH07CiAKIFByb3h5Q29uc3RydWN0b3IqIFByb3h5Q29uc3RydWN0b3I6OmNyZWF0ZShWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpAQCAtNzYsNyArNzYsNyBAQCBKU0NfREVGSU5F
X0hPU1RfRlVOQ1RJT04obWFrZVJldm9jYWJsZVByb3h5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgQ2FsbAogCiB2b2lkIFByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICBCYXNlOjpmaW5pc2hD
cmVhdGlvbih2bSwgMiwgIlByb3h5IiwgUHJvcGVydHlBZGRpdGlvbk1vZGU6OldpdGhvdXRTdHJ1
Y3R1cmVUcmFuc2l0aW9uKTsKKyAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSwgMiwgIlByb3h5
Il9zLCBQcm9wZXJ0eUFkZGl0aW9uTW9kZTo6V2l0aG91dFN0cnVjdHVyZVRyYW5zaXRpb24pOwog
ICAgIEpTQ19OQVRJVkVfRlVOQ1RJT05fV0lUSE9VVF9UUkFOU0lUSU9OKCJyZXZvY2FibGUiLCBt
YWtlUmV2b2NhYmxlUHJveHksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCAyKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUHJveHlPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UHJveHlPYmplY3QuY3BwCmluZGV4IDQ1ZjU4ZDk5ZDM1ZDVhMTNkZGI5OWUwYTY0Y2Y5MWZiNjZk
OTM4ZGYuLjFiOWNmNzA2ZGZkN2ZlNjdjNDU5NGM3ZDdkM2RlMGM5ZTJiMWU2OTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eU9iamVjdC5jcHAKQEAgLTM4LDcgKzM4
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RS
VUNUSUJMRShQcm94eU9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eU9iamVjdDo6c19p
bmZvID0geyAiUHJveHlPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5
T2JqZWN0OjpzX2luZm8gPSB7ICJQcm94eU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eU9iamVjdCkgfTsKIAogc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocGVyZm9ybVByb3h5Q2FsbCk7CiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwZXJmb3JtUHJveHlDb25zdHJ1Y3QpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwCmluZGV4IGY1MGNmZTY4MWFj
Yjk4NGRkODY4MGNmODA2NzlhYjI2NTFlOTc3ZjAuLjNlNjIxYWI3MzQzMjk3MjkyMTA2NDdiZjhj
MTMxNTY1ODQwYWQyNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1Byb3h5UmV2b2tlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94
eVJldm9rZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShQcm94eVJldm9rZSk7CiAKLWNvbnN0IENs
YXNzSW5mbyBQcm94eVJldm9rZTo6c19pbmZvID0geyAiUHJveHlSZXZva2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5UmV2b2tlKSB9
OworY29uc3QgQ2xhc3NJbmZvIFByb3h5UmV2b2tlOjpzX2luZm8gPSB7ICJQcm94eVJldm9rZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQ
cm94eVJldm9rZSkgfTsKIAogUHJveHlSZXZva2UqIFByb3h5UmV2b2tlOjpjcmVhdGUoVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUHJveHlPYmplY3QqIHByb3h5KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWZsZWN0T2JqZWN0LmNwcAppbmRleCAwODczN2Rh
YTc1NjIzN2Y2Y2EyZTA5ZGM4YzFhZDc1ZDFkYjhjNTE2Li4yMjdlMDEyMGVlMTk1YzNkOGE3OGFj
NGUxYmFiYTQ1MDc2NDY1ZjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWZsZWN0T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWZsZWN0T2JqZWN0LmNwcApAQCAtNTAsNyArNTAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
U1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFJlZmxlY3RPYmplY3QpOwog
Ci1jb25zdCBDbGFzc0luZm8gUmVmbGVjdE9iamVjdDo6c19pbmZvID0geyAiUmVmbGVjdCIsICZC
YXNlOjpzX2luZm8sICZyZWZsZWN0T2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUmVmbGVjdE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWZsZWN0T2JqZWN0Ojpz
X2luZm8gPSB7ICJSZWZsZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmcmVmbGVjdE9iamVjdFRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZmxlY3RPYmplY3QpIH07CiAKIC8qIFNv
dXJjZSBmb3IgUmVmbGVjdE9iamVjdC5sdXQuaAogQGJlZ2luIHJlZmxlY3RPYmplY3RUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5jcHAKaW5kZXggNDQ5MDlkMTY5NGJj
NTVjNzViMjc3Y2M1MTYwMDAwMjg0YjRhZDMyZi4uYzhlZjYzZjg5NDdhNzJhNDc3OGFlMzUzZjBi
NTk1MjBjODc0NDEyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHAuY3Bw
CkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
UmVnRXhwOjpzX2luZm8gPSB7ICJSZWdFeHAiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHA6OnNf
aW5mbyA9IHsgIlJlZ0V4cCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShSZWdFeHApIH07CiAKICNpZiBSRUdFWFBfRlVOQ19URVNUX0RBVEFfR0VOCiBj
b25zdCBjaGFyKiBjb25zdCBSZWdFeHBGdW5jdGlvbmFsVGVzdENvbGxlY3Rvcjo6c19maWxlTmFt
ZSA9ICIvdG1wL1JlZ0V4cFRlc3RzRGF0YSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBDYWNoZS5jcHAKaW5kZXggMGY1ZDUwZmVjMGI3NDI0NDRiZDY2ODUxNWQ2YWJh
MjM4MmJlNDc3Mi4uNzQ3NzAxZjhhMGQ0YWJiMzA2NDllZDZmYTJmYTUxMTdlZjRjNmYzZSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcApAQCAtNTYs
NyArNTYsNyBAQCBSZWdFeHBDYWNoZTo6UmVnRXhwQ2FjaGUoVk0qIHZtKQogCiBSZWdFeHAqIFJl
Z0V4cENhY2hlOjplbnN1cmVFbXB0eVJlZ0V4cFNsb3coVk0mIHZtKQogewotICAgIFJlZ0V4cCog
cmVnRXhwID0gUmVnRXhwOjpjcmVhdGUodm0sICIiLCB7IH0pOworICAgIFJlZ0V4cCogcmVnRXhw
ID0gUmVnRXhwOjpjcmVhdGUodm0sIGVtcHR5U3RyaW5nKCksIHsgfSk7CiAgICAgbV9lbXB0eVJl
Z0V4cC5zZXQodm0sIHJlZ0V4cCk7CiAgICAgcmV0dXJuIHJlZ0V4cDsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRleCBm
ZDRjOTJiMzQxMWM1OWRlYmFhNmZiODBiZjkwMmMxOTNmOGM4OGNhLi4xNWYyN2QwYTRiYTI3OWEx
MmY2YjkzYWVjZDI0MmQ0NGYyMzE2OTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHN0YXRp
YyBKU0NfREVDTEFSRV9DVVNUT01fU0VUVEVSKHNldFJlZ0V4cENvbnN0cnVjdG9yTXVsdGlsaW5l
KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVn
RXhwQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBD
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZyZWdFeHBDb25z
dHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cENvbnN0cnVj
dG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFJlZ0V4cENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4g
cmVnRXhwQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cE9iamVjdC5jcHAKaW5kZXggM2YzNDI2Y2UxZWZkMjQwNmU2MzU5MGUzNTljODI2OTI5
ZmRmMzcyZS4uNzhmNWM4YTg1NWNlOTQ0YmNlMTllNzg5MmJlY2QwNGY3OTQ1NTg2OSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC0yNyw3
ICsyNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoUmVnRXhwT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVj
dDo6c19pbmZvID0geyAiUmVnRXhwIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUmVn
RXhwT2JqZWN0OjpzX2luZm8gPSB7ICJSZWdFeHAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiBzdGF0aWMg
SlNDX0RFQ0xBUkVfQ1VTVE9NX1NFVFRFUihyZWdFeHBPYmplY3RTZXRMYXN0SW5kZXhTdHJpY3Qp
Owogc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9TRVRURVIocmVnRXhwT2JqZWN0U2V0TGFzdElu
ZGV4Tm9uU3RyaWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBQcm90b3R5cGUuY3BwCmluZGV4IDU4MjRhNDJjM2I2YTE1NzNmMDAxNjU1YTY5MmQ2NzlmZGZh
MDA5ZjQuLjk3NTcwMTJiNzNkOTU4ODIyMTlkMDllMjdmMzk2NmM3MjIxNTAyZTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcApAQCAt
NDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihyZWdFeHBQcm90
b0dldHRlclVuaWNvZGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhw
UHJvdG9HZXR0ZXJTb3VyY2UpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVn
RXhwUHJvdG9HZXR0ZXJGbGFncyk7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFJl
Z0V4cFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cFByb3RvdHlwZSkgfTsKIAog
UmVnRXhwUHJvdG90eXBlOjpSZWdFeHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICA6IEpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKQEAgLTEwNSw3ICsx
MDUsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9GdW5jRXhlYywgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbAogICAgIEpTVmFsdWUgdGhpc1ZhbHVlID0g
Y2FsbEZyYW1lLT50aGlzVmFsdWUoKTsKICAgICBhdXRvKiByZWdleHAgPSBqc0R5bmFtaWNDYXN0
PFJlZ0V4cE9iamVjdCo+KHZtLCB0aGlzVmFsdWUpOwogICAgIGlmIChVTkxJS0VMWSghcmVnZXhw
KSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
IkJ1aWx0aW4gUmVnRXhwIGV4ZWMgY2FuIG9ubHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVj
dCIpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiQnVpbHRpbiBSZWdFeHAgZXhlYyBjYW4gb25seSBiZSBjYWxsZWQgb24gYSBSZWdFeHAgb2Jq
ZWN0Il9zKTsKICAgICBKU1N0cmluZyogc3RyaW5nID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKS50
b1N0cmluZ09yTnVsbChnbG9iYWxPYmplY3QpOwogICAgIEVYQ0VQVElPTl9BU1NFUlQoISFzY29w
ZS5leGNlcHRpb24oKSA9PSAhc3RyaW5nKTsKICAgICBpZiAoIXN0cmluZykKQEAgLTM0Myw3ICsz
NDMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJGbGFncywg
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgYXV0byBmbGFncyA9IGZsYWdzU3Ry
aW5nKGdsb2JhbE9iamVjdCwgYXNPYmplY3QodGhpc1ZhbHVlKSk7CiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAKLSAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGpzU3RyaW5nKHZtLCBmbGFncy5kYXRhKCkpKTsKKyAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKGpzU3RyaW5nKHZtLCBTdHJpbmcgeyBmbGFncy5kYXRhKCkgfSkpOwogfQogCiBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJTb3VyY2UsIChKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRv
clByb3RvdHlwZS5jcHAKaW5kZXggMzkwMjk5MGM3YWVkOTdlNWUwYWFkYWFiNWJhYzRkZTY5MGFl
YjdmYS4uM2U2MmU0YzE1MWFkOTQwNjAyMWQwN2I3NDU0ZWQyOTc2NGVhYTQ2MiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFN0cmlu
Z0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJSZWdFeHAgU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiUmVnRXhwIFN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBTdHJpbmdJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKaW5kZXggNjA5
MTE4MTA0Mzg3MDUxZDZiNmM1Y2JhNTJiOGQ3YWE5ZWNhZTk0My4uZDMxMzFlNmI5M2YxN2M5ZmMw
ZWYyMThkZmFhMDE2MDA0Njk4ZjhhNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TY29wZWRBcmd1bWVudHMuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBK
U0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2NvcGVkQXJn
dW1lbnRzKTsKIAotY29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6c19pbmZvID0geyAi
QXJndW1lbnRzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTY29wZWRBcmd1bWVudHMpIH07Citjb25zdCBDbGFzc0luZm8gU2NvcGVkQXJndW1l
bnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NvcGVkQXJndW1lbnRzKSB9OwogCiBTY29wZWRB
cmd1bWVudHM6OlNjb3BlZEFyZ3VtZW50cyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBX
cml0ZUJhcnJpZXI8VW5rbm93bj4qIHN0b3JhZ2UsIHVuc2lnbmVkIHRvdGFsTGVuZ3RoKQogICAg
IDogR2VuZXJpY0FyZ3VtZW50cyh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCmluZGV4IDE0ZmMy
ZmI2MDRiMzRlZjg5MDUzMzlhNjUxYzRmZTVlZjA1ZjEwZDkuLmFhMmRmNGNkMTgwYjNiMjVkY2Iw
N2M4Y2JkYzhmZjdkYmMyOTAwYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHNUYWJsZTo6
c19pbmZvID0geyAiU2NvcGVkQXJndW1lbnRzVGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjb3BlZEFyZ3VtZW50c1RhYmxlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFNjb3BlZEFyZ3VtZW50c1RhYmxlOjpzX2luZm8gPSB7ICJTY29wZWRBcmd1bWVu
dHNUYWJsZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTY29wZWRBcmd1bWVudHNUYWJsZSkgfTsKIAogU2NvcGVkQXJndW1lbnRzVGFibGU6OlNjb3Bl
ZEFyZ3VtZW50c1RhYmxlKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNjb3BlZEFyZ3VtZW50
c1RhYmxlU3RydWN0dXJlLmdldCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcAppbmRleCA0MjFkNzAwZTQ2YWZiODA4ZTdkNWE1NzBk
Y2FmNWY1YzdiYTliNDFmLi5jNmE5ZWFiNjcxNGNlNDJjNDEwODdiZGIwOGZjOTIxNzRhYzhlY2Jm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRh
YmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY3JpcHRFeGVjdXRh
YmxlLmNwcApAQCAtNDQsNyArNDQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlNjcmlwdEV4ZWN1dGFibGUiLCAm
RXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTY3JpcHRFeGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNjcmlwdEV4ZWN1dGFi
bGU6OnNfaW5mbyA9IHsgIlNjcmlwdEV4ZWN1dGFibGUiX3MsICZFeGVjdXRhYmxlQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjcmlwdEV4ZWN1dGFi
bGUpIH07CiAKIFNjcmlwdEV4ZWN1dGFibGU6OlNjcmlwdEV4ZWN1dGFibGUoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFZNJiB2bSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBMZXhpY2FsU2NvcGVG
ZWF0dXJlcyBsZXhpY2FsU2NvcGVGZWF0dXJlcywgRGVyaXZlZENvbnRleHRUeXBlIGRlcml2ZWRD
b250ZXh0VHlwZSwgYm9vbCBpc0luQXJyb3dGdW5jdGlvbkNvbnRleHQsIGJvb2wgaXNJbnNpZGVP
cmRpbmFyeUZ1bmN0aW9uLCBFdmFsQ29udGV4dFR5cGUgZXZhbENvbnRleHRUeXBlLCBJbnRyaW5z
aWMgaW50cmluc2ljKQogICAgIDogRXhlY3V0YWJsZUJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcAppbmRleCBk
NTQ0MzNiZmVlNGZkZGRhNWY0NzA2NzdhZjQ1N2Y5YmY0Zjc0ZTQ1Li4zMWYzMDdlNjkwNzEyMjBh
NzYyYjU5YjIyN2JkYzQwZGViMDBiMWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTZXRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBTZXRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2V0Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgU2V0Q29uc3Ry
dWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgU2V0UHJvdG90eXBlKiBzZXRQcm90b3R5cGUs
IEdldHRlclNldHRlciogc3BlY2llc1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzZmFiNmUz
ODY1NTNmMzFkZDk5ZDQ0ZDMzMWFlZTZhYzY5NmVjMjM0Li45MDYxNzFiY2ZmNjMwNmFhYTc1YTMw
YzgxYjE0ODE1MTdhY2Q4MGQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TZXRJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0SXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlNldCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2V0SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJ
dGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBTZXRJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAKaW5kZXggYTZlZmMy
ZmJiMzE0NDZlODJhNDYzNDIxMmYyN2I2ZDBkNGQ1OTJjZS4uNTRjMjJkYzE3NjUyN2I0YmFkZmY1
NDRkMGRkNjNiZTdmY2JjMjVmOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU2V0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TZXRQcm90b3R5cGUuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gU2V0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6
c19pbmZvLCAmc2V0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNldFByb3RvdHlwZTo6c19pbmZvID0g
eyAiU2V0Il9zLCAmQmFzZTo6c19pbmZvLCAmc2V0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU2V0UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFNldEl0
ZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2V0UHJvdG90eXBlVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rv
ci5jcHAKaW5kZXggYzg4NmJhYzA2M2I0MmM2NzJmMmZlYzk1MTgxZjEwMTdiNjZhZjFhZi4uNDU2
NDg0NDc0NzkxNGQ2MGY4YzNlNTU2Nzc2Y2IzNjM2ZTZkOWJiMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Db25zdHJ1Y3Rvci5jcHAK
QEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBT
aGFkb3dSZWFsbUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hh
ZG93UmVhbG1Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbUNvbnN0
cnVjdG9yKSB9OwogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2hh
ZG93UmVhbG1Db25zdHJ1Y3Rvcik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcAppbmRleCAzMzYxNDZjNTJlNGFiODNiYTExZmEy
ZmI3ODNlMDhjOGQ5MjRmNGE0Li5lMGZkNGVmNmM5MzliNzJkM2ZmZjAwYjk1MGU4MTdlNTBlNWYy
MTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFs
bU9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVh
bG1PYmplY3QuY3BwCkBAIC0zOSw3ICszOSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShTaGFkb3dSZWFsbU9iamVjdCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1PYmplY3Q6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxt
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
aGFkb3dSZWFsbU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTaGFkb3dSZWFsbU9iamVjdDo6
c19pbmZvID0geyAiU2hhZG93UmVhbG0iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1PYmplY3QpIH07CiAKIFNoYWRvd1Jl
YWxtT2JqZWN0OjpTaGFkb3dSZWFsbU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Qcm90b3R5cGUuY3BwCmluZGV4IDhlODg2NjYzOTgz
YWYzYTU3YzYzMTFlN2EwODhmYzY1ZTdkYTNhNTIuLjc0Y2NhMDY1NzI0YmI0YTZhYjI5OWJhMTcx
NTE5M2QwMTNlZDczMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1NoYWRvd1JlYWxtUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TaGFkb3dSZWFsbVByb3RvdHlwZS5jcHAKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIiwgJkJhc2U6OnNfaW5mbywgJnNoYWRvd1JlYWxtUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Qcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlNoYWRvd1JlYWxtIl9zLCAmQmFzZTo6c19pbmZvLCAmc2hhZG93UmVhbG1Qcm90b3R5cGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTaGFkb3dSZWFsbVByb3RvdHlwZSkg
fTsKIAogU2hhZG93UmVhbG1Qcm90b3R5cGU6OlNoYWRvd1JlYWxtUHJvdG90eXBlKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJh
eVZhbHVlTWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5
VmFsdWVNYXAuY3BwCmluZGV4IDE2MTU3Y2YwN2UwZWE2YWMwZjUwODlhNzM1YWFlMzNiZmI2ZDEw
ZTUuLjhkZDZiZDMzMmZiZDIzMGQ5MGVhMDU0OTc0NzA3MDliY2ExODRkMmEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
CkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
U3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAiU3BhcnNlQXJyYXlWYWx1ZU1hcCIsIG51
bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJyYXlW
YWx1ZU1hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2luZm8g
PSB7ICJTcGFyc2VBcnJheVZhbHVlTWFwIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFNwYXJzZUFycmF5VmFsdWVNYXApIH07CiAKIFNwYXJzZUFycmF5
VmFsdWVNYXA6OlNwYXJzZUFycmF5VmFsdWVNYXAoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0u
c3BhcnNlQXJyYXlWYWx1ZU1hcFN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcAppbmRleCA0NGVk
ZDE1NmFmMDczYTIyMjVjY2U2NTBkZTU5ZmJmZjYxYjRjZTdkLi5lZWUzMzU3MDJiMjE1ZjFhMzZh
ZDQ4ZTEyOTk4MGRkNGZjYTMyYmQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
U3RyaWN0RXZhbEFjdGl2YXRpb24pOwogCi1jb25zdCBDbGFzc0luZm8gU3RyaWN0RXZhbEFjdGl2
YXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaWN0RXZhbEFjdGl2YXRpb24pIH07Citjb25zdCBD
bGFzc0luZm8gU3RyaWN0RXZhbEFjdGl2YXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RF
dmFsQWN0aXZhdGlvbikgfTsKIAogU3RyaWN0RXZhbEFjdGl2YXRpb246OlN0cmljdEV2YWxBY3Rp
dmF0aW9uKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29w
ZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSwgY3VycmVudFNjb3BlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IDky
ZGM5NDY5ZDJhODRjNTQ5MjIwZTIxZjVmMTZmNzdhMDA1NWZkODUuLjkyZmUzOTJkNjhjNGYyYTI4
MGNmNDkyYTJjYTZjODYyODZkOGVjYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oc3RyaW5nRnJvbUNvZGVQb2ludCk7CiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmc3RyaW5nQ29uc3RydWN0b3JUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdDb25zdHJ1Y3RvcikgfTsKIAog
LyogU291cmNlIGZvciBTdHJpbmdDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN0cmluZ0NvbnN0
cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCA2MTQ0YjMxNGRlMGI0MjZhNWMzNmNi
YjRlNTYzZDRkM2I4YTNhM2UxLi5hNmY3MzFmZjZiMTE3MjMwMzVkZTc1NDRkZjQzZDNlOTQxOTMy
YWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVy
YXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3Ry
aW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlN0cmluZyBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTdHJpbmdJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBTdHJpbmdJdGVyYXRvclByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2Jq
ZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAK
aW5kZXggNjFiZTMxOTIxZDA4MjUzOGVlNTk3N2ZiYzY5OTY1MGYxMDRmNjg0Yi4uNjA1Y2M0ODYy
NWUwNDViNmJlYmRhYjc2ZGU2N2EwNjk3MDgyYzM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU3RyaW5n
T2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAiU3Ry
aW5nIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTdHJpbmdPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8g
PSB7ICJTdHJpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoU3RyaW5nT2JqZWN0KSB9OwogCiBTdHJpbmdPYmplY3Q6OlN0cmluZ09iamVj
dChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90
eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5j
cHAKaW5kZXggZjNiMzgzZGNiYTQyNTNhNGFjOTI1NTg0ZDE5YmM4MDc2Yjk0YTU0YS4uMjRmMWUx
NjUzOTMyOGQ4ZjlhODkyYmRkNjA5NTRmZjUxNDBmYWZjYiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCkBAIC04NSw3ICs4NSw3IEBA
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY0l0ZXJhdG9y
KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlN0cmluZyIsICZTdHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0cmluZ1Byb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBTdHJpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlN0cmluZyJf
cywgJlN0cmluZ09iamVjdDo6c19pbmZvLCAmc3RyaW5nUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IFN0cmluZ0NvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gc3RyaW5nUHJvdG90eXBlVGFibGUKQEAg
LTE2MjEsNyArMTYyMSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSB0b0xvY2FsZUNhc2UoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsCiAgICAgYXV0byBjb252
ZXJ0Q2FzZSA9IG1vZGUgPT0gQ2FzZUNvbnZlcnNpb25Nb2RlOjpMb3dlciA/IHVfc3RyVG9Mb3dl
ciA6IHVfc3RyVG9VcHBlcjsKICAgICBhdXRvIHN0YXR1cyA9IGNhbGxCdWZmZXJQcm9kdWNpbmdG
dW5jdGlvbihjb252ZXJ0Q2FzZSwgYnVmZmVyLCBTdHJpbmdWaWV3IHsgcyB9LnVwY29udmVydGVk
Q2hhcmFjdGVycygpLmdldCgpLCBzLmxlbmd0aCgpLCBsb2NhbGUudXRmOCgpLmRhdGEoKSk7CiAg
ICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCB1X2Vycm9yTmFtZShzdGF0dXMpKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgU3RyaW5nIHsgdV9lcnJv
ck5hbWUoc3RhdHVzKSB9KTsKIAogICAgIC8vIDE4LiBSZXR1cm4gTC4KICAgICBSRUxFQVNFX0FO
RF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nKGJ1ZmZl
cikpKSk7CkBAIC0xNzE4LDcgKzE3MTgsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc3Ry
aW5nUHJvdG9GdW5jU3RhcnRzV2l0aCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplYwogICAg
IGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIGEw
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuc3Rh
cnRzV2l0aCBjYW5ub3QgYmUgYSBSZWdFeHAiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUu
c3RhcnRzV2l0aCBjYW5ub3QgYmUgYSBSZWdFeHAiX3MpOwogCiAgICAgU3RyaW5nIHNlYXJjaFN0
cmluZyA9IGEwLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CkBAIC0xNzUyLDcgKzE3NTIsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jRW5kc1dpdGgsIChKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LAogICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVn
RXhwKHZtLCBnbG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50
IHRvIFN0cmluZy5wcm90b3R5cGUuZW5kc1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAg
ICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVu
dCB0byBTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRoIGNhbm5vdCBiZSBhIFJlZ0V4cCJfcyk7CiAK
ICAgICBTdHJpbmcgc2VhcmNoU3RyaW5nID0gYTAudG9XVEZTdHJpbmcoZ2xvYmFsT2JqZWN0KTsK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKQEAgLTE4
MDIsNyArMTgwMiw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihzdHJpbmdQcm90b0Z1bmNJ
bmNsdWRlcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgYm9vbCBpc1JlZ3Vs
YXJFeHByZXNzaW9uID0gaXNSZWdFeHAodm0sIGdsb2JhbE9iamVjdCwgYTApOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgIGlmIChpc1JlZ3Vs
YXJFeHByZXNzaW9uKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsIHNjb3BlLCAiQXJndW1lbnQgdG8gU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlcyBjYW5ub3Qg
YmUgYSBSZWdFeHAiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90
IGJlIGEgUmVnRXhwIl9zKTsKIAogICAgIFN0cmluZyBzZWFyY2hTdHJpbmcgPSBhMC50b1dURlN0
cmluZyhnbG9iYWxPYmplY3QpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29k
ZWRKU1ZhbHVlKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5j
cHAKaW5kZXggYjYwZTNjYjBlM2JmNTYzODczMmY4NWMwZGNiMDdjMzk2ZDNmZDY4Yi4uNzI1ODk3
Y2E0ODI4YTUwNDhiNzgwMDA1ZjEyNmM0ZmM0YzU5NzIxZSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwCkBAIC0yMzQsNyArMjM0LDcgQEAgU3RydWN0dXJl
OjpTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHByb3RvdHlwZSwgY28KICAgICB2YWxpZGF0ZUZsYWdzKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBTdHJ1Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZSIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFN0cnVjdHVyZTo6c19pbmZvID0geyAiU3RydWN0dXJlIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZSkgfTsKIAogU3RydWN0dXJlOjpT
dHJ1Y3R1cmUoVk0mIHZtLCBDcmVhdGluZ0Vhcmx5Q2VsbFRhZykKICAgICA6IEpTQ2VsbChDcmVh
dGluZ0Vhcmx5Q2VsbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cnVjdHVyZUNoYWluLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVj
dHVyZUNoYWluLmNwcAppbmRleCBjYTYwYTJmYmY5YjBlYzJmNTZkNTI5YzZlMDBmMmZlMjM0YjMy
ZGNhLi5iYmIwYjMxYTA4OTM2NTUxOGRmOGYwZjhiOThjMjExZjhmOTA0ZGJmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwCkBAIC0zMCw3
ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVj
dHVyZUNoYWluOjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVDaGFpbiIsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlQ2hhaW4pIH07Citjb25zdCBD
bGFzc0luZm8gU3RydWN0dXJlQ2hhaW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIl9zLCBu
dWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZUNo
YWluKSB9OwogCiBTdHJ1Y3R1cmVDaGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgU3RydWN0dXJlSUQqIHZlY3RvcikKICAgICA6IEJhc2Uodm0sIHN0cnVj
dHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVy
ZVJhcmVEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJh
cmVEYXRhLmNwcAppbmRleCBjMjJhYWZiODYzYmVlN2MyNTEzZWEwZWY2ZDZjYTNkZDhmZDJjM2Y0
Li43MzYzN2Q4NGNkY2Q2MjY4YTc4ZGFjM2NmMzNjMDI0MjlhMTNlZTI4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwCkBAIC0z
OSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RydWN0
dXJlUmFyZURhdGE6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZVJhcmVEYXRhIiwgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVSYXJlRGF0YSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVSYXJlRGF0YTo6c19pbmZvID0geyAiU3RydWN0dXJl
UmFyZURhdGEiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RydWN0dXJlUmFyZURhdGEpIH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3ltYm9sLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5j
cHAKaW5kZXggYzNkYjE5NmZiOTM0NmUwNmUwYzVjMWYwZmU0OWI0MWJmMGEzZjdlYi4uMDc1ODk0
MTVkOTExOGRiNjVmMjVmZGUwZjU3MmVhYTEyODZiYzk1ZCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TeW1ib2wuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sOjpzX2luZm8gPSB7ICJzeW1ib2wiLCBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbCkgfTsKK2NvbnN0
IENsYXNzSW5mbyBTeW1ib2w6OnNfaW5mbyA9IHsgInN5bWJvbCJfcywgbnVsbHB0ciwgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2wpIH07CiAKIFN5bWJvbDo6U3lt
Ym9sKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnN5bWJvbFN0cnVjdHVyZS5nZXQoKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNw
cAppbmRleCBjNWQwMWI0NDM1YmE3ZTFiMTk1NDcwMjkwOTk0YmYzODYzOTRiOWM4Li4wNmJmOWQ0
YTY1YjVlNTRhZTkzYTVhZGM2YWVlYWFjMTJhMjFkZmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoU3ltYm9sQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJnN5bWJvbENvbnN0
cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sQ29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmc3ltYm9sQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNl
IGZvciBTeW1ib2xDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN5bWJvbENvbnN0cnVjdG9yVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVj
dC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwCmlu
ZGV4IDc0NzY5OGRhMThjMTAwNzMyNzJlM2EzZjM0N2NhODk0NmI2OWEyMDUuLmM4NTdiYzQxNjcx
M2Q3ODE0NmI3OGViMTI5NmM4NGRlZjBjMmUyZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3ltYm9sT2JqZWN0LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN5bWJvbE9i
amVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJv
bCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3ltYm9sT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbE9iamVjdDo6c19pbmZvID0g
eyAiU3ltYm9sIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFN5bWJvbE9iamVjdCkgfTsKIAogU3ltYm9sT2JqZWN0OjpTeW1ib2xPYmplY3Qo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3Bw
CmluZGV4IGJjZjE2MzUxNjljMDI0NzcyNGM3MTAzOTE1NTMxYzEyMGQ4OWMzODguLjM1Y2YwMjc0
NzY3M2IxYjQwYTIwNmIwZjIzY2M3YWVmZGRmYmU1NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sUHJvdG90eXBlLmNwcApAQCAtNDMsNyArNDMsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihzeW1ib2xQcm90b0Z1bmNWYWx1ZU9mKTsK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTeW1ib2xQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlN5bWJvbCIsICZCYXNlOjpzX2luZm8sICZzeW1ib2xQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gU3ltYm9sUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTeW1ib2wiX3MsICZCYXNlOjpz
X2luZm8sICZzeW1ib2xQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTeW1ib2xQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgU3ltYm9sUHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gc3ltYm9sUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcAppbmRleCAxYzI3YWQ0OTZjY2Q3Mzc2MTBmYWEwMmEx
OTAzMDViNmQ1MTRkZjA2Li5iOGJmYzcyZjI3ODBiMDMwMjY0NDYzNGUyNTkyZDhhMjc0MjZiNDMy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCkBA
IC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3lt
Ym9sVGFibGU6OnNfaW5mbyA9IHsgIlN5bWJvbFRhYmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBTeW1ib2xUYWJsZTo6c19pbmZvID0geyAiU3ltYm9sVGFibGUiX3MsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIERFRklO
RV9BTExPQ0FUT1JfV0lUSF9IRUFQX0lERU5USUZJRVIoU3ltYm9sVGFibGVFbnRyeUZhdEVudHJ5
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxD
YWxlbmRhci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVu
ZGFyLmNwcAppbmRleCAwNmRmMjU1Yjk5ODdiZWZiM2Y0MWU1OTExNTZhYTUyYTFmY2JiZGQyLi4z
YTUwM2M4NWQ4NzQyMjkxZjQ3YmRkZGM5ZmQzYWZkMWM1YzBiZTIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyLmNwcApAQCAtMzEsNyAr
MzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2Fs
ZW5kYXI6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBUZW1wb3JhbENhbGVuZGFyOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRh
cikgfTsKIAogbmFtZXNwYWNlIFRlbXBvcmFsQ2FsZW5kYXJJbnRlcm5hbCB7CiBzdGF0aWMgY29u
c3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggZDk3OTkzMTU2NDZkODc0NzUwY2IwNGJmNWVmZDM1ODM3NzcxYWE3MS4uYmU1ZDJjOGY4NTk5
ZmQ1OWViNDBkYjFlNTNkYWQzZDI0YjVkODE2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3Bw
CkBAIC00MSw3ICs0MSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBv
cmFsQ2FsZW5kYXJDb25zdHJ1Y3RvckZ1bmNGcm9tKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJDb25z
dHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5k
YXJDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZv
LCAmdGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9y
IFRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHRlbXBvcmFsQ2FsZW5k
YXJDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUuY3BwCmluZGV4IDhmYjNhNTM0Y2Rl
NDhhMzM0M2Y4MTI5NzY0ZjUyZWJjOGM3YWI5MzUuLjMzNzA0YjBjOWY5M2I3YzMzNTQwMGMyZDZk
ODM4Njc5MzkwZGEyYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUuY3BwCkBAIC00Niw3ICs0Niw3IEBA
IHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5
cGVHZXR0ZXJJZCk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9y
YWxDYWxlbmRhclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuQ2FsZW5kYXIiLCAmQmFz
ZTo6c19pbmZvLCAmdGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuQ2Fs
ZW5kYXIiX3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gdGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb24uY3BwCmluZGV4IDc3ZDk5YWEzZDBjN2Zk
ODM5Mzk0MTY2MmQxMjVhMWJiN2JkMTlhMGMuLmQ3YmVhNDA2MGNjYzVlNzlkNjc1ODUzZjQwMTA5
MWQ4MGMxNDllZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsRHVyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsRHVyYXRpb24uY3BwCkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBz
dGF0aWMgY29uc3RleHByIGRvdWJsZSBuYW5vc2Vjb25kc1BlckRheSA9IDI0LjAgKiA2MCAqIDYw
ICogMTAwMCAqIDEwMDAgKiAxMDAwOwogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlv
bjo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsRHVyYXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uKSB9
OwogCiBUZW1wb3JhbER1cmF0aW9uKiBUZW1wb3JhbER1cmF0aW9uOjpjcmVhdGUoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSVNPODYwMTo6RHVyYXRpb24mJiBkdXJhdGlvbikKIHsKQEAg
LTUxNSw3ICs1MTUsNyBAQCBkb3VibGUgVGVtcG9yYWxEdXJhdGlvbjo6dG90YWwoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBvcHRpb25zVmFsdQogICAgIEpTT2JqZWN0KiBv
cHRpb25zID0gaW50bEdldE9wdGlvbnNPYmplY3QoZ2xvYmFsT2JqZWN0LCBvcHRpb25zVmFsdWUp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIDApOwogCi0gICAgU3RyaW5nIHVuaXRT
dHJpbmcgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+dW5pdCwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgdW5pdFN0
cmluZyA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0
eU5hbWVzLT51bml0LCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51
bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgMCk7CiAKICAgICBhdXRvIHVu
aXRUeXBlID0gdGVtcG9yYWxVbml0VHlwZSh1bml0U3RyaW5nKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0
b3IuY3BwCmluZGV4IGRkM2NlZjEwNTY2M2I3MzgzZmM5MzhhOGQ0NjhiOTc5NmE1OGM2MGMuLjYx
OWJmMjdiOGFkM2U0OWQ3YzVkNTE1ZTAxMmQwZDliYzg1OTYxMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0
cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTih0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JGdW5jQ29tcGFyZSk7CiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0aW9uQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0
aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvbkNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFs
RHVyYXRpb25Db25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRl
bXBvcmFsRHVyYXRpb25Db25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbER1
cmF0aW9uQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0
b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxEdXJhdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlLmNwcAppbmRleCAwY2I0NDJlMjkwYmY4ZmExYTJkNmRl
ODhmOTYxOWQ3NmIyYmFmM2M0Li4yODJmODhhYWQxNTgyMDY2N2RjMjY0NzkzZWQ2NDhjODVmZTcw
M2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1
cmF0aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlLmNwcApAQCAtNjIsNyArNjIsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlR2V0dGVyQmxh
bmspOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRp
b25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkR1cmF0aW9uIiwgJkJhc2U6OnNfaW5m
bywgJmR1cmF0aW9uUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
VGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1
cmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5EdXJhdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmR1cmF0aW9uUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1w
b3JhbER1cmF0aW9uUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZHVyYXRpb25Qcm90b3R5cGVUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0
YW50LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5j
cHAKaW5kZXggNmY2OGNmMGZmM2NkMmM4NTcxMzc0YWJiM2UwMmM3MTNjMjA1ZmY1MC4uNWE4NTE5
ZDNjYjdhMmE3MDg0NzNmNDc5ZTI3ZDAwYzFlMzg1ZTM3YyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnQuY3BwCkBAIC00Miw3ICs0Miw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50Ojpz
X2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1w
b3JhbEluc3RhbnQ6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnQpIH07CiAKIFN0
cnVjdHVyZSogVGVtcG9yYWxJbnN0YW50OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0
cnVjdG9yLmNwcAppbmRleCA4NjFkODBjMTg4N2UyNjUwZjBjZDc3MmE3Mzc1Zjk5Y2Q2NGFlNTNm
Li4zZDJiMTBmOTY5YWJhNDRmNjRhY2MxYzRhZWRiMTQ1OGM1MjEyZWFhIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50Q29u
c3RydWN0b3IuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKHRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRDb25z
dHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFu
dENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudENvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsSW5z
dGFudENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9y
YWxJbnN0YW50Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxJbnN0YW50
Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3Rh
bnRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJ
bnN0YW50UHJvdG90eXBlLmNwcAppbmRleCBhNDI2YmUwNmZmZDM5NDEwNjNjMWZmMmI1MTg3Yjk5
YzYxNTY1YzMzLi43MzAxYmYzMTQ3NTNkODEwOWMxYmI1YWVmYmI2ZWE2MDdkZWM3YmJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5z
dGFudFByb3RvdHlwZS5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NV
U1RPTV9HRVRURVIodGVtcG9yYWxJbnN0YW50UHJvdG90eXBlR2V0dGVyRXBvY2hOYW5vc2Vjb25k
cykKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkluc3RhbnQiLCAmQmFzZTo6c19pbmZvLCAm
aW5zdGFudFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsSW5zdGFudFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkluc3RhbnQiX3MsICZCYXNlOjpzX2luZm8s
ICZpbnN0YW50UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVt
cG9yYWxJbnN0YW50UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFu
dFByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGluc3RhbnRQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwCmluZGV4IDVkYWU5OGNjNjQw
ZmU5MmM2OGQyYzE1MDEwZjU3NGYyYjc2OTRjYjkuLjNlNWY1NGQ2OWRkMjA1MjY3ZDNkZGM5Zjkz
MGVmOGU1YjM1ZDJhNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsTm93LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbE5vdy5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwog
Ci1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxOb3c6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLk5vdyIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE5vd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFRlbXBvcmFsTm93KSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2lu
Zm8gPSB7ICJUZW1wb3JhbC5Ob3ciX3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE5vd1RhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9OwogCiBUZW1wb3Jh
bE5vdzo6VGVtcG9yYWxOb3coVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsT2JqZWN0LmNwcAppbmRleCAzY2QyZmEzNzMzYmE3MDBmYjZhZTcyZGIwOTkyMDRlMTkz
ODdiYTIwLi42NmI4Yjk2NWM5ZWYyOWNlMDU1ZmUzZjkxOTVmZTRjZDJhZDMwMjI0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCkBAIC0x
MTYsNyArMTE2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBAZW5kCiAqLwogCi1jb25zdCBDbGFzc0lu
Zm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlbXBvcmFsIiwgJkJhc2U6OnNfaW5mbywg
JnRlbXBvcmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9y
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxPYmplY3RUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE9iamVjdCkgfTsKIAogVGVtcG9yYWxPYmpl
Y3Q6OlRlbXBvcmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBC
YXNlKHZtLCBzdHJ1Y3R1cmUpCkBAIC0yMzAsNyArMjMwLDcgQEAgc3RkOjpvcHRpb25hbDxUZW1w
b3JhbFVuaXQ+IHRlbXBvcmFsTGFyZ2VzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlMKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgU3RyaW5nIGxhcmdlc3RVbml0ID0gaW50
bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxh
cmdlc3RVbml0LCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBsYXJnZXN0VW5p
dCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5sYXJnZXN0VW5pdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFs
OjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVsbG9wdCk7
CiAKICAgICBpZiAoIWxhcmdlc3RVbml0KQpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0ZDo6b3B0aW9u
YWw8VGVtcG9yYWxVbml0PiB0ZW1wb3JhbFNtYWxsZXN0VW5pdChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKCiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8g
c2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cmluZyBzbWFsbGVzdFVu
aXQgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlO
YW1lcy0+c21hbGxlc3RVbml0LCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBz
bWFsbGVzdFVuaXQgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+c21hbGxlc3RVbml0LCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBB
U0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgc3Rk
OjpudWxsb3B0KTsKIAogICAgIGlmICghc21hbGxlc3RVbml0KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwCmluZGV4IGRhMmJiNzQ4
MDcwN2VhNDU4OTdkZmJkN2I3ZWEyNjE4ODZjNzdmMGYuLmJhMmNkYjgyOGM0NGU4NTE1OTZhZTM0
NDkzZjYzN2I4ZDMwZmZjMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRl
bXBvcmFsUGxhaW5EYXRlSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2Ug
PSBmYWxzZTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlOjpzX2luZm8g
PSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFs
UGxhaW5EYXRlOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGUpIH07CiAKIFRl
bXBvcmFsUGxhaW5EYXRlKiBUZW1wb3JhbFBsYWluRGF0ZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIElTTzg2MDE6OlBsYWluRGF0ZSYmIHBsYWluRGF0ZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFp
bkRhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzllNjBmMTU3MWNhMTk2YTlmNzA5ZmE3NmYwZmFl
OTNiNGJmMGQzZS4uNTRjNWM5NmZhNWI2OWIyYjgwOTdlZjFjMjkyYWI4MWRlMjk2NGJlMiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxQbGFpbkRhdGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04odGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvckZ1bmNDb21w
YXJlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWlu
RGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBU
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIFRlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0
ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcApp
bmRleCBjZDg4MzBiYmEyOTRlZTczZWQ4ODM0YjZlYjliODY0N2I2OTNhMDI4Li5iZmVhOTA3NDlm
ZmY4ZmFjN2MxZWU5MDM3NjZjMzgxNzY0NzNmMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUuY3Bw
CkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBv
cmFsUGxhaW5EYXRlUHJvdG90eXBlR2V0dGVyRGF5KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVt
cG9yYWwuUGxhaW5EYXRlIiwgJkJhc2U6OnNfaW5mbywgJnBsYWluRGF0ZVByb3RvdHlwZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZW1wb3JhbC5QbGFpbkRhdGUiX3MsICZCYXNlOjpzX2luZm8sICZwbGFpbkRhdGVQcm90
b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0
ZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlw
ZS5sdXQuaAogQGJlZ2luIHBsYWluRGF0ZVByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKaW5kZXggZjMzZjZh
ZmZiOTA4MGY2MDA4OGRjMTA0YTk0NTRmMjIzYmViOTZlNS4uYWE1YTU4YzA2NzZmNDAxNDEwMTZm
NDJmNTQ5NDg4YzcyMzEzOTVmZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxQbGFpblRpbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcApAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3BhY2Ug
VGVtcG9yYWxQbGFpblRpbWVJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9z
ZSA9IGZhbHNlOwogfQogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWU6OnNfaW5m
byA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9y
YWxQbGFpblRpbWU6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZSkgfTsKIAog
VGVtcG9yYWxQbGFpblRpbWUqIFRlbXBvcmFsUGxhaW5UaW1lOjpjcmVhdGUoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSVNPODYwMTo6UGxhaW5UaW1lJiYgcGxhaW5UaW1lKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVD
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBs
YWluVGltZUNvbnN0cnVjdG9yLmNwcAppbmRleCBkNjdjZmM5YTUwYTZmYmZmOTgyZjI4MDY2Y2Vh
NzcyYTE4YzEzMWE4Li43ZjI4YTgxMWY5MDI4NDkwNDdlYzk5M2MwNTI0OGZjZjU2NjAyYWQwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGlt
ZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbFBsYWluVGltZUNvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yRnVuY0Nv
bXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxh
aW5UaW1lQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
JnRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCAmdGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IpIH07CiAK
IC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2lu
IHRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3Bw
CmluZGV4IGU0OTY3ZDRmOTQ5NThkM2NjM2EyYjc1N2M3MDNjMWI4NDg0ZGQ1NDguLmZjODhmNzI4
NDFhNmVlOTk5MTQ4NjE0NWNlYzVkYzI4NDUyODA5YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZS5j
cHAKQEAgLTU5LDcgKzU5LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVt
cG9yYWxQbGFpblRpbWVQcm90b3R5cGVHZXR0ZXJDYWxlbmRhcik7CiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlbXBvcmFsLlBsYWluVGltZSIsICZCYXNlOjpzX2luZm8sICZwbGFpblRpbWVQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVtcG9yYWwuUGxhaW5UaW1lIl9zLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5U
aW1lUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQ
bGFpblRpbWVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpblRpbWVQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBwbGFpblRpbWVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcAppbmRleCAx
MDFhZDc2ZTc2NjY0MDc2Njk1OTA2NWFhNWM3NGRlNjk2YWM4MWU0Li4wYzY1YzM4YjE5NGVkNjhi
ODk1ZjBhNTFjNDczZmMxYTBmZjZiM2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmU6OnNfaW5mbyA9
IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxUaW1lWm9uZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRp
bWVab25lOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1lWm9uZSkgfTsKIAogVGVtcG9y
YWxUaW1lWm9uZSogVGVtcG9yYWxUaW1lWm9uZTo6Y3JlYXRlRnJvbUlEKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIFRpbWVab25lSUQgaWRlbnRpZmllcikKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3Ry
dWN0b3IuY3BwCmluZGV4IGRkNzUzYzAzMWUxY2RiN2RhMjAzMmNlODgwODBhMzM5ZWM0YjQwYWYu
LjQzYzdhMDYzZGQyZTM5MTE4Zjg2ZjI0YWVlYTk5MzEyMGRkZWUyZDAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNv
bnN0cnVjdG9yLmNwcApAQCAtNDIsNyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTih0ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JGdW5jRnJvbSk7CiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3Jh
bFRpbWVab25lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShU
ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxU
aW1lWm9uZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVu
Y3Rpb246OnNfaW5mbywgJnRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3RvcikgfTsKIAog
LyogU291cmNlIGZvciBUZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0
ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcAppbmRl
eCA2ZjU3NTU3OWUzZWFmYjYxMzkzZjE1MWM2YmZiYjRhM2NhY2Y3YTgxLi5iM2I0MzkzN2NiZTdj
NmQzYzU0OWE1YTYzMTk5MDllYjAwMDhhMGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lUHJvdG90eXBlLmNwcApAQCAt
NDMsNyArNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFRp
bWVab25lUHJvdG90eXBlR2V0dGVySWQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlRp
bWVab25lIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlKSB9
OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlbXBvcmFsLlRpbWVab25lIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxUaW1lWm9uZVBy
b3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpv
bmVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlw
ZS5sdXQuaAogQGJlZ2luIHRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVQcm9maWxlci5jcHAKaW5kZXggN2UxYmNlMjli
YWZlZmZiY2E2NGZjNTQ1ZWE0YWI4OGM4ZWUxZmQ2Mi4uNWZhYjFiODMwNTNjMzgyZWJhMDgyYTk0
YWQ4ZTYzZDY5ZjU3NDU5NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVHlwZVByb2ZpbGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
eXBlUHJvZmlsZXIuY3BwCkBAIC01Myw5ICs1Myw5IEBAIHZvaWQgVHlwZVByb2ZpbGVyOjpsb2dU
eXBlc0ZvclR5cGVMb2NhdGlvbihUeXBlTG9jYXRpb24qIGxvY2F0aW9uLCBWTSYgdm0pCiAKICAg
ICBkYXRhTG9nKCJcdFx0IiwgbG9jYXRpb24tPm1fZ2xvYmFsVmFyaWFibGVJRCA9PSBUeXBlUHJv
ZmlsZXJSZXR1cm5TdGF0ZW1lbnQgPyAiW1JldHVybiBTdGF0ZW1lbnRdIiA6ICJbTm9ybWFsIFN0
YXRlbWVudF0iLCAiXG4iKTsKIAotICAgIGRhdGFMb2coIlx0XHQjTG9jYWwjXG5cdFx0IiwgbG9j
YXRpb24tPm1faW5zdHJ1Y3Rpb25UeXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIsICJc
blx0XHQiKSwgIlxuIik7CisgICAgZGF0YUxvZygiXHRcdCNMb2NhbCNcblx0XHQiLCBsb2NhdGlv
bi0+bV9pbnN0cnVjdGlvblR5cGVTZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIl9zLCAiXG5c
dFx0Il9zKSwgIlxuIik7CiAgICAgaWYgKGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQpCi0gICAg
ICAgIGRhdGFMb2coIlx0XHQjR2xvYmFsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVT
ZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIiwgIlxuXHRcdCIpLCAiXG4iKTsKKyAgICAgICAg
ZGF0YUxvZygiXHRcdCNHbG9iYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1fZ2xvYmFsVHlwZVNldC0+
ZHVtcFR5cGVzKCkucmVwbGFjZSgiXG4iX3MsICJcblx0XHQiX3MpLCAiXG4iKTsKIH0KIAogdm9p
ZCBUeXBlUHJvZmlsZXI6Omluc2VydE5ld0xvY2F0aW9uKFR5cGVMb2NhdGlvbiogbG9jYXRpb24p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVTZXQuY3BwCmluZGV4IGQ4OGJhMjhj
M2YzMDkyNzJlM2RhMmVjNDI2YjkzOWVkMWU5OTUxY2YuLjczM2Y5ODEyZjE4ZThmNjE4ZTRlYTkw
N2Y5MWNiMjUzZjdjMDhlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1R5cGVTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVT
ZXQuY3BwCkBAIC0zNDgsNyArMzQ4LDcgQEAgU3RyaW5nIFN0cnVjdHVyZVNoYXBlOjpwcm9wZXJ0
eUhhc2goKQogICAgIGJ1aWxkZXIuYXBwZW5kKCc6Jyk7CiAgICAgZm9yIChhdXRvJiBrZXkgOiBt
X2ZpZWxkcykgewogICAgICAgICBTdHJpbmcgcHJvcGVydHkgPSBrZXkuZ2V0KCk7Ci0gICAgICAg
IHByb3BlcnR5LnJlcGxhY2UoIjoiLCAiXFw6Iik7IC8vIEVuc3VyZSB0aGF0IGhhc2goeyJmb286
IiwgImJhciJ9KSAhPSBoYXNoKHsiZm9vIiwgIjpiYXIifSkgYmVjYXVzZSB3ZSdyZSB1c2luZyBj
b2xvbnMgYXMgYSBzZXBhcmF0b3IgYW5kIGNvbG9ucyBhcmUgbGVnYWwgY2hhcmFjdGVycyBpbiBm
aWVsZCBuYW1lcyBpbiBKUy4KKyAgICAgICAgcHJvcGVydHkucmVwbGFjZSgiOiJfcywgIlxcOiJf
cyk7IC8vIEVuc3VyZSB0aGF0IGhhc2goeyJmb286IiwgImJhciJ9KSAhPSBoYXNoKHsiZm9vIiwg
IjpiYXIifSkgYmVjYXVzZSB3ZSdyZSB1c2luZyBjb2xvbnMgYXMgYSBzZXBhcmF0b3IgYW5kIGNv
bG9ucyBhcmUgbGVnYWwgY2hhcmFjdGVycyBpbiBmaWVsZCBuYW1lcyBpbiBKUy4KICAgICAgICAg
YnVpbGRlci5hcHBlbmQocHJvcGVydHkpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggN2ViMGZlNDU1
NDE3OWE1MTRiMzMyOGYzZDJkNzYyNDRkYmE0ZWU0Zi4uMTc3ZDFlODE3Mzc4YTFjMTgyNjI1Yjkw
YTljODA0NzM4ZDhmMzNmNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2Vha01hcENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcENvbnN0cnVjdG9yKSB9Owog
CiB2b2lkIFdlYWtNYXBDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBXZWFrTWFw
UHJvdG90eXBlKiBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCmluZGV4IGI4NTZkNzYxMzViZjYxYmZhM2QzODM0
YjZjZTA1M2Q3YmM0ZjZmODMuLjE0NDRjZjZjODI1NzgyNzg3ZDliMjBlZGNlZjM2NmI1NWFiNTgy
ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90
b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBBU0NJ
SUxpdGVyYWwgV2Vha01hcE5vbk9iamVjdEtleUVycm9yIHsgIkF0dGVtcHRlZCB0byBzZXQgYSBu
b24tb2JqZWN0IGtleSBpbiBhIFdlYWtNYXAiX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtN
YXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYWtNYXAiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gV2Vha01hcFByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFw
UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1
bmNXZWFrTWFwRGVsZXRlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3Rv
RnVuY1dlYWtNYXBHZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmJmYWYzNWM3OGJmNmU5
Njg3MWNjMGQ3NDEwMWZjZmJiMDdkZTk4Ni4uZjU0ZGEyNTU5YzdkZWJhYjYzMGIwYmYwMmM5NDA2
NzcyMjkzYTZhYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vh
a09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha09iamVjdFJlZkNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2Vha09iamVjdFJlZkNvbnN0cnVjdG9yKSB9OwogCiB2b2lkIFdlYWtPYmplY3RSZWZDb25zdHJ1
Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBXZWFrT2JqZWN0UmVmUHJvdG90eXBlKiBwcm90
b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFr
T2JqZWN0UmVmUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtPYmplY3RSZWZQcm90b3R5cGUuY3BwCmluZGV4IDgzYTIwNDYwOWQ5YWQ3YmFlOGFhODhiMTIy
OGMxY2I3NjQ5ZWY4MDguLjgyOTRhYTUyMWQyYWM2YThhMTRhYmI1NmU1NjI3NTgxNmM2MTYwMzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmpl
Y3RSZWZQcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gV2Vha09iamVjdFJlZlByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vh
a1JlZiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2Vha09iamVjdFJlZlByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrT2JqZWN0
UmVmUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWFrUmVmIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZQcm90b3R5cGUp
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtSZWZE
ZXJlZik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtT
ZXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0
Q29uc3RydWN0b3IuY3BwCmluZGV4IGM4ZGFhYjQ2YjAzZGIwM2UwZTdhYWFmNzEwZjkxMzQ4NDE1
ZjZhYjAuLjg3NGNhOTZiN2E5ZGQxZGU3ZjMzZjc1NDYwNDg1Y2VmNDQ1YzQwOGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNw
cApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFdlYWtTZXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRDb25zdHJ1Y3Rv
cikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYWtTZXRDb25zdHJ1Y3RvcikgfTsKIAogdm9pZCBXZWFrU2V0Q29uc3RydWN0b3I6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgV2Vha1NldFByb3RvdHlwZSogcHJvdG90eXBlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNw
cAppbmRleCBjMTdmZmNmMDdiNjgxZWM4YWFkZmM4YTE5ZmYzNzUwMDAwOGNlMGQ3Li40MmEyMmFm
ODAyNjg1YjI1ZjY2YmE0MDk0OWQyMTIzOGI1ZTE5YzJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0UHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQVNDSUlMaXRlcmFsIFdlYWtTZXROb25PYmplY3RW
YWx1ZUVycm9yIHsgIkF0dGVtcHRlZCB0byBhZGQgYSBub24tb2JqZWN0IHZhbHVlIHRvIGEgV2Vh
a1NldCJfcyB9OwogCi1jb25zdCBDbGFzc0luZm8gV2Vha1NldFByb3RvdHlwZTo6c19pbmZvID0g
eyAiV2Vha1NldCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2Vha1NldFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrU2V0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJXZWFrU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRQcm90b3R5cGUpIH07CiAKIHN0YXRp
YyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtTZXREZWxldGUpOwogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jV2Vha1NldEhhcyk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAKaW5kZXggODRiYzdjZjJkYmE2ZTYxZjM0ZmFlNWM0
ZWRlMzNjNzczNTA0YWQxMi4uN2QyNmIxNmJmOWYzZmNiZDMwYWVlZmQwNmNmZGQ5OTk4NWMwMTA1
NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0UmVnRXhwLmNwcApAQCAtMTIyLDcgKzEyMiw3IEBA
IHByaXZhdGU6CiB9OwogU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoR2xvYmFs
T2JqZWN0LCBKU0dsb2JhbE9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBHbG9iYWxPYmplY3Q6
OnNfaW5mbyA9IHsgImdsb2JhbCIsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgImdsb2JhbCJfcywgJkpTR2xvYmFsT2JqZWN0
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xvYmFsT2Jq
ZWN0KSB9OwogCiBHbG9iYWxPYmplY3Q6Okdsb2JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYXJndW1lbnRzKQogICAgIDogSlNHbG9i
YWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9v
bHMvRnVuY3Rpb25BbGxvd2xpc3QuY3BwCmluZGV4IGFhY2Q3NWRhODdhYjkzYzJkNDBiZjdiZWM1
OTE2ZDdjNjcwNjk1NzkuLjI0MmYxMDc3ODQ0ZDQ3NjFkNDA4ODhkZWFiNGJiMWRhNzgyMTE1NmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlz
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uQWxsb3dsaXN0
LmNwcApAQCAtNDQsNyArNDQsNyBAQCBGdW5jdGlvbkFsbG93bGlzdDo6RnVuY3Rpb25BbGxvd2xp
c3QoY29uc3QgY2hhciogZmlsZW5hbWUpCiAgICAgaWYgKCFmKSB7CiAgICAgICAgIGlmIChlcnJu
byA9PSBFTk9FTlQpIHsKICAgICAgICAgICAgIG1faGFzQWN0aXZlQWxsb3dsaXN0ID0gdHJ1ZTsK
LSAgICAgICAgICAgIG1fZW50cmllcy5hZGQoZmlsZW5hbWUpOworICAgICAgICAgICAgbV9lbnRy
aWVzLmFkZChTdHJpbmcgeyBmaWxlbmFtZSB9KTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAg
ICBkYXRhTG9nRigiRmFpbGVkIHRvIG9wZW4gZmlsZSAlcy4gRGlkIHlvdSBhZGQgdGhlIGZpbGUt
cmVhZC1kYXRhIGVudGl0bGVtZW50IHRvIFdlYlByb2Nlc3Muc2I/IEVycm9yIGNvZGU6ICVzXG4i
LCBmaWxlbmFtZSwgc2FmZVN0cmVycm9yKGVycm5vKS5kYXRhKCkpOwogICAgICAgICByZXR1cm47
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlk
ZXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cAppbmRleCA3YTNiMzc5MjRiZTU2MDU0N2ZjMmRmZmUzMzJkM2U2NmJmOGE5NWY2Li45NTY4NmJh
MTkyMGJiMGViMTI3NDA0ZjEzOTFiYjAyZjViYjE2MDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlkZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90b29scy9GdW5jdGlvbk92ZXJyaWRlcy5jcHAKQEAgLTEzMCw4ICsxMzAsOCBA
QCBzdGF0aWMgdm9pZCBpbml0aWFsaXplT3ZlcnJpZGVJbmZvKGNvbnN0IFNvdXJjZUNvZGUmIG9y
aWdDb2RlLCBjb25zdCBTdHJpbmcmIG5ldwogICAgIEZ1bmN0aW9uT3ZlcnJpZGVzQXNzZXJ0U2Nv
cGUgYXNzZXJ0U2NvcGU7CiAgICAgU3RyaW5nIG9yaWdQcm92aWRlclN0ciA9IG9yaWdDb2RlLnBy
b3ZpZGVyKCktPnNvdXJjZSgpLnRvU3RyaW5nKCk7CiAgICAgdW5zaWduZWQgb3JpZ1N0YXJ0ID0g
b3JpZ0NvZGUuc3RhcnRPZmZzZXQoKTsKLSAgICB1bnNpZ25lZCBvcmlnRnVuY3Rpb25TdGFydCA9
IG9yaWdQcm92aWRlclN0ci5yZXZlcnNlRmluZCgiZnVuY3Rpb24iLCBvcmlnU3RhcnQpOwotICAg
IHVuc2lnbmVkIG9yaWdCcmFjZVN0YXJ0ID0gb3JpZ1Byb3ZpZGVyU3RyLmZpbmQoInsiLCBvcmln
U3RhcnQpOworICAgIHVuc2lnbmVkIG9yaWdGdW5jdGlvblN0YXJ0ID0gb3JpZ1Byb3ZpZGVyU3Ry
LnJldmVyc2VGaW5kKCJmdW5jdGlvbiJfcywgb3JpZ1N0YXJ0KTsKKyAgICB1bnNpZ25lZCBvcmln
QnJhY2VTdGFydCA9IG9yaWdQcm92aWRlclN0ci5maW5kKCd7Jywgb3JpZ1N0YXJ0KTsKICAgICB1
bnNpZ25lZCBoZWFkZXJMZW5ndGggPSBvcmlnQnJhY2VTdGFydCAtIG9yaWdGdW5jdGlvblN0YXJ0
OwogICAgIFN0cmluZyBvcmlnSGVhZGVyID0gb3JpZ1Byb3ZpZGVyU3RyLnN1YnN0cmluZyhvcmln
RnVuY3Rpb25TdGFydCwgaGVhZGVyTGVuZ3RoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rvb2xzL0pTRG9sbGFyVk0uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rv
b2xzL0pTRG9sbGFyVk0uY3BwCmluZGV4IDNmYzcxMTg2YmUyM2M0Nzg2MTlmMzc4NTA2ZGU0MTJi
YmQ1N2FjNjYuLmQxOWIwMTc3OWU4MGMwYjhlMjlhMTQzNTEyZjJhYTc0NjY5ZGZlOGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvSlNEb2xsYXJWTS5jcHAKQEAgLTIwMyw3ICsyMDMs
NyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNQ2Fs
bEZyYW1lOjpzX2luZm8gPSB7ICJDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRG9sbGFyVk1DYWxsRnJhbWUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNEb2xsYXJWTUNhbGxGcmFtZTo6c19pbmZvID0geyAiQ2FsbEZyYW1lIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RG9sbGFyVk1DYWxsRnJhbWUpIH07CiAKIGNsYXNzIEVsZW1lbnRIYW5kbGVPd25lcjsKIGNsYXNz
IFJvb3Q7CkBAIC0xNzgwLDMyICsxNzgwLDMyIEBAIHZvaWQgSlNUZXN0Q3VzdG9tR2V0dGVyU2V0
dGVyOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEVsZW1l
bnQ6OnNfaW5mbyA9IHsgIkVsZW1lbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVsZW1lbnQpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6
c19pbmZvID0geyAiUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoUm9vdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBTaW1wbGVPYmplY3Q6OnNf
aW5mbyA9IHsgIlNpbXBsZU9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU2ltcGxlT2JqZWN0KSB9OwotY29uc3QgQ2xhc3NJbmZvIElt
cHVyZUdldHRlcjo6c19pbmZvID0geyAiSW1wdXJlR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbXB1cmVHZXR0ZXIpIH07Ci1jb25z
dCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyOjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1c3RvbUdl
dHRlcikgfTsKLWNvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRp
bWVBcnJheSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUnVudGltZUFycmF5KSB9OworY29uc3QgQ2xhc3NJbmZvIEVsZW1lbnQ6OnNfaW5mbyA9
IHsgIkVsZW1lbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoRWxlbWVudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBSb290OjpzX2luZm8gPSB7
ICJSb290Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFJvb3QpIH07Citjb25zdCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8gPSB7
ICJTaW1wbGVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoU2ltcGxlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEltcHVyZUdl
dHRlcjo6c19pbmZvID0geyAiSW1wdXJlR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEltcHVyZUdldHRlcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBDdXN0b21HZXR0ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0
ZXIpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1l
QXJyYXkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUnVudGltZUFycmF5KSB9OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBDbGFzc0luZm8g
RE9NSklUTm9kZTo6c19pbmZvID0geyAiRE9NSklUTm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsICZET01KSVROb2RlOjpjaGVja1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShET01KSVROb2RlKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsg
IkRPTUpJVE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVROb2RlOjpjaGVj
a1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVROb2RlKSB9OwogI2Vs
c2UKLWNvbnN0IENsYXNzSW5mbyBET01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01K
SVROb2RlKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJ
VE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRE9NSklUTm9kZSkgfTsKICNlbmRpZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRl
cjo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0lu
Zm8gRE9NSklUR2V0dGVyTm9FZmZlY3RzOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJOb0VmZmVj
dHMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERPTUpJVEdldHRlck5vRWZmZWN0cykgfTsKLWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJD
b21wbGV4OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJDb21wbGV4IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJDb21wbGV4
KSB9OwotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlckJhc2VKU09iamVjdDo6c19pbmZvID0g
eyAiRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJCYXNlSlNPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyOjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9N
SklUR2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlck5vRWZmZWN0czo6c19p
bmZvID0geyAiRE9NSklUR2V0dGVyTm9FZmZlY3RzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlck5vRWZmZWN0cykgfTsK
K2NvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJDb21wbGV4OjpzX2luZm8gPSB7ICJET01KSVRH
ZXR0ZXJDb21wbGV4Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKERPTUpJVEdldHRlckNvbXBsZXgpIH07Citjb25zdCBDbGFzc0luZm8gRE9N
SklUR2V0dGVyQmFzZUpTT2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRHZXR0ZXJCYXNlSlNPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0KSB9OwogI2lmIEVOQUJMRShKSVQpCi1jb25zdCBD
bGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9u
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgJkRPTUpJVEZ1bmN0aW9uT2JqZWN0Ojpj
aGVja1N1YkNsYXNzU25pcHBldCwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRGdW5jdGlvbk9i
amVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBET01KSVRGdW5jdGlvbk9iamVjdDo6c19pbmZvID0g
eyAiRE9NSklURnVuY3Rpb25PYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01K
SVRGdW5jdGlvbk9iamVjdDo6Y2hlY2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFC
TEUoRE9NSklURnVuY3Rpb25PYmplY3QpIH07CiAjZWxzZQotY29uc3QgQ2xhc3NJbmZvIERPTUpJ
VEZ1bmN0aW9uT2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVu
Y3Rpb25PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNf
aW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9uT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9Owog
I2VuZGlmCi1jb25zdCBDbGFzc0luZm8gRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3Q6OnNfaW5mbyA9
IHsgIkRPTUpJVENoZWNrSlNDYXN0T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRDaGVja0pTQ2FzdE9iamVjdCkgfTsKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkpTVGVz
dEN1c3RvbUdldHRlclNldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xh
c3NJbmZvIERPTUpJVENoZWNrSlNDYXN0T2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRDaGVja0pT
Q2FzdE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShET01KSVRDaGVja0pTQ2FzdE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkpTVGVzdEN1c3RvbUdldHRlclNl
dHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXIpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBTdGF0
aWNDdXN0b21BY2Nlc3Nvcjo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tQWNjZXNzb3IiLCAmQmFz
ZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTdGF0aWNDdXN0b21BY2Nlc3NvcikgfTsKLWNvbnN0IENsYXNzSW5mbyBTdGF0
aWNDdXN0b21WYWx1ZTo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tVmFsdWUiLCAmQmFzZTo6c19p
bmZvLCAmc3RhdGljQ3VzdG9tVmFsdWVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShTdGF0aWNDdXN0b21WYWx1ZSkgfTsKLWNvbnN0IENsYXNzSW5mbyBPYmplY3REb2luZ1NpZGVF
ZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXM6OnNfaW5mbyA9IHsgIk9iamVjdERvaW5n
U2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cyIsICZCYXNlOjpzX2luZm8sICZz
dGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1cykgfTsKK2NvbnN0
IENsYXNzSW5mbyBTdGF0aWNDdXN0b21BY2Nlc3Nvcjo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9t
QWNjZXNzb3IiX3MsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0YXRpY0N1c3RvbUFjY2Vzc29yKSB9OworY29u
c3QgQ2xhc3NJbmZvIFN0YXRpY0N1c3RvbVZhbHVlOjpzX2luZm8gPSB7ICJTdGF0aWNDdXN0b21W
YWx1ZSJfcywgJkJhc2U6OnNfaW5mbywgJnN0YXRpY0N1c3RvbVZhbHVlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RhdGljQ3VzdG9tVmFsdWUpIH07Citjb25zdCBDbGFzc0lu
Zm8gT2JqZWN0RG9pbmdTaWRlRWZmZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzOjpzX2lu
Zm8gPSB7ICJPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMi
X3MsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21BY2Nlc3NvclRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0
U2xvdFN0YXR1cykgfTsKIAogRWxlbWVudEhhbmRsZU93bmVyKiBFbGVtZW50OjpoYW5kbGVPd25l
cigpCiB7CkBAIC0xODk1LDcgKzE4OTUsNyBAQCBwdWJsaWM6CiAgICAgV2FzbTo6U3RyZWFtaW5n
UGFyc2VyIG1fc3RyZWFtaW5nUGFyc2VyOwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJl
YW1pbmdQYXJzZXI6OnNfaW5mbyA9IHsgIldhc21TdHJlYW1pbmdQYXJzZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdhc21TdHJlYW1pbmdQ
YXJzZXIpIH07Citjb25zdCBDbGFzc0luZm8gV2FzbVN0cmVhbWluZ1BhcnNlcjo6c19pbmZvID0g
eyAiV2FzbVN0cmVhbWluZ1BhcnNlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nUGFyc2VyKSB9OwogCiBKU0NfREVG
SU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25XYXNtU3RyZWFtaW5nUGFyc2VyQWRkQnl0ZXMsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCiB7CkBA
IC0xOTk2LDcgKzE5OTYsNyBAQCB2b2lkIFdhc21TdHJlYW1pbmdDb21waWxlcjo6dmlzaXRDaGls
ZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQogCiBERUZJTkVfVklTSVRf
Q0hJTERSRU4oV2FzbVN0cmVhbWluZ0NvbXBpbGVyKTsKIAotY29uc3QgQ2xhc3NJbmZvIFdhc21T
dHJlYW1pbmdDb21waWxlcjo6c19pbmZvID0geyAiV2FzbVN0cmVhbWluZ0NvbXBpbGVyIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3Ry
ZWFtaW5nQ29tcGlsZXIpIH07Citjb25zdCBDbGFzc0luZm8gV2FzbVN0cmVhbWluZ0NvbXBpbGVy
OjpzX2luZm8gPSB7ICJXYXNtU3RyZWFtaW5nQ29tcGlsZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ0NvbXBpbGVy
KSB9OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25XYXNtU3RyZWFtaW5nQ29t
cGlsZXJBZGRCeXRlcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSog
Y2FsbEZyYW1lKSkKIHsKQEAgLTIxNDMsNyArMjE0Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUmVzZXRKSVRTaXplU3RhdGlzdGljcyk7CiAKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uRW5zdXJlQXJyYXlTdG9yYWdlKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTRG9sbGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZN
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRG9sbGFyVk06OnNfaW5mbyA9IHsgIkRvbGxhclZNIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RG9sbGFyVk0pIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBkb1ByaW50KEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lLCBib29sIGFkZExpbmVGZWVk
KQogewpAQCAtMjczMCw3ICsyNzMwLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0
aW9uSGF2ZUFCYWRUaW1lLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2EKICAgICBp
ZiAoIWNhbGxGcmFtZS0+YXJndW1lbnQoMCkuaXNVbmRlZmluZWQoKSkgewogICAgICAgICBKU09i
amVjdCogb2JqID0gY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5nZXRPYmplY3QoKTsKICAgICAgICAg
aWYgKCFvYmopCi0gICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsIHNjb3BlLCAiaGF2ZUFCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4g
b2JqZWN0IGlmIHByb3ZpZGVkIik7CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiaGF2ZUFCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1l
bnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIl9zKTsKICAgICAgICAgdGFyZ2V0ID0gb2Jq
LT5nbG9iYWxPYmplY3QoKTsKICAgICB9CiAKQEAgLTI3NDksNyArMjc0OSw3IEBAIEpTQ19ERUZJ
TkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbklzSGF2aW5nQUJhZFRpbWUsIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0CiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzVW5kZWZp
bmVkKCkpIHsKICAgICAgICAgSlNPYmplY3QqIG9iaiA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCku
Z2V0T2JqZWN0KCk7CiAgICAgICAgIGlmICghb2JqKQotICAgICAgICAgICAgcmV0dXJuIHRocm93
Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImlzSGF2aW5nQUJhZFRpbWUgZXhwZWN0
cyBmaXJzdCBhcmd1bWVudCB0byBiZSBhbiBvYmplY3QgaWYgcHJvdmlkZWQiKTsKKyAgICAgICAg
ICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJpc0hhdmlu
Z0FCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3Zp
ZGVkIl9zKTsKICAgICAgICAgdGFyZ2V0ID0gb2JqLT5nbG9iYWxPYmplY3QoKTsKICAgICB9CiAK
QEAgLTI3OTgsMjAgKzI3OTgsMjAgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRU
UklCVVRFUyhmdW5jdGlvbkNhbGxXaXRoU3RhY2tTaXplLCBTVVBQUkVTU19BU0EKICNlbmRpZgog
CiAgICAgaWYgKCFpc1N1cHBvcnRlZEJ5UGxhdGZvcm0pCi0gICAgICAgIHJldHVybiB0aHJvd1ZN
RXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiTm90IHN1cHBvcnRlZCBmb3IgdGhpcyBw
bGF0Zm9ybSIpOworICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhy
b3dTY29wZSwgIk5vdCBzdXBwb3J0ZWQgZm9yIHRoaXMgcGxhdGZvcm0iX3MpOwogCiAjaWYgRU5B
QkxFKEFTU0VNQkxFUikKICAgICBpZiAoZ19qc2NDb25maWcuaXNQZXJtYW5lbnRseUZyb3plbigp
IHx8ICFnX2pzY0NvbmZpZy5kaXNhYmxlZEZyZWV6aW5nRm9yVGVzdGluZykKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJPcHRpb25zIGFyZSBm
cm96ZW4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93
U2NvcGUsICJPcHRpb25zIGFyZSBmcm96ZW4iX3MpOwogCiAgICAgaWYgKGNhbGxGcmFtZS0+YXJn
dW1lbnRDb3VudCgpIDwgMikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmpl
Y3QsIHRocm93U2NvcGUsICJJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMiKTsKKyAgICAgICAg
cmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJJbnZhbGlkIG51
bWJlciBvZiBhcmd1bWVudHMiX3MpOwogICAgIEpTVmFsdWUgYXJnMCA9IGNhbGxGcmFtZS0+YXJn
dW1lbnQoMCk7CiAgICAgSlNWYWx1ZSBhcmcxID0gY2FsbEZyYW1lLT5hcmd1bWVudCgxKTsKICAg
ICBpZiAoIWFyZzAuaXNDYWxsYWJsZSh2bSkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3Io
Z2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiYXJnMCBzaG91bGQgYmUgYSBmdW5jdGlvbiIpOwor
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFy
ZzAgc2hvdWxkIGJlIGEgZnVuY3Rpb24iX3MpOwogICAgIGlmICghYXJnMS5pc051bWJlcigpKQot
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFy
ZzEgc2hvdWxkIGJlIGEgbnVtYmVyIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xv
YmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiYXJnMSBzaG91bGQgYmUgYSBudW1iZXIiX3MpOwogCiAg
ICAgSlNGdW5jdGlvbiogZnVuY3Rpb24gPSBqc0Nhc3Q8SlNGdW5jdGlvbio+KGFyZzApOwogICAg
IHNpemVfdCBkZXNpcmVkU3RhY2tTaXplID0gYXJnMS5hc051bWJlcigpOwpAQCAtMjgyMSw3ICsy
ODIxLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OX1dJVEhfQVRUUklCVVRFUyhmdW5jdGlv
bkNhbGxXaXRoU3RhY2tTaXplLCBTVVBQUkVTU19BU0EKICAgICB1aW50OF90KiBlbmQgPSBiaXR3
aXNlX2Nhc3Q8dWludDhfdCo+KGJvdW5kcy5lbmQoKSk7CiAgICAgdWludDhfdCogZGVzaXJlZFN0
YXJ0ID0gZW5kICsgZGVzaXJlZFN0YWNrU2l6ZTsKICAgICBpZiAoZGVzaXJlZFN0YXJ0ID49IGN1
cnJlbnRTdGFja1Bvc2l0aW9uKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9i
amVjdCwgdGhyb3dTY29wZSwgIlVuYWJsZSB0byBzZXR1cCBkZXNpcmVkIHN0YWNrIHNpemUiKTsK
KyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJV
bmFibGUgdG8gc2V0dXAgZGVzaXJlZCBzdGFjayBzaXplIl9zKTsKIAogICAgIEpTRG9sbGFyVk1I
ZWxwZXIgaGVscGVyKHZtKTsKIApAQCAtMzAzNSw3ICszMDM1LDcgQEAgSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKGZ1bmN0aW9uQ3JlYXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9yQ29tcGlsZSwg
KEpTR2xvYmEKICAgICBhdXRvIGNvbXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVyOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgV2FzbTo6Q29tcGlsZXJNb2RlOjpWYWxpZGF0aW9uLCBudWxs
cHRyKTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFyZ3MuYXBwZW5kKGNv
bXBpbGVyKTsKLSAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCks
IGFyZ3MsICJZb3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgY2FsbChnbG9iYWxPYmpl
Y3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhp
cy4uLiJfcyk7CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkKICAgICAgICAg
c2NvcGUuY2xlYXJFeGNlcHRpb24oKTsKICAgICBjb21waWxlci0+c3RyZWFtaW5nQ29tcGlsZXIo
KS5maW5hbGl6ZShnbG9iYWxPYmplY3QpOwpAQCAtMzA2Miw3ICszMDYyLDcgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uQ3JlYXRlV2FzbVN0cmVhbWluZ0NvbXBpbGVyRm9ySW5z
dGFudGlhdGUsIChKU0cKICAgICBhdXRvIGNvbXBpbGVyID0gV2FzbVN0cmVhbWluZ0NvbXBpbGVy
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgV2FzbTo6Q29tcGlsZXJNb2RlOjpGdWxsQ29tcGls
ZSwgaW1wb3J0T2JqZWN0KTsKICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgIGFy
Z3MuYXBwZW5kKGNvbXBpbGVyKTsKLSAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpz
VW5kZWZpbmVkKCksIGFyZ3MsICJZb3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgY2Fs
bChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3Vs
ZG4ndCBzZWUgdGhpcy4uLiJfcyk7CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigp
KSkKICAgICAgICAgc2NvcGUuY2xlYXJFeGNlcHRpb24oKTsKICAgICBjb21waWxlci0+c3RyZWFt
aW5nQ29tcGlsZXIoKS5maW5hbGl6ZShnbG9iYWxPYmplY3QpOwpAQCAtMzE3MCw3ICszMTcwLDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uR2V0UHJpdmF0ZVByb3BlcnR5LCAo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamUKIAogICAgIFN5bWJvbEltcGwqIHN5bWJvbCA9IHZt
LnByb3BlcnR5TmFtZXMtPmJ1aWx0aW5OYW1lcygpLmxvb2tVcFByaXZhdGVOYW1lKHN0cik7CiAg
ICAgaWYgKCFzeW1ib2wpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIlVua25vd24gcHJpdmF0ZSBuYW1lLiIpOworICAgICAgICByZXR1cm4gdGhyb3dW
TUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJVbmtub3duIHByaXZhdGUgbmFtZS4iX3MpOwog
CiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoY2FsbEZyYW1l
LT5hcmd1bWVudCgwKS5nZXQoZ2xvYmFsT2JqZWN0LCBzeW1ib2wpKSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAKaW5kZXgg
ZjZhNTliMGI3YWMyMjQxNGZjNjc2NjRkMTdmZTY3NjAzNmIxNjliYy4uNmQ2OWE0ZGYyZTIzNzEz
MDA0ZTUzMDcwMDVjZmQ4MjBlMGQyMTIyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90b29scy9TaWdpbGxDcmFzaEFuYWx5emVyLmNwcApAQCAtMjc3LDcgKzI3Nyw3IEBAIGF1
dG8gU2lnaWxsQ3Jhc2hBbmFseXplcjo6YW5hbHl6ZShTaWduYWxDb250ZXh0JiBjb250ZXh0KSAt
PiBDcmFzaFNvdXJjZQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAotICAgICAgICBs
b2coInBjICVwIGJlbG9uZ3MgdG8gQ29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJs
b2NrLCBKSVRDb2RlOjp0eXBlTmFtZShjb2RlQmxvY2stPmppdFR5cGUoKSkpOworICAgICAgICBs
b2coInBjICVwIGJlbG9uZ3MgdG8gQ29kZUJsb2NrICVwIG9mIHR5cGUgJXMiLCBwYywgY29kZUJs
b2NrLCBKSVRDb2RlOjp0eXBlTmFtZShjb2RlQmxvY2stPmppdFR5cGUoKSkuY2hhcmFjdGVycygp
KTsKIAogICAgICAgICBkdW1wQ29kZUJsb2NrKGNvZGVCbG9jaywgcGMpOwogICAgIH0gd2hpbGUg
KGZhbHNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3Bl
Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwCmlu
ZGV4IDdlM2FlN2Q4OTU4MmYyMWVlMmQ2NzA0Y2ViN2IwZTRkZmFmZmFiYzMuLmI1NmQ3ZjRhMjEz
MzQ5NjRlMmRkY2U3Nzk4ZGU0NWE1OTM5ZDI4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rvb2xzL1ZNSW5zcGVjdG9yLmNwcApAQCAtNDExLDcgKzQxMSw3IEBAIHZvaWQgVk1JbnNwZWN0
b3I6OmR1bXBSZWdpc3RlcnMoQ2FsbEZyYW1lKiBjYWxsRnJhbWUpCiAgICAgICAgICAgICBKU1Zh
bHVlIHYgPSBpdC0+anNWYWx1ZSgpOwogICAgICAgICAgICAgaW50IHJlZ2lzdGVyTnVtYmVyID0g
aXQgLSBjYWxsRnJhbWUtPnJlZ2lzdGVycygpOwogICAgICAgICAgICAgU3RyaW5nIG5hbWUgPSAo
aXQgPiBlbmRPZkNhbGxlZVNhdmVzKQotICAgICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWci
CisgICAgICAgICAgICAgICAgPyAiQ2FsbGVlU2F2ZVJlZyJfcwogICAgICAgICAgICAgICAgIDog
Y29kZUJsb2NrLT5uYW1lRm9yUmVnaXN0ZXIoVmlydHVhbFJlZ2lzdGVyKHJlZ2lzdGVyTnVtYmVy
KSk7CiAgICAgICAgICAgICBkYXRhTG9nRigiW3IlIDNkICUxNHNdICAgICAgfCAlMTBwIHwgMHgl
LTE2bGx4ICVzXG4iLCByZWdpc3Rlck51bWJlciwgbmFtZS5hc2NpaSgpLmRhdGEoKSwgaXQsIChs
b25nIGxvbmcpSlNWYWx1ZTo6ZW5jb2RlKHYpLCB2YWx1ZUFzU3RyaW5nKHYpLmRhdGEoKSk7CiAg
ICAgICAgICAgICAtLWl0OwpAQCAtNTE5LDcgKzUxOSw3IEBAIHZvaWQgVk1JbnNwZWN0b3I6OmR1
bXBDZWxsTWVtb3J5VG9TdHJlYW0oSlNDZWxsKiBjZWxsLCBQcmludFN0cmVhbSYgb3V0KQogICAg
ICAgICBvdXQucHJpbnQoIlxuIik7CiAgICAgfTsKIAotICAgIG91dC5wcmludGYoIjwlcCwgJXM+
XG4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUodm0pKTsKKyAgICBvdXQucHJpbnRmKCI8JXAsICVz
PlxuIiwgY2VsbCwgY2VsbC0+Y2xhc3NOYW1lKHZtKS5jaGFyYWN0ZXJzKCkpOwogICAgIEluZGVu
dGF0aW9uU2NvcGUgc2NvcGUoaW5kZW50YXRpb24pOwogCiAgICAgSU5ERU5UIGR1bXBTbG90KHNs
b3RzLCAwLCAiaGVhZGVyIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtRXhjZXB0aW9uVHlwZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4
Y2VwdGlvblR5cGUuaAppbmRleCAyODVkMzUyNGJlZTJiNWQxOWYxMmI1NTM0ZWJlMzY3NTg1YjRk
ZTc0Li4zYWYwOGE2MWU0YTI3ODhmYjdiODc0ZDEwMDFjYTQ5YzMxMWIzNGY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21FeGNlcHRpb25UeXBlLmgKQEAgLTMyLDE4ICsz
MiwxOCBAQCBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFjZSBXYXNtIHsKIAogI2RlZmluZSBGT1Jf
RUFDSF9FWENFUFRJT04obWFjcm8pIFwKLSAgICBtYWNybyhPdXRPZkJvdW5kc01lbW9yeUFjY2Vz
cywgICJPdXQgb2YgYm91bmRzIG1lbW9yeSBhY2Nlc3MiKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3Vu
ZHNUYWJsZUFjY2VzcywgIk91dCBvZiBib3VuZHMgdGFibGUgYWNjZXNzIikgXAotICAgIG1hY3Jv
KE91dE9mQm91bmRzQ2FsbEluZGlyZWN0LCAiT3V0IG9mIGJvdW5kcyBjYWxsX2luZGlyZWN0Iikg
XAotICAgIG1hY3JvKE51bGxUYWJsZUVudHJ5LCAgImNhbGxfaW5kaXJlY3QgdG8gYSBudWxsIHRh
YmxlIGVudHJ5IikgXAotICAgIG1hY3JvKE51bGxSZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8gYSBu
dWxsIHJlZmVyZW5jZSIpIFwKLSAgICBtYWNybyhCYWRTaWduYXR1cmUsICJjYWxsX2luZGlyZWN0
IHRvIGEgc2lnbmF0dXJlIHRoYXQgZG9lcyBub3QgbWF0Y2giKSBcCi0gICAgbWFjcm8oT3V0T2ZC
b3VuZHNUcnVuYywgIk91dCBvZiBib3VuZHMgVHJ1bmMgb3BlcmF0aW9uIikgXAotICAgIG1hY3Jv
KFVucmVhY2hhYmxlLCAiVW5yZWFjaGFibGUgY29kZSBzaG91bGQgbm90IGJlIGV4ZWN1dGVkIikg
XAotICAgIG1hY3JvKERpdmlzaW9uQnlaZXJvLCAiRGl2aXNpb24gYnkgemVybyIpIFwKLSAgICBt
YWNybyhJbnRlZ2VyT3ZlcmZsb3csICJJbnRlZ2VyIG92ZXJmbG93IikgXAotICAgIG1hY3JvKFN0
YWNrT3ZlcmZsb3csICJTdGFjayBvdmVyZmxvdyIpIFwKLSAgICBtYWNybyhGdW5jcmVmTm90V2Fz
bSwgIkZ1bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIikKKyAgICBtYWNy
byhPdXRPZkJvdW5kc01lbW9yeUFjY2VzcywgICJPdXQgb2YgYm91bmRzIG1lbW9yeSBhY2Nlc3Mi
X3MpIFwKKyAgICBtYWNybyhPdXRPZkJvdW5kc1RhYmxlQWNjZXNzLCAiT3V0IG9mIGJvdW5kcyB0
YWJsZSBhY2Nlc3MiX3MpIFwKKyAgICBtYWNybyhPdXRPZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91
dCBvZiBib3VuZHMgY2FsbF9pbmRpcmVjdCJfcykgXAorICAgIG1hY3JvKE51bGxUYWJsZUVudHJ5
LCAgImNhbGxfaW5kaXJlY3QgdG8gYSBudWxsIHRhYmxlIGVudHJ5Il9zKSBcCisgICAgbWFjcm8o
TnVsbFJlZmVyZW5jZSwgICJjYWxsX3JlZiB0byBhIG51bGwgcmVmZXJlbmNlIl9zKSBcCisgICAg
bWFjcm8oQmFkU2lnbmF0dXJlLCAiY2FsbF9pbmRpcmVjdCB0byBhIHNpZ25hdHVyZSB0aGF0IGRv
ZXMgbm90IG1hdGNoIl9zKSBcCisgICAgbWFjcm8oT3V0T2ZCb3VuZHNUcnVuYywgIk91dCBvZiBi
b3VuZHMgVHJ1bmMgb3BlcmF0aW9uIl9zKSBcCisgICAgbWFjcm8oVW5yZWFjaGFibGUsICJVbnJl
YWNoYWJsZSBjb2RlIHNob3VsZCBub3QgYmUgZXhlY3V0ZWQiX3MpIFwKKyAgICBtYWNybyhEaXZp
c2lvbkJ5WmVybywgIkRpdmlzaW9uIGJ5IHplcm8iX3MpIFwKKyAgICBtYWNybyhJbnRlZ2VyT3Zl
cmZsb3csICJJbnRlZ2VyIG92ZXJmbG93Il9zKSBcCisgICAgbWFjcm8oU3RhY2tPdmVyZmxvdywg
IlN0YWNrIG92ZXJmbG93Il9zKSBcCisgICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJGdW5jcmVm
IG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJfcykKIAogZW51bSBjbGFzcyBFeGNl
cHRpb25UeXBlIDogdWludDMyX3QgewogI2RlZmluZSBNQUtFX0VOVU0oZW51bU5hbWUsIGVycm9y
KSBlbnVtTmFtZSwKQEAgLTUxLDcgKzUxLDcgQEAgZW51bSBjbGFzcyBFeGNlcHRpb25UeXBlIDog
dWludDMyX3QgewogI3VuZGVmIE1BS0VfRU5VTQogfTsKIAotQUxXQVlTX0lOTElORSBjb25zdCBj
aGFyKiBlcnJvck1lc3NhZ2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKK0FM
V0FZU19JTkxJTkUgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZUZvckV4Y2VwdGlvblR5cGUoRXhj
ZXB0aW9uVHlwZSB0eXBlKQogewogICAgIHN3aXRjaCAodHlwZSkgewogI2RlZmluZSBTV0lUQ0hf
Q0FTRShlbnVtTmFtZSwgZXJyb3IpIFwKQEAgLTYxLDcgKzYxLDcgQEAgQUxXQVlTX0lOTElORSBj
b25zdCBjaGFyKiBlcnJvck1lc3NhZ2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlw
ZSkKICN1bmRlZiBTV0lUQ0hfQ0FTRQogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
LSAgICByZXR1cm4gIiI7CisgICAgcmV0dXJuICIiX3M7CiB9CiAKIH0gfSAvLyBuYW1lc3BhY2Ug
SlNDOjpXYXNtCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9y
bWF0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKaW5kZXggYzc5
ZTMzN2M3YTdhY2QxMjgyMGMyZTY5NDAzNDRmZjRiZGQxMGE5ZS4uOTcwNjNhYWI5ZTZiN2Y1NjBm
ZTI4ZDU0MjA2MGM1MmI4ODQ2ZTVkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUZvcm1hdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21G
b3JtYXQuaApAQCAtODQsNyArODQsNyBAQCBpbmxpbmUgSlNTdHJpbmcqIHR5cGVUb1N0cmluZyhW
TSYgdm0sIFR5cGVLaW5kIHR5cGUpCiB7CiAjZGVmaW5lIFRZUEVfQ0FTRShtYWNyb05hbWUsIHZh
bHVlLCBiMywgaW5jLCB3YXNtTmFtZSkgXAogICAgIGNhc2UgVHlwZUtpbmQ6Om1hY3JvTmFtZTog
XAotICAgICAgICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCAjd2FzbU5hbWUpOyBcCisg
ICAgICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcodm0sICN3YXNtTmFtZSIiX3MpOyBcCiAK
ICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgRk9SX0VBQ0hfV0FTTV9UWVBFKFRZUEVfQ0FT
RSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUdsb2JhbC5jcHAKaW5kZXggY2IzZDE2
M2JiZTA4YjZhNTc1OGNkOWRjMjhkZTA2OGExZGU1NmYxNy4uZWQxYjBmN2QxNjkyMmU2MmE2ZTc3
NmYxOGVhMGE5NWI0M2UzYTQzZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vV2FzbUdsb2JhbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUds
b2JhbC5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGFyZ3VtZW50KQogICAgICAgICBpZiAoaXNFeHRlcm5y
ZWYobV90eXBlKSkgewogICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQobV9vd25lcik7CiAgICAg
ICAgICAgICBpZiAoIW1fdHlwZS5pc051bGxhYmxlKCkgJiYgYXJndW1lbnQuaXNOdWxsKCkpIHsK
LSAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUs
IGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1u
dWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCIpKTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4
Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50
aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUg
bnVsbCJfcykpOwogICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIG1fdmFsdWUubV9leHRlcm5yZWYuc2V0KG1fb3duZXItPnZtKCksIG1fb3duZXIsIGFy
Z3VtZW50KTsKQEAgLTk5LDcgKzk5LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGFyZ3VtZW50KQogICAgICAgICAgICAgV2ViQXNzZW1i
bHlGdW5jdGlvbiogd2FzbUZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAgICAgICAgIFdlYkFzc2Vt
Ymx5V3JhcHBlckZ1bmN0aW9uKiB3YXNtV3JhcHBlckZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAg
ICAgICAgIGlmICghaXNXZWJBc3NlbWJseUhvc3RGdW5jdGlvbih2bSwgYXJndW1lbnQsIHdhc21G
dW5jdGlvbiwgd2FzbVdyYXBwZXJGdW5jdGlvbikgJiYgKCFtX3R5cGUuaXNOdWxsYWJsZSgpIHx8
ICFhcmd1bWVudC5pc051bGwoKSkpIHsKLSAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3Io
Z2xvYmFsT2JqZWN0LCB2bSwgIkZ1bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0
aW9uIikpOworICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhy
b3dTY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZt
LCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpKTsKICAgICAg
ICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAKQEAgLTEwNyw3ICsxMDcsNyBAQCB2
b2lkIEdsb2JhbDo6c2V0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgYXJn
dW1lbnQpCiAgICAgICAgICAgICAgICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggcGFyYW1JbmRleCA9
IG1fdHlwZS5pbmRleDsKICAgICAgICAgICAgICAgICBXYXNtOjpTaWduYXR1cmVJbmRleCBhcmdJ
bmRleCA9IHdhc21GdW5jdGlvbiA/IHdhc21GdW5jdGlvbi0+c2lnbmF0dXJlSW5kZXgoKSA6IHdh
c21XcmFwcGVyRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCk7CiAgICAgICAgICAgICAgICAgaWYg
KHBhcmFtSW5kZXggIT0gYXJnSW5kZXgpIHsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNl
cHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNo
IHRoZSByZWZlcmVuY2UgdHlwZSIpKTsKKyAgICAgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVy
cm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRo
ZSByZWZlcmVuY2UgdHlwZSJfcykpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vV2FzbUxMSW50UGxhbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9XYXNtTExJbnRQbGFuLmNwcAppbmRleCBhZTE1ZjhkZWRmYmUwMTk5MDE3OWNlZDNjMWQyZjA3
NDBkYmM4ZDY2Li5jMjQ5ZjkyY2YwNWJiMGM4YzM0NGVhNWFiNzFiMzk2ZjFhZGI5NGMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtTExJbnRQbGFuLmNwcApAQCAtMTMwLDcg
KzEzMCw3IEBAIHZvaWQgTExJbnRQbGFuOjpkaWRDb21wbGV0ZUNvbXBpbGF0aW9uKCkKIAogICAg
ICAgICBMaW5rQnVmZmVyIGxpbmtCdWZmZXIoaml0LCBHTE9CQUxfVEhVTktfSUQsIExpbmtCdWZm
ZXI6OlByb2ZpbGU6Oldhc20sIEpJVENvbXBpbGF0aW9uQ2FuRmFpbCk7CiAgICAgICAgIGlmIChV
TkxJS0VMWShsaW5rQnVmZmVyLmRpZEZhaWxUb0FsbG9jYXRlKCkpKSB7Ci0gICAgICAgICAgICBC
YXNlOjpmYWlsKCJPdXQgb2YgZXhlY3V0YWJsZSBtZW1vcnkgaW4gV2FzbSBMTEludCBlbnRyeSB0
aHVua3MiKTsKKyAgICAgICAgICAgIEJhc2U6OmZhaWwoIk91dCBvZiBleGVjdXRhYmxlIG1lbW9y
eSBpbiBXYXNtIExMSW50IGVudHJ5IHRodW5rcyJfcyk7CiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9w
ZXJhdGlvbnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMu
Y3BwCmluZGV4IDEwODA0NDlkYTYzOGY2NzZlMDdlY2EwZjU4MmUzYjlmYzdiNWU2OTEuLmJiNDZm
OGE4MTMyZDFlZDU1ZTFjMzRhZjZhMDBmMGQyNDlmZjBmYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL1dhc21PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtT3BlcmF0aW9ucy5jcHAKQEAgLTUzNywxMiArNTM3LDEyIEBAIEpT
Q19ERUZJTkVfSklUX09QRVJBVElPTihvcGVyYXRpb25JdGVyYXRlUmVzdWx0cywgdm9pZCwgKENh
bGxGcmFtZSogY2FsbEZyYW1lLCBJCiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9p
ZCgpKTsKIAogICAgIGlmIChidWZmZXIuaGFzT3ZlcmZsb3dlZCgpKSB7Ci0gICAgICAgIHRocm93
T3V0T2ZNZW1vcnlFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSlMgcmVzdWx0cyB0byBXYXNt
IGFyZSB0b28gbGFyZ2UiKTsKKyAgICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJKUyByZXN1bHRzIHRvIFdhc20gYXJlIHRvbyBsYXJnZSJfcyk7CiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKICAgICBpZiAoaXRlcmF0aW9uQ291bnQgIT0gc2lnbmF0dXJl
LT5yZXR1cm5Db3VudCgpKSB7Ci0gICAgICAgIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkluY29ycmVjdCBudW1iZXIgb2YgdmFsdWVzIHJldHVybmVkIHRvIFdhc20gZnJv
bSBKUyIpOworICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJ
bmNvcnJlY3QgbnVtYmVyIG9mIHZhbHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMiX3MpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCmluZGV4IGI1MDVkZjA1YmM2NmRkZDhiM2RmYWY3
ZjFlNzZjN2RlNzQ3ZmUzYjMuLmM5ODNlYjY0OTdiYjUwZTk4MDBiOTU0NGE3NjUwOWU4NGNhNTYz
ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUND
YWxsZWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTVG9XYXNtSUND
YWxsZWUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNUb1dhc21JQ0NhbGxlZTo6c19pbmZvID0geyAiSlNUb1dhc21JQ0NhbGxlZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
b1dhc21JQ0NhbGxlZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1RvV2FzbUlDQ2FsbGVlOjpzX2lu
Zm8gPSB7ICJKU1RvV2FzbUlDQ2FsbGVlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVG9XYXNtSUNDYWxsZWUpIH07CiAKIEpTVG9XYXNt
SUNDYWxsZWUqIEpTVG9XYXNtSUNDYWxsZWU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIFdlYkFzc2VtYmx5RnVuY3Rpb24qIGZ1bmN0aW9uKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNwcAppbmRleCA4MmQ2
MzE5YzYxNjM1YjU3ZjY0NDgzODk0OTI2MDQ3Y2IzODMzZmM4Li5jNTQxYjU5NDY2NjhlZGQwOGFh
YjhkMzVmYzM4ODViNDVmYzVmZjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9KU1dlYkFzc2VtYmx5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9KU1dlYkFzc2VtYmx5LmNwcApAQCAtNzMsNyArNzMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseVZhbGlkYXRlRnVuYyk7CiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseTo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHkiLCAmQmFzZTo6c19pbmZvLCAmd2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNz
ZW1ibHk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Il9zLCAmQmFzZTo6c19pbmZvLCAmd2ViQXNz
ZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5KSB9
OwogCiAvKiBTb3VyY2UgZm9yIEpTV2ViQXNzZW1ibHkubHV0LmgKIEBiZWdpbiB3ZWJBc3NlbWJs
eVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFz
c2VtYmx5RXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlFeGNlcHRpb24uY3BwCmluZGV4IGRlNDE0MTkwNzM5ZDBjODI4ZmUwYjY3N2IxOTc1
MWM2ZDg3NmYzMjEuLjAyZjhiYjBkOGNjNWQ4NDZhYWFlMGQxOTFiM2EzNTAxNDI4NWNlYmQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlFeGNl
cHRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1i
bHlFeGNlcHRpb24uY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUV4Y2VwdGlvbjo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHkuRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5RXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTV2ViQXNzZW1ibHlFeGNlcHRpb246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dlYkFzc2VtYmx5RXhjZXB0aW9uKSB9OwogCiBKU1dlYkFzc2VtYmx5RXhjZXB0aW9uOjpK
U1dlYkFzc2VtYmx5RXhjZXB0aW9uKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0
IFdhc206OlRhZyYgdGFnLCBGaXhlZFZlY3Rvcjx1aW50NjRfdD4mJiBwYXlsb2FkKQogICAgIDog
QmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvSlNXZWJBc3NlbWJseUdsb2JhbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcAppbmRleCA5NzkwODkxMzM4YjQ0OTBjMmE0MDQx
N2U2YzFmOWI1ZGY5Nzc5M2NlLi5iMzNkODg1MTFlM2IxYjA4ZTIyODMxYTRmMDAyMmI3YTE1M2Jl
Mjk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2Vt
Ymx5R2xvYmFsLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFz
c2VtYmx5R2xvYmFsLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlHbG9iYWw6OnNfaW5mbyA9IHsgIldlYkFzc2Vt
Ymx5Lkdsb2JhbCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXZWJBc3NlbWJseUdsb2JhbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFz
c2VtYmx5R2xvYmFsOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJs
eUdsb2JhbCkgfTsKIAogSlNXZWJBc3NlbWJseUdsb2JhbCogSlNXZWJBc3NlbWJseUdsb2JhbDo6
dHJ5Q3JlYXRlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIFJlZjxXYXNtOjpHbG9iYWw+JiYgZ2xvYmFsKQogewpAQCAtOTQsMjIgKzk0
LDIyIEBAIEpTT2JqZWN0KiBKU1dlYkFzc2VtYmx5R2xvYmFsOjp0eXBlKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QpCiAgICAgSlNTdHJpbmcqIHZhbHVlU3RyaW5nID0gbnVsbHB0cjsKICAg
ICBzd2l0Y2ggKHZhbHVlVHlwZS5raW5kKSB7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6STMy
OgotICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiIpOwor
ICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImkzMiJfcyk7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgV2FzbTo6VHlwZUtpbmQ6Okk2NDoKLSAgICAgICAgdmFs
dWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJpNjQiKTsKKyAgICAgICAgdmFsdWVT
dHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJpNjQiX3MpOwogICAgICAgICBicmVhazsK
ICAgICBjYXNlIFdhc206OlR5cGVLaW5kOjpGMzI6Ci0gICAgICAgIHZhbHVlU3RyaW5nID0ganNO
b250cml2aWFsU3RyaW5nKHZtLCAiZjMyIik7CisgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250
cml2aWFsU3RyaW5nKHZtLCAiZjMyIl9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXYXNt
OjpUeXBlS2luZDo6RjY0OgotICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmlu
Zyh2bSwgImY2NCIpOworICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2
bSwgImY2NCJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6IHsKICAgICAgICAgaWYg
KFdhc206OmlzRnVuY3JlZih2YWx1ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBq
c05vbnRyaXZpYWxTdHJpbmcodm0sICJhbnlmdW5jIik7CisgICAgICAgICAgICB2YWx1ZVN0cmlu
ZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBlbHNlIGlm
IChXYXNtOjppc0V4dGVybnJlZih2YWx1ZVR5cGUpKQotICAgICAgICAgICAgdmFsdWVTdHJpbmcg
PSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJleHRlcm5yZWYiKTsKKyAgICAgICAgICAgIHZhbHVl
U3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIl9zKTsKICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVs
cGVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBl
cnMuaAppbmRleCA3YzU0ZDM0MGUzNjdkNzQ2ZTAyMTgyMWVlMGJlMTEyMGIyNmMyYTE0Li44N2U1
MGI0NTM1ZmU0NTEzYzgyZGJhZDdmMTMzZjIwZmRlODAwMjlhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVscGVycy5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgKQEAgLTE5MSwx
NyArMTkxLDE3IEBAIEFMV0FZU19JTkxJTkUgdWludDY0X3QgZnJvbUpTVmFsdWUoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgV2FzbTo6VHlwCiAgICAgZGVmYXVsdDogewogICAg
ICAgICBpZiAoV2FzbTo6aXNFeHRlcm5yZWYodHlwZSkpIHsKICAgICAgICAgICAgIGlmICghdHlw
ZS5pc051bGxhYmxlKCkgJiYgdmFsdWUuaXNOdWxsKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJu
IHRocm93Vk1FeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJs
eVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiTm9uLW51bGwgRXh0ZXJucmVmIGNhbm5v
dCBiZSBudWxsIikpOworICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFs
T2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCJfcykpOwogICAg
ICAgICB9IGVsc2UgaWYgKFdhc206OmlzRnVuY3JlZih0eXBlKSB8fCBpc1JlZldpdGhUeXBlSW5k
ZXgodHlwZSkpIHsKICAgICAgICAgICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlv
biA9IG51bGxwdHI7CiAgICAgICAgICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2Fz
bVdyYXBwZXJGdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1i
bHlIb3N0RnVuY3Rpb24odm0sIHZhbHVlLCB3YXNtRnVuY3Rpb24sIHdhc21XcmFwcGVyRnVuY3Rp
b24pICYmICghdHlwZS5pc051bGxhYmxlKCkgfHwgIXZhbHVlLmlzTnVsbCgpKSkKLSAgICAgICAg
ICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVh
dGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11
c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhw
b3J0ZWQgd2FzbSBmdW5jdGlvbiJfcykpOwogICAgICAgICAgICAgaWYgKGlzUmVmV2l0aFR5cGVJ
bmRleCh0eXBlKSAmJiAhdmFsdWUuaXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBXYXNtOjpT
aWduYXR1cmVJbmRleCBwYXJhbUluZGV4ID0gdHlwZS5pbmRleDsKICAgICAgICAgICAgICAgICBX
YXNtOjpTaWduYXR1cmVJbmRleCBhcmdJbmRleCA9IHdhc21GdW5jdGlvbiA/IHdhc21GdW5jdGlv
bi0+c2lnbmF0dXJlSW5kZXgoKSA6IHdhc21XcmFwcGVyRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4
KCk7CiAgICAgICAgICAgICAgICAgaWYgKHBhcmFtSW5kZXggIT0gYXJnSW5kZXgpCi0gICAgICAg
ICAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUs
IGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkFyZ3Vt
ZW50IGZ1bmN0aW9uIGRpZCBub3QgbWF0Y2ggdGhlIHJlZmVyZW5jZSB0eXBlIikpOworICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3Bl
LCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1
bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSJfcykpOwogICAg
ICAgICAgICAgfQogICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05P
VF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcAppbmRleCA0OWNkMDA3ZmI3N2RjNzcyMzRlYTRjOTUz
ZTVlYzczOGMwNzM5MTk2Li45YTVjMDgzNTMzNzQ5ZjVkODVhMjg0NzVhNmFlZDZkNjYwZDFjODU0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
SW5zdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNz
ZW1ibHlJbnN0YW5jZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnNfaW5mbyA9IHsgIldlYkFz
c2VtYmx5Lkluc3RhbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5SW5zdGFuY2UpIH07Citjb25zdCBDbGFzc0luZm8g
SlNXZWJBc3NlbWJseUluc3RhbmNlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1dlYkFzc2VtYmx5SW5zdGFuY2UpIH07CiAKIFN0cnVjdHVyZSogSlNXZWJBc3NlbWJseUluc3Rh
bmNlOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKQEAgLTE1NSw3ICsxNTUsNyBAQCB2b2lkIEpTV2ViQXNz
ZW1ibHlJbnN0YW5jZTo6ZmluYWxpemVDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplYwogCiBJZGVudGlmaWVyIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlUHJp
dmF0ZU1vZHVsZUtleSgpCiB7Ci0gICAgcmV0dXJuIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0
ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0YW5jZSIpKTsK
KyAgICByZXR1cm4gSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6
RGVzY3JpcHRpb24sICJXZWJBc3NlbWJseUluc3RhbmNlIl9zKSk7CiB9CiAKIEpTV2ViQXNzZW1i
bHlJbnN0YW5jZSogSlNXZWJBc3NlbWJseUluc3RhbmNlOjp0cnlDcmVhdGUoVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBJZGVudGlmaWVyJiBtb2R1bGVLZXksIEpT
V2ViQXNzZW1ibHlNb2R1bGUqIGpzTW9kdWxlLCBKU09iamVjdCogaW1wb3J0T2JqZWN0LCBTdHJ1
Y3R1cmUqIGluc3RhbmNlU3RydWN0dXJlLCBSZWY8V2FzbTo6TW9kdWxlPiYmIG1vZHVsZSwgV2Fz
bTo6Q3JlYXRpb25Nb2RlIGNyZWF0aW9uTW9kZSkKQEAgLTIwMSw3ICsyMDEsNyBAQCBKU1dlYkFz
c2VtYmx5SW5zdGFuY2UqIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqCiAgICAgICAgICAgICBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6SW1w
b3J0RW50cnlUeXBlOjpTaW5nbGUsCiAgICAgICAgICAgICBtb2R1bGVOYW1lLAogICAgICAgICAg
ICAgZmllbGROYW1lLAotICAgICAgICAgICAgSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFt
ZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJXZWJBc3NlbWJseUltcG9ydE5hbWUiKSksCisg
ICAgICAgICAgICBJZGVudGlmaWVyOjpmcm9tVWlkKFByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpE
ZXNjcmlwdGlvbiwgIldlYkFzc2VtYmx5SW1wb3J0TmFtZSJfcykpLAogICAgICAgICB9KTsKICAg
ICB9CiAgICAgQVNTRVJUKG1vZHVsZVJlY29yZC0+aW1wb3J0RW50cmllcygpLnNpemUoKSA9PSBt
b2R1bGVJbmZvcm1hdGlvbi5pbXBvcnRzLnNpemUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNZW1vcnkuY3BwCmluZGV4IDM1ZWRlNDE0
OTI2ZDYxOTg1OWQyZTg1OGI5YzhhNGYyOTkxYWY2MjkuLmY0YTQwMjM2ODY3N2MwNzI5OGQyN2U5
NTg3NDgwNTU1OGE0ZjAzYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlNZW1vcnkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL0pTV2ViQXNzZW1ibHlNZW1vcnkuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseU1lbW9yeTo6c19pbmZv
ID0geyAiV2ViQXNzZW1ibHkuTWVtb3J5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TWVtb3J5KSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTV2ViQXNzZW1ibHlNZW1vcnk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9y
eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dlYkFzc2VtYmx5TWVtb3J5KSB9OwogCiBKU1dlYkFzc2VtYmx5TWVtb3J5KiBKU1dlYkFz
c2VtYmx5TWVtb3J5Ojp0cnlDcmVhdGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNb2R1bGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1vZHVsZS5jcHAKaW5kZXggMGYwYjljYzVhNTJm
MGVjNDhjNmY3Y2YzNTFhNzU2N2Y2YTFjNDIyZi4uYmM0NGExMmE2ZTAwMzczMzYyODcwYzMzNzg4
MWQzYTlmMmUxMGI5OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseU1vZHVsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvSlNXZWJBc3NlbWJseU1vZHVsZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5TW9kdWxlOjpzX2luZm8gPSB7
ICJXZWJBc3NlbWJseS5Nb2R1bGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlNb2R1bGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseU1vZHVsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2ViQXNzZW1ibHlNb2R1bGUpIH07CiAKIEpTV2ViQXNzZW1ibHlNb2R1bGUqIEpTV2ViQXNzZW1i
bHlNb2R1bGU6OmNyZWF0ZVN0dWIoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgV2FzbTo6TW9kdWxlOjpWYWxpZGF0aW9uUmVzdWx0JiYg
cmVzdWx0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNX
ZWJBc3NlbWJseVRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlUYWJsZS5jcHAKaW5kZXggYzAyMDZlNGQ1Y2Q5N2ExZDIxYThhMmZjZmQxZmY1NzRh
ZGIxYzMwMC4uMjJkNTIwZGEyMDUzODdmN2RkNDVhMDM0ZWNiNzI1MDMzYmY3ZTFmMSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFibGUu
Y3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseVRhYmxlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJB
c3NlbWJseVRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlUYWJsZTo6c19p
bmZvID0geyAiV2ViQXNzZW1ibHkuVGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhYmxlKSB9OwogCiBKU1dl
YkFzc2VtYmx5VGFibGUqIEpTV2ViQXNzZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxXYXNt
OjpUYWJsZT4mJiB0YWJsZSkKIHsKQEAgLTEyNywxMCArMTI3LDEwIEBAIEpTT2JqZWN0KiBKU1dl
YkFzc2VtYmx5VGFibGU6OnR5cGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBK
U1N0cmluZyogZWxlbWVudFN0cmluZyA9IG51bGxwdHI7CiAgICAgc3dpdGNoIChlbGVtZW50KSB7
CiAgICAgY2FzZSBXYXNtOjpUYWJsZUVsZW1lbnRUeXBlOjpGdW5jcmVmOgotICAgICAgICBlbGVt
ZW50U3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyIpOworICAgICAgICBl
bGVtZW50U3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyJfcyk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgV2FzbTo6VGFibGVFbGVtZW50VHlwZTo6RXh0ZXJucmVmOgot
ICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVm
Iik7CisgICAgICAgIGVsZW1lbnRTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJleHRl
cm5yZWYiX3MpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBSRUxFQVNF
X0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9KU1dlYkFzc2VtYmx5VGFnLmNwcAppbmRleCA2OTQxZmM0Y2I1M2IyMzU1Y2FjNzA1Y2Rj
NWQxZGZiNmJmMjdiNGE1Li5iZGRjMTQ5Y2YwYmY0MTVlMTk0YWQ2OTI0ZDU0YzM4N2QzOTU1ZWY1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
VGFnLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
VGFnLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTV2ViQXNzZW1ibHlUYWc6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhZyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJB
c3NlbWJseVRhZykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFnOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5UYWciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseVRhZykgfTsKIAogSlNXZWJBc3NlbWJs
eVRhZyogSlNXZWJBc3NlbWJseVRhZzo6Y3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFdhc206OlRhZyYgdGFnKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA4YmI2ZTU0YzJi
NWEwMjJjZmI4MjRmNjZhY2U1ODBhMmQyMTI4ZWJkLi45MDZkYjdkNjM4YmE5YmYzYzM2MTlhNWRk
ZTA0OTk0MWQ1MDRlOGZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yLmNw
cApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJv
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNv
bnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3Ry
dWN0b3JUYWJsZVdlYkFzc2VtYmx5Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlDb21waWxlRXJy
b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlD
b21waWxlRXJyb3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IGE1
YmUwMTcyYmFlM2IwYmM5ZmExNGM2YzcxZWI0YmZlZTMzNjZmNWIuLjkyMGI5MmI0MzJhZWIyNmQ2
OWFmMjcwNTQzYzdmNTFiOWY2NmE1ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlw
ZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNz
ZW1ibHkuQ29tcGlsZUVycm9yIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNz
ZW1ibHlDb21waWxlRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1i
bHlDb21waWxlRXJyb3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkNvbXBpbGVFcnJv
ciJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJy
b3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90
b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJv
cgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlF
eGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAzN2E2ZmEwYmQ2ZmE0NTg3
NTI0OGM4MzUwMDcxYTZlNjQyZmYzMjM5Li5mNGIxZTIzZjljYjk4YjI1MDgxYTY1MDBlMTAzMjQz
MTMyOWU0YjdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcApAQCAtMzksNyAr
MzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
RXhjZXB0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5RXhj
ZXB0aW9uLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9u
Q29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0
cnVjdEpTV2ViQXNzZW1ibHlFeGNlcHRpb24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oY2FsbEpTV2ViQXNzZW1ibHlFeGNlcHRpb24pOwpAQCAtNTgsNyArNTgsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseUV4Y2VwdGlvbiwgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgYXV0byB0YWcgPSBqc0R5bmFtaWNDYXN0PEpTV2Vi
QXNzZW1ibHlUYWcqPih2bSwgdGFnVmFsdWUpOwogICAgIGlmICghdGFnKQotICAgICAgICByZXR1
cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhj
ZXB0aW9uIGNvbnN0cnVjdG9yIGV4cGVjdHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgV2Vi
QXNzZW1ibHkuVGFnIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0cyB0
aGUgZmlyc3QgYXJndW1lbnQgdG8gYmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAgICAgTWFy
a2VkQXJndW1lbnRCdWZmZXIgdmFsdWVzOwogICAgIGZvckVhY2hJbkl0ZXJhYmxlKGdsb2JhbE9i
amVjdCwgdGFnUGFyYW1ldGVycywgWyZdIChWTSYsIEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBu
ZXh0VmFsdWUpIHsKQEAgLTY3LDcgKzY3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNv
bnN0cnVjdEpTV2ViQXNzZW1ibHlFeGNlcHRpb24sIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB7IH0pOwogCiAgICAgaWYgKHZhbHVlcy5zaXpl
KCkgIT0gdGFnLT5zaWduYXR1cmUoKS5hcmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRp
b24gY29uc3RydWN0b3IgZXhwZWN0cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2ViQXNz
ZW1ibHkuVGFnIHRvIG1hdGNoIHRoZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iKTsKKyAgICAgICAg
cmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5
LkV4Y2VwdGlvbiBjb25zdHJ1Y3RvciBleHBlY3RzIHRoZSBudW1iZXIgb2YgcGFyZW1ldGVycyBp
biBXZWJBc3NlbWJseS5UYWcgdG8gbWF0Y2ggdGhlIHRhZ3MgcGFyYW1ldGVyIGNvdW50LiJfcyk7
CiAKICAgICAvLyBBbnkgR0MnZCB2YWx1ZXMgaW4gaGVyZSB3aWxsIGJlIG1hcmtlZCBieSB0aGUg
TWFya2VkQXJ1Z2VtZW50QnVmZmVyIHVudGlsIHN0b3JlZCBpbiB0aGUgRXhjZXB0aW9uLgogICAg
IEZpeGVkVmVjdG9yPHVpbnQ2NF90PiBwYXlsb2FkKHZhbHVlcy5zaXplKCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNl
cHRpb25Qcm90b3R5cGUuY3BwCmluZGV4IDczMTExNTY3MDVjZjJhZmIwMmI4ODUwZGVkMTQxN2Mw
ZWQwYjA5OGIuLjdlMWVmZDY3ZGRhODAwYjY3N2FmZTY2ZDYzY2E0ZjU0YTM2MWZkZDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9u
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseUV4Y2VwdGlvblByb3RvdHlwZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b0Z1bmNJcyk7CiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlFeGNlcHRpb25Q
cm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2lu
Zm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3Nl
bWJseS5FeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2Vt
Ymx5RXhjZXB0aW9uLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RXhj
ZXB0aW9uUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5RXhjZXB0aW9u
UHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlFeGNlcHRp
b24KQEAgLTE0Myw3ICsxNDMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1i
bHlFeGNlcHRpb25Qcm90b0Z1bmNJcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogCiAgICAgSlNX
ZWJBc3NlbWJseVRhZyogdGFnID0gZ2V0VGFnKHZtLCBjYWxsRnJhbWUtPmFyZ3VtZW50KDApKTsK
ICAgICBpZiAoIXRhZykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uLmlzKCk6IEZpcnN0IGFyZ3Vt
ZW50IG11c3QgYmUgYSBXZWJBc3NlbWJseS5UYWciKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1U
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9u
LmlzKCk6IEZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBXZWJBc3NlbWJseS5UYWciX3MpOwogCiAg
ICAgUkVMRUFTRV9BTkRfUkVUVVJOKHRocm93U2NvcGUsIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xl
YW4oanNFeGNlcHRpb24tPnRhZygpID09IHRhZy0+dGFnKCkpKSk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCmluZGV4
IGM3ODczNzNmN2M5MmRhYmY0ZDQxMDNjYWI3ZGNlODNmOGEzMDJkODMuLjg4OTEyMDdkYzEyMDNi
NTE5MTM2NDE1ZmQ0MDM4YzVmNzNiOTBjOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwCkBAIC01NCw3ICs1NCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlv
bjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlGdW5jdGlvbikgfTsK
K2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3Nl
bWJseUZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxXZWJBc3NlbWJseUZ1bmN0aW9uKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2Uu
Y3BwCmluZGV4IGI1MzA2YjFmYzM4YmZhMjczMWU5MjJiOTM3Zjc1OGQyOTAxMDYyMWYuLmE5NGJj
NDMzYTM3ZTQzYTY3OWQ1OGU1MDZkNWI5ZWY1NTJhYWQzOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uQmFzZS5jcHAK
QEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBX
ZWJBc3NlbWJseUZ1bmN0aW9uQmFzZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbkJh
c2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5RnVuY3Rpb25CYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
RnVuY3Rpb25CYXNlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseUZ1bmN0aW9uQmFzZSkgfTsKIAogV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2U6OldlYkFzc2Vt
Ymx5RnVuY3Rpb25CYXNlKFZNJiB2bSwgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc21Ub1dh
c21JbXBvcnRhYmxlRnVuY3Rpb24gaW1wb3J0YWJsZUZ1bmN0aW9uKQogICAgIDogQmFzZSh2bSwg
ZXhlY3V0YWJsZSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0
b3IuY3BwCmluZGV4IDBiOTYzMWVhNTQ2NTQ1Zjc2YTMyZTg3MmQzOTc4ZTBmNThjODA4ZWMuLjQ5
ZWU4YjQ2MTA3MDczYjhhYzNlZDhlNjBjYWM1MmY2YWExZWUzZmIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsQ29u
c3RydWN0b3IuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gV2ViQXNzZW1ibHlHbG9iYWxDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JHbG9iYWxXZWJBc3NlbWJseUdsb2Jh
bCwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVj
dG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JHbG9iYWxX
ZWJBc3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJs
eUdsb2JhbENvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
Tihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5R2xvYmFsKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5R2xvYmFsKTsKQEAgLTE0Miw3ICsxNDIsNyBAQCBK
U0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseUdsb2JhbCwgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICAgICAgaWYgKGFyZ3VtZW50LmlzVW5kZWZp
bmVkKCkpCiAgICAgICAgICAgICAgICAgYXJndW1lbnQgPSBkZWZhdWx0VmFsdWVGb3JSZWZlcmVu
Y2VUeXBlKHR5cGUpOwogICAgICAgICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9zdEZ1bmN0aW9u
KHZtLCBhcmd1bWVudCkgJiYgIWFyZ3VtZW50LmlzTnVsbCgpKSB7Ci0gICAgICAgICAgICAgICAg
dGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2Vt
Ymx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhw
b3J0ZWQgd2FzbSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3Io
Z2xvYmFsT2JqZWN0LCB2bSwgIkZ1bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0
aW9uIl9zKSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHsgfTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIGluaXRpYWxWYWx1ZSA9IEpTVmFsdWU6OmVuY29kZShhcmd1bWVudCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFBy
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUds
b2JhbFByb3RvdHlwZS5jcHAKaW5kZXggMThhNGQxZjkxZGZmZTRkNDg1YmM2N2M5OTExYmI4MDRk
MjM5Y2RhMS4uYTViZGY5YjYzNjAwNThlMjE0NWZjMGEyOTdlNjFiODJlZmRjYjk3NCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
R2xvYmFsUHJvdG90eXBlLmNwcApAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseUdsb2JhbFByb3RvRnVuY1R5cGUpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBl
R2xvYmFsV2ViQXNzZW1ibHlHbG9iYWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vi
QXNzZW1ibHlHbG9iYWxQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlH
bG9iYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkdsb2JhbCJfcywgJkJhc2U6
OnNfaW5mbywgJnByb3RvdHlwZUdsb2JhbFdlYkFzc2VtYmx5R2xvYmFsLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlKSB9OwogCiAvKiBTb3Vy
Y2UgZm9yIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlw
ZUdsb2JhbFdlYkFzc2VtYmx5R2xvYmFsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcApp
bmRleCA3NTIzMzMzMzJmZmY2Njg3MGNkYTk1OTNlYWVjNzE0OTExMzVlZDRlLi5lMDBjNTg3YzEw
M2IzM2E4NzhjNzNhMDZjNGQ0Y2Y2OTU2MTI2MjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1
Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUluc3RhbmNl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJs
ZVdlYkFzc2VtYmx5SW5zdGFuY2UsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5SW5zdGFuY2UpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlJbnN0YW5jZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFu
Y2VQcm90b3R5cGUuY3BwCmluZGV4IDY5Mzg4OTE1YTdmMDY0ZDRlMmIyNDEwOWQwOTQ4OGZlYzJl
OTljNjkuLmFlNGI5MzFlNmNjNmE4MjM2ZjczNDZiY2FlOWMyMzRlZDA3MTc0NTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
SW5zdGFuY2VQcm90b3R5cGUuY3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9DVVNUT01fR0VUVEVSKHdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b0dldHRlckV4cG9ydHMpOwog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5SW5zdGFuY2VQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lkluc3RhbmNlIiwgJkJhc2U6OnNfaW5m
bywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5
Lkluc3RhbmNlIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUlu
c3RhbmNlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlw
ZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggODMwMzgxNDcxYmZhZGRjOGIzMzRiYmYx
NmE1NWE1MGM3NzY3ZmFkYi4uNjQxZmE2MGMyM2FjY2EyODA5NzYxYzI3NGUyYjE4M2JlMTI1NGM3
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlM
aW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJv
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25z
dHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlMaW5rRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dl
YkFzc2VtYmx5TGlua0Vycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNh
bGxKU1dlYkFzc2VtYmx5TGlua0Vycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcApp
bmRleCAzOGQ4YWNhZjFlYmNhOGQzMGVjZjgwOGQwODg3YjJmYjYyM2U2ZTJiLi40N2RlN2M1OTBh
YjBiNDNiNmEzNjNkNWVhZDgzNjdhZDRkNTMzYTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5
cGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2Vt
Ymx5LkxpbmtFcnJvciIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vy
cm9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5MaW5rRXJyb3IiX3MsICZCYXNlOjpzX2lu
Zm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3Vy
Y2UgZm9yIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3Rv
dHlwZVRhYmxlV2ViQXNzZW1ibHlMaW5rRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggNzI4MjhhYzY3OWFjOWEwM2I2OTkwMDdhZTIyMTUwZjY1MmRlMGZlMi4uNmU5NDdiNjRh
NDEzNmQzNmE0ZDE1MzkxZmQyODE4NDAzNjhiZjRmMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1vcnksIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3RvcikgfTsK
K2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJs
eU1lbW9yeSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeUNv
bnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1
Y3RKU1dlYkFzc2VtYmx5TWVtb3J5KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGNhbGxKU1dlYkFzc2VtYmx5TWVtb3J5KTsKQEAgLTc5LDcgKzc5LDcgQEAgSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlNZW1vcnksIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2IKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKCFtaW5TaXplVmFsdWUuaXNVbmRlZmluZWQoKSAm
JiAhaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKSB7CiAgICAgICAgICAgICAvLyBFcnJvciBi
ZWNhdXNlIGJvdGggc3BlY2lmaWVkLgotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFs
JyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIik7
CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93
U2NvcGUsICJXZWJBc3NlbWJseS5NZW1vcnkgJ2luaXRpYWwnIGFuZCAnbWluaW11bScgb3B0aW9u
cyBhcmUgc3BlY2lmaWVkIGF0IHRoZSBzYW1lIHRpbWUiX3MpOwogICAgICAgICB9CiAgICAgICAg
IGlmICghaW5pdFNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKQogICAgICAgICAgICAgbWluU2l6ZVZh
bHVlID0gaW5pdFNpemVWYWx1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmNwcAppbmRleCA3ZWNjYzNl
MDhmY2Y5NDRkYTcwNWEzYTQzOWZhZDM1OGQzZjhiMzlhLi5hNzI2ZWVmMDIyYWI3NmE0OGZiYmE3
MzBlNDk3YTY0MjQwMDc4ZWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0
OCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5TWVtb3J5
UHJvdG9GdW5jVHlwZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlNZW1vcnlQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSIs
ICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJB
c3NlbWJseS5NZW1vcnkiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2Vt
Ymx5TWVtb3J5LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5
UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1
Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yLmNwcAppbmRleCBkMzE3NTY1MGYzZDMzYjQxMThkMzRkNzg0NDhmYjE0MjZi
N2I1ZTY5Li4xMWFjMTZhNzE5MDRjNzUzZDkyNDhjYWRhOWI4M2RjYzUwZGEzNWZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJs
eU1vZHVsZUNvbnN0cnVjdG9yLmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TW9kdWxlKTsKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxl
V2ViQXNzZW1ibHlNb2R1bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1i
bHlNb2R1bGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVs
ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdl
YkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IubHV0LmgKICBAYmVnaW4gY29uc3RydWN0b3JUYWJs
ZVdlYkFzc2VtYmx5TW9kdWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5jcHAKaW5kZXggYjA4OWU2NmJk
ZWM4ZTg4NmIyZWE2MjMxZjJmOTU0NjMyZmU3NjMwMS4uOTZjZWI1ZjNmN2U3MTgxYTA1MmQyNmE3
MzNlMDBiOTM1ZTJkY2EyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9k
dWxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Nb2R1bGUiLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9k
dWxlIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZSkg
fTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5sdXQuaAogIEBi
ZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TW9kdWxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAKaW5k
ZXggN2ZhODFlNzk3MzJiMjI1NTYzMmE3NDhmNjkyZWJhYWI5ODNkNWY3Yi4uMjVlMDg5ZmEyMDcx
YjNmNDdmNDU5ZWM2MzY4MThlYmRiMTEzYTk5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcApAQCAtNDQs
NyArNDQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVS
ZWNvcmQ6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9k
dWxlUmVjb3JkKSB9OwogCiBTdHJ1Y3R1cmUqIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpjcmVh
dGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHByb3RvdHlwZSkKIHsKQEAgLTQ2Nyw3ICs0NjcsNyBAQCB2b2lkIFdlYkFzc2VtYmx5TW9kdWxl
UmVjb3JkOjppbml0aWFsaXplRXhwb3J0cyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQog
ICAgICAgICAgICAgLy8gV2UgY3JlYXRlIGEgVGFibGUgd2hlbiBpdCdzIGEgVGFibGUgZGVmaW5p
dGlvbi4KICAgICAgICAgICAgIFJlZlB0cjxXYXNtOjpUYWJsZT4gd2FzbVRhYmxlID0gV2FzbTo6
VGFibGU6OnRyeUNyZWF0ZShtb2R1bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0uaW5pdGlhbCgpLCBt
b2R1bGVJbmZvcm1hdGlvbi50YWJsZXNbaV0ubWF4aW11bSgpLCBtb2R1bGVJbmZvcm1hdGlvbi50
YWJsZXNbaV0udHlwZSgpKTsKICAgICAgICAgICAgIGlmICghd2FzbVRhYmxlKQotICAgICAgICAg
ICAgICAgIHJldHVybiBleGNlcHRpb24oY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9i
YWxPYmplY3QsIHZtLCAiY291bGRuJ3QgY3JlYXRlIFRhYmxlIikpOworICAgICAgICAgICAgICAg
IHJldHVybiBleGNlcHRpb24oY3JlYXRlSlNXZWJBc3NlbWJseUxpbmtFcnJvcihnbG9iYWxPYmpl
Y3QsIHZtLCAiY291bGRuJ3QgY3JlYXRlIFRhYmxlIl9zKSk7CiAgICAgICAgICAgICBKU1dlYkFz
c2VtYmx5VGFibGUqIHRhYmxlID0gSlNXZWJBc3NlbWJseVRhYmxlOjp0cnlDcmVhdGUoZ2xvYmFs
T2JqZWN0LCB2bSwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseVRhYmxlU3RydWN0dXJlKCksIHdh
c21UYWJsZS5yZWxlYXNlTm9uTnVsbCgpKTsKICAgICAgICAgICAgIC8vIFdlIHNob3VsZCBhbHdh
eXMgYmUgYWJsZSB0byBhbGxvY2F0ZSBhIEpTV2ViQXNzZW1ibHlUYWJsZSB3ZSd2ZSBkZWZpbmVk
LgogICAgICAgICAgICAgLy8gSWYgaXQncyBkZWZpbmVkIHRvIGJlIHRvbyBsYXJnZSwgd2Ugc2hv
dWxkIGhhdmUgdGhyb3duIGEgdmFsaWRhdGlvbiBlcnJvci4KQEAgLTY2MSw3ICs2NjEsNyBAQCB2
b2lkIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXplRXhwb3J0cyhKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0KQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgV2FzbTo6
Q2FsbGVlJiBlbWJlZGRlckVudHJ5cG9pbnRDYWxsZWUgPSBjYWxsZWVHcm91cC0+ZW1iZWRkZXJF
bnRyeXBvaW50Q2FsbGVlRnJvbUZ1bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhT
cGFjZSk7CiAgICAgICAgICAgICBXYXNtOjpXYXNtVG9XYXNtSW1wb3J0YWJsZUZ1bmN0aW9uOjpM
b2FkTG9jYXRpb24gZW50cnlwb2ludExvYWRMb2NhdGlvbiA9IGNhbGxlZUdyb3VwLT5lbnRyeXBv
aW50TG9hZExvY2F0aW9uRnJvbUZ1bmN0aW9uSW5kZXhTcGFjZShzdGFydEZ1bmN0aW9uSW5kZXhT
cGFjZSk7Ci0gICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9IFdlYkFz
c2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPndl
YkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUoKSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291bnQoKSwg
InN0YXJ0IiwgbV9pbnN0YW5jZS5nZXQoKSwgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBlbnRy
eXBvaW50TG9hZExvY2F0aW9uLCBzaWduYXR1cmVJbmRleCk7CisgICAgICAgICAgICBXZWJBc3Nl
bWJseUZ1bmN0aW9uKiBmdW5jdGlvbiA9IFdlYkFzc2VtYmx5RnVuY3Rpb246OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPndlYkFzc2VtYmx5RnVuY3Rpb25TdHJ1Y3R1cmUo
KSwgc2lnbmF0dXJlLmFyZ3VtZW50Q291bnQoKSwgInN0YXJ0Il9zLCBtX2luc3RhbmNlLmdldCgp
LCBlbWJlZGRlckVudHJ5cG9pbnRDYWxsZWUsIGVudHJ5cG9pbnRMb2FkTG9jYXRpb24sIHNpZ25h
dHVyZUluZGV4KTsKICAgICAgICAgICAgIG1fc3RhcnRGdW5jdGlvbi5zZXQodm0sIHRoaXMsIGZ1
bmN0aW9uKTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1
Y3Rvci5jcHAKaW5kZXggNDRmYTVlMzhkMWIxYjI5YmYwY2ZlOGJmNzgyNWE3NmQ4NjZkNGQzNy4u
YWE3ZDhkYTUwZDRhOGRlYmFmZmNjNjQyMjBiZmU3MDdkNWUxYTA0ZCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRh
YmxlV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJv
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNv
bnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1
Y3RKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZV
TkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVy
cm9yUHJvdG90eXBlLmNwcAppbmRleCAyMGMzNTk5N2Y2YjFlODk1MjkzNTU4MWI3MjE3YWRhMWMx
ZTZhOTRlLi5lYjc2MTNhZmI3OGQwZTc5ZmViYzYxMDFlZjNlMWQ1NWE4MmE3MGNkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJv
clByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlSdW50aW1lRXJyb3JQcm90b3R5cGUuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlJ1bnRpbWVFcnJvciIsICZCYXNlOjpzX2lu
Zm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJXZWJBc3NlbWJseS5SdW50aW1lRXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVU
YWJsZVdlYkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdl
YkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRh
YmxlV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCmluZGV4
IDU5ZDliNzNhMDM2YjZlZWMyMzk4NjMzZmE1NDhjZjQ1OTZkYTVkOTUuLmRhYWYwZmYwMTY4ZjEz
NjM4ZTA4ZTIyZTdkZmM1NjYxZjRjYmQ0NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcApA
QCAtNDAsNyArNDAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdl
YkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IpIH07
CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5VGFi
bGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3Nl
bWJseVRhYmxlKTsKQEAgLTg5LDcgKzg5LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNv
bnN0cnVjdEpTV2ViQXNzZW1ibHlUYWJsZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmoKICAg
ICBKU1ZhbHVlIG1pblNpemVWYWx1ZSA9IG1lbW9yeURlc2NyaXB0b3ItPmdldChnbG9iYWxPYmpl
Y3QsIG1pbmltdW1JZGVudCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBl
bmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoIWluaXRpYWxTaXplVmFsdWUuaXNVbmRlZmluZWQo
KSAmJiAhbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZN
VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlICdp
bml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0
aW1lIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhy
b3dTY29wZSwgIldlYkFzc2VtYmx5LlRhYmxlICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlv
bnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIl9zKTsKIAogICAgIGlmICghbWluU2l6
ZVZhbHVlLmlzVW5kZWZpbmVkKCkpCiAgICAgICAgIGluaXRpYWxTaXplVmFsdWUgPSBtaW5TaXpl
VmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCmluZGV4IDRjYzUzYjdhYWMzM2Y2NWE2OGJkZmUz
ZDFhNGIzZGRmZGI5MGYwZDguLjNmOWQwYWIwMjE4MTI2N2FhZGNhYzI5MzdiNDM0YzhjZjc1MmY2
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
VGFibGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5VGFibGVQcm90b0Z1bmNUeXBlKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSIsICZCYXNlOjpzX2luZm8sICZwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJs
eVRhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWJsZSJfcywgJkJhc2U6
OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFdlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFi
bGVXZWJBc3NlbWJseVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwCmluZGV4IDc0ZGEwNWYyNzE3
NWRlMjg5MGM1OWNmYmEwNTg2YmE5ZTVhOTAwMzguLmQ2NzFlMGM0MjNjM2NhNjUwZDBlYWRhMmI3
ZDU4ZmU1NDFkN2QzNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTV2ViQXNzZW1ibHlUYWcpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseVRhZyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlw
ZS5jcHAKaW5kZXggZTRhNDYwN2EwMDVlMDg5OWMzNzVlN2YwZGViMzNhY2EzZTVlYTFhYy4uMjli
NWYyZGRiZDMzNDRkZWY2ZGY5N2QwYTQwOTRiNzBjZDYwZjQyZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnUHJvdG90eXBlLmNw
cApAQCAtNDMsNyArNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJB
c3NlbWJseVRhZ1Byb3RvRnVuY1R5cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5VGFnUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5U
YWciLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1i
bHkuVGFnIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZywg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZSkgfTsK
IAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBw
cm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5VGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKaW5kZXgg
MmZiNmE0ZWM3YmI2MjdhOGNiODdlZDhkZjRiZTQ1OTU3ZDFmYzliZi4uYjVkNzhjZTQ4ZGE3MGQy
NjljM2U1OTlkYTdmMzlkY2Y5MDA2ZmI5ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLmNwcApAQCAt
MzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFz
c2VtYmx5V3JhcHBlckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNz
ZW1ibHlXcmFwcGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5V3JhcHBlckZ1bmN0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihjYWxsV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24pOwogCkBAIC00NSw3
ICs0NSw3IEBAIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uOjpXZWJBc3NlbWJseVdyYXBwZXJG
dW5jdGlvbihWTSYgdm0sIE5hdGl2ZUV4ZWN1dGFibGUqCiBXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbiogV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb246OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCogZnVu
Y3Rpb24sIHVuc2lnbmVkIGltcG9ydEluZGV4LCBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIGluc3Rh
bmNlLCBXYXNtOjpTaWduYXR1cmVJbmRleCBzaWduYXR1cmVJbmRleCkKIHsKICAgICBBU1NFUlRf
V0lUSF9NRVNTQUdFKCFmdW5jdGlvbi0+aW5oZXJpdHM8V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rp
b24+KHZtKSwgIldlIHNob3VsZCBuZXZlciBkb3VibGUgd3JhcCBhIHdyYXBwZXIgZnVuY3Rpb24u
Iik7Ci0gICAgU3RyaW5nIG5hbWUgPSAiIjsKKyAgICBTdHJpbmcgbmFtZSA9IGVtcHR5U3RyaW5n
KCk7CiAgICAgTmF0aXZlRXhlY3V0YWJsZSogZXhlY3V0YWJsZSA9IHZtLmdldEhvc3RGdW5jdGlv
bihjYWxsV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24sIE5vSW50cmluc2ljLCBjYWxsSG9zdEZ1
bmN0aW9uQXNDb25zdHJ1Y3RvciwgbnVsbHB0ciwgbmFtZSk7CiAgICAgV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24qIHJlc3VsdCA9IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFdlYkFzc2Vt
Ymx5V3JhcHBlckZ1bmN0aW9uPih2bSkpIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKHZtLCBl
eGVjdXRhYmxlLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwgV2FzbTo6V2FzbVRvV2FzbUltcG9y
dGFibGVGdW5jdGlvbiB7IHNpZ25hdHVyZUluZGV4LCAmaW5zdGFuY2UtPmluc3RhbmNlKCkuaW1w
b3J0RnVuY3Rpb25JbmZvKGltcG9ydEluZGV4KS0+d2FzbVRvRW1iZWRkZXJTdHViIH0gKTsKICAg
ICBjb25zdCBXYXNtOjpTaWduYXR1cmUmIHNpZ25hdHVyZSA9IFdhc206OlNpZ25hdHVyZUluZm9y
bWF0aW9uOjpnZXQoc2lnbmF0dXJlSW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Npb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3lhcnIvUmVndWxhckV4cHJlc3Npb24uY3BwCmluZGV4IGVlNGY1OGJkNDIwZDM5YTE0YWQ4MWVm
Y2FlN2QzNzhkN2YzOGNkZDcuLjM3OTAzNmViMzZiODZiOGI3Yjc4NjIwMmUyNmJiOGYxNjc5NDMz
MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNz
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lv
bi5jcHAKQEAgLTY0LDcgKzY0LDcgQEAgcHJpdmF0ZToKIAogICAgICAgICBKU0M6OllhcnI6Ollh
cnJQYXR0ZXJuIHBhdHRlcm4ocGF0dGVyblN0cmluZywgZmxhZ3MsIG1fY29uc3RydWN0aW9uRXJy
b3JDb2RlKTsKICAgICAgICAgaWYgKEpTQzo6WWFycjo6aGFzRXJyb3IobV9jb25zdHJ1Y3Rpb25F
cnJvckNvZGUpKSB7Ci0gICAgICAgICAgICBMT0dfRVJST1IoIlJlZ3VsYXJFeHByZXNzaW9uOiBZ
QVJSIGNvbXBpbGUgZmFpbGVkIHdpdGggJyVzJyIsIEpTQzo6WWFycjo6ZXJyb3JNZXNzYWdlKG1f
Y29uc3RydWN0aW9uRXJyb3JDb2RlKSk7CisgICAgICAgICAgICBMT0dfRVJST1IoIlJlZ3VsYXJF
eHByZXNzaW9uOiBZQVJSIGNvbXBpbGUgZmFpbGVkIHdpdGggJyVzJyIsIEpTQzo6WWFycjo6ZXJy
b3JNZXNzYWdlKG1fY29uc3RydWN0aW9uRXJyb3JDb2RlKS5jaGFyYWN0ZXJzKCkpOwogICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcAppbmRleCA0ZjAzZTA3NDYyNDAwYjVjMTZlNGNmOWE2
OGEzMjM4OTg0MWQxMTQ5Li41OTU3OTQ0YmU3Y2E1MGVmMGYyYWJhZWY2NzNkOWNiZDMyZmMzZWUz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmNwcApAQCAt
MzAsMzggKzMwLDM4IEBACiAKIG5hbWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgWWFyciB7CiAKLWNv
bnN0IGNoYXIqIGVycm9yTWVzc2FnZShFcnJvckNvZGUgZXJyb3IpCitBU0NJSUxpdGVyYWwgZXJy
b3JNZXNzYWdlKEVycm9yQ29kZSBlcnJvcikKIHsKICNkZWZpbmUgUkVHRVhQX0VSUk9SX1BSRUZJ
WCAiSW52YWxpZCByZWd1bGFyIGV4cHJlc3Npb246ICIKICAgICAvLyBUaGUgb3JkZXIgb2YgdGhp
cyBhcnJheSBtdXN0IG1hdGNoIHRoZSBFcnJvckNvZGUgZW51bS4KLSAgICBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgZXJyb3JNZXNzYWdlc1tdID0gewotICAgICAgICBudWxscHRyLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gTm9FcnJvcgotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJyZWd1bGFyIGV4cHJl
c3Npb24gdG9vIGxhcmdlIiwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xh
cmdlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGlu
IHt9IHF1YW50aWZpZXIiLCAgICAgICAgICAgICAgICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgot
ICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJub3RoaW5nIHRvIHJlcGVhdCIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUXVhbnRpZmllcldpdGhvdXRBdG9tCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm51bWJlciB0b28gbGFyZ2UgaW4ge30gcXVhbnRpZmll
ciIsICAgICAgICAgICAgICAgICAgICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKLSAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAiaW5jb21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2RlIHBh
dHRlcm4iLCAgICAgICAgIC8vIFF1YW50aWZpZXJJbmNvbXBsZXRlCi0gICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggIm1pc3NpbmcgKSIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyBNaXNzaW5nUGFyZW50aGVzZXMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BS
RUZJWCAidW5tYXRjaGVkIF0gb3IgfSBicmFja2V0IGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAg
ICAgIC8vIEJyYWNrZXRVbm1hdGNoZWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidW5t
YXRjaGVkIHBhcmVudGhlc2VzIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBh
cmVudGhlc2VzVW5tYXRjaGVkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVucmVjb2du
aXplZCBjaGFyYWN0ZXIgYWZ0ZXIgKD8iLCAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRo
ZXNlc1R5cGVJbnZhbGlkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZ3Jv
dXAgc3BlY2lmaWVyIG5hbWUiLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkR3Jv
dXBOYW1lCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImR1cGxpY2F0ZSBncm91cCBzcGVj
aWZpZXIgbmFtZSIsICAgICAgICAgICAgICAgICAgICAgICAvLyBEdXBsaWNhdGVHcm91cE5hbWUK
LSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBj
aGFyYWN0ZXIgY2xhc3MiLCAgICAgICAgICAgIC8vIENoYXJhY3RlckNsYXNzVW5tYXRjaGVkCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInJhbmdlIG91dCBvZiBvcmRlciBpbiBjaGFyYWN0
ZXIgY2xhc3MiLCAgICAgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1JhbmdlT3V0T2ZPcmRl
cgotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHJhbmdlIGluIGNoYXJhY3Rl
ciBjbGFzcyBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZUludmFs
aWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiXFwgYXQgZW5kIG9mIHBhdHRlcm4iLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEVzY2FwZVVudGVybWluYXRlZAotICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIFVuaWNvZGUgXFx1IGVzY2FwZSIsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVFc2NhcGUKLSAgICAgICAg
UkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIGNvZGUgcG9pbnQgXFx1e30gZXNj
YXBlIiwgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlQ29kZVBvaW50RXNjYXBlCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgYmFja3JlZmVyZW5jZSBmb3IgVW5pY29k
ZSBwYXR0ZXJuIiwgICAgICAgICAgICAvLyBJbnZhbGlkQmFja3JlZmVyZW5jZQotICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIFxcazw+IG5hbWVkIGJhY2tyZWZlcmVuY2UiLCAg
ICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZE5hbWVkQmFja1JlZmVyZW5jZQotICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGVzY2FwZWQgY2hhcmFjdGVyIGZvciBVbmljb2Rl
IHBhdHRlcm4iLCAgICAgICAgLy8gSW52YWxpZElkZW50aXR5RXNjYXBlCi0gICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImludmFsaWQgb2N0YWwgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4i
LCAgICAgICAgICAgICAvLyBJbnZhbGlkT2N0YWxFc2NhcGUKLSAgICAgICAgUkVHRVhQX0VSUk9S
X1BSRUZJWCAiaW52YWxpZCBcXGMgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iLCAgICAgICAg
ICAgICAgIC8vIEludmFsaWRDb250cm9sTGV0dGVyRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJP
Ul9QUkVGSVggImludmFsaWQgcHJvcGVydHkgZXhwcmVzc2lvbiIsICAgICAgICAgICAgICAgICAg
ICAgICAgICAvLyBJbnZhbGlkVW5pY29kZVByb3BlcnR5RXhwcmVzc2lvbgotICAgICAgICBSRUdF
WFBfRVJST1JfUFJFRklYICJ0b28gbWFueSBuZXN0ZWQgZGlzanVuY3Rpb25zIiwgICAgICAgICAg
ICAgICAgICAgICAgICAgLy8gVG9vTWFueURpc2p1bmN0aW9ucwotICAgICAgICBSRUdFWFBfRVJS
T1JfUFJFRklYICJwYXR0ZXJuIGV4Y2VlZHMgc3RyaW5nIGxlbmd0aCBsaW1pdHMiLCAgICAgICAg
ICAgICAgICAgLy8gT2Zmc2V0VG9vTGFyZ2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
aW52YWxpZCBmbGFncyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v
IEludmFsaWRSZWd1bGFyRXhwcmVzc2lvbkZsYWdzCisgICAgc3RhdGljIGNvbnN0IEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2VzW10gPSB7CisgICAgICAgIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v
IE5vRXJyb3IKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9u
IHRvbyBsYXJnZSJfcywgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUGF0dGVyblRvb0xhcmdl
CisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9
IHF1YW50aWZpZXIiX3MsICAgICAgICAgICAgICAgIC8vIFF1YW50aWZpZXJPdXRPZk9yZGVyCisg
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm5vdGhpbmcgdG8gcmVwZWF0Il9zLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFF1YW50aWZpZXJXaXRob3V0QXRvbQorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZp
ZXIiX3MsICAgICAgICAgICAgICAgICAgICAvLyBRdWFudGlmaWVyVG9vTGFyZ2UKKyAgICAgICAg
UkVHRVhQX0VSUk9SX1BSRUZJWCAiaW5jb21wbGV0ZSB7fSBxdWFudGlmaWVyIGZvciBVbmljb2Rl
IHBhdHRlcm4iX3MgICAgICAgICAgLy8gUXVhbnRpZmllckluY29tcGxldGUKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAibWlzc2luZyApIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gTWlzc2luZ1BhcmVudGhlc2VzCisgICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggInVubWF0Y2hlZCBdIG9yIH0gYnJhY2tldCBmb3IgVW5pY29kZSBwYXR0ZXJu
Il9zLCAgICAgICAgIC8vIEJyYWNrZXRVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BS
RUZJWCAidW5tYXRjaGVkIHBhcmVudGhlc2VzIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gUGFyZW50aGVzZXNVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJ
WCAidW5yZWNvZ25pemVkIGNoYXJhY3RlciBhZnRlciAoPyJfcywgICAgICAgICAgICAgICAgICAg
ICAgLy8gUGFyZW50aGVzZXNUeXBlSW52YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklY
ICJpbnZhbGlkIGdyb3VwIHNwZWNpZmllciBuYW1lIl9zLCAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyBJbnZhbGlkR3JvdXBOYW1lCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImR1cGxp
Y2F0ZSBncm91cCBzcGVjaWZpZXIgbmFtZSJfcywgICAgICAgICAgICAgICAgICAgICAgIC8vIER1
cGxpY2F0ZUdyb3VwTmFtZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJtaXNzaW5nIHRl
cm1pbmF0aW5nIF0gZm9yIGNoYXJhY3RlciBjbGFzcyJfcywgICAgICAgICAgICAvLyBDaGFyYWN0
ZXJDbGFzc1VubWF0Y2hlZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJyYW5nZSBvdXQg
b2Ygb3JkZXIgaW4gY2hhcmFjdGVyIGNsYXNzIl9zLCAgICAgICAgICAgICAgICAvLyBDaGFyYWN0
ZXJDbGFzc1JhbmdlT3V0T2ZPcmRlcgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZh
bGlkIHJhbmdlIGluIGNoYXJhY3RlciBjbGFzcyBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAvLyBD
aGFyYWN0ZXJDbGFzc1JhbmdlSW52YWxpZAorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJc
XCBhdCBlbmQgb2YgcGF0dGVybiJfcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyBFc2NhcGVVbnRlcm1pbmF0ZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxp
ZCBVbmljb2RlIFxcdSBlc2NhcGUiX3MsICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52
YWxpZFVuaWNvZGVFc2NhcGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBV
bmljb2RlIGNvZGUgcG9pbnQgXFx1e30gZXNjYXBlIl9zLCAgICAgICAgICAgICAgLy8gSW52YWxp
ZFVuaWNvZGVDb2RlUG9pbnRFc2NhcGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52
YWxpZCBiYWNrcmVmZXJlbmNlIGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAgICAgLy8g
SW52YWxpZEJhY2tyZWZlcmVuY2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxp
ZCBcXGs8PiBuYW1lZCBiYWNrcmVmZXJlbmNlIl9zLCAgICAgICAgICAgICAgICAgICAgLy8gSW52
YWxpZE5hbWVkQmFja1JlZmVyZW5jZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZh
bGlkIGVzY2FwZWQgY2hhcmFjdGVyIGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAvLyBJ
bnZhbGlkSWRlbnRpdHlFc2NhcGUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxp
ZCBvY3RhbCBlc2NhcGUgZm9yIFVuaWNvZGUgcGF0dGVybiJfcywgICAgICAgICAgICAgLy8gSW52
YWxpZE9jdGFsRXNjYXBlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxj
IGVzY2FwZSBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgICAgICAgIC8vIEludmFsaWRD
b250cm9sTGV0dGVyRXNjYXBlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQg
cHJvcGVydHkgZXhwcmVzc2lvbiJfcywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFs
aWRVbmljb2RlUHJvcGVydHlFeHByZXNzaW9uCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVgg
InRvbyBtYW55IG5lc3RlZCBkaXNqdW5jdGlvbnMiX3MsICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIFRvb01hbnlEaXNqdW5jdGlvbnMKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicGF0
dGVybiBleGNlZWRzIHN0cmluZyBsZW5ndGggbGltaXRzIl9zLCAgICAgICAgICAgICAgICAgLy8g
T2Zmc2V0VG9vTGFyZ2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBmbGFn
cyJfcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFJl
Z3VsYXJFeHByZXNzaW9uRmxhZ3MKICAgICB9OwogCiAgICAgcmV0dXJuIGVycm9yTWVzc2FnZXNb
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGVycm9yKV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFy
ci9ZYXJyRXJyb3JDb2RlLmgKaW5kZXggZDI3N2ZjYmM0ZGNhODNiZDg4MzA5N2M3YzAwM2FkMzY3
OWJiNTVmOS4uZWJmZjU5NmU1ZTQxZjViOWE0MjJjZjcyNGZkMWRjNzRiNTAyMTIzNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJFcnJvckNvZGUuaApAQCAtMjUsNiArMjUsOCBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKIG5hbWVzcGFj
ZSBKU0MgewogCiBjbGFzcyBDYWxsRnJhbWU7CkBAIC02Myw3ICs2NSw3IEBAIGVudW0gY2xhc3Mg
RXJyb3JDb2RlIDogdWludDhfdCB7CiAgICAgSW52YWxpZFJlZ3VsYXJFeHByZXNzaW9uRmxhZ3Ms
CiB9OwogCi1KU19FWFBPUlRfUFJJVkFURSBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JD
b2RlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UoRXJyb3JD
b2RlKTsKIGlubGluZSBib29sIGhhc0Vycm9yKEVycm9yQ29kZSBlcnJvckNvZGUpCiB7CiAgICAg
cmV0dXJuIGVycm9yQ29kZSAhPSBFcnJvckNvZGU6Ok5vRXJyb3I7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdl
LmgKaW5kZXggODNkMmE2ZGI5ODUwNTk4MDhlNTg5ZjE4NmZkZWIwOTgyZGY1MTU4Ni4uZWU1MWZi
YjhkZGUwZDYyNzRiZmQ2YmJjYWMxYjhiMjhmMTYwMTlhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvUmVzb3VyY2VVc2FnZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1Jlc291cmNlVXNhZ2Uu
aApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KKyNp
bmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzksNyArNDAs
NyBAQCBzdHJ1Y3QgVGFnSW5mbyB7CiAgICAgc2l6ZV90IHJlc2VydmVkIHsgMCB9OwogfTsKIAot
V1RGX0VYUE9SVF9QUklWQVRFIGNvbnN0IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWdu
ZWQpOworV1RGX0VYUE9SVF9QUklWQVRFIEFTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFtZUZvclZNVGFn
KHVuc2lnbmVkKTsKIFdURl9FWFBPUlRfUFJJVkFURSBzaXplX3Qgdm1QYWdlU2l6ZSgpOwogV1RG
X0VYUE9SVF9QUklWQVRFIHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiBwYWdlc1BlclZNVGFnKCk7
CiBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBsb2dGb290cHJpbnRDb21wYXJpc29uKGNvbnN0IHN0
ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYsIGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNw
cCBiL1NvdXJjZS9XVEYvd3RmL2NvY29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAKaW5kZXggMzE0
MDdiYWFkNTQwNzQ2Yjg1OTc2ZGQ4OTNhYzQ4OTk0YmIxNzcwMy4uNDhjZmI2NDdjNTY5MzhlNjY0
NGZkMTIwYzE0NjU3YzI4OGYxMTM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvY29jb2Ev
UmVzb3VyY2VVc2FnZUNvY29hLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNvdXJj
ZVVzYWdlQ29jb2EuY3BwCkBAIC02OSwzNiArNjksMzYgQEAgdm9pZCBsb2dGb290cHJpbnRDb21w
YXJpc29uKGNvbnN0IHN0ZDo6YXJyYXk8VGFnSW5mbywgMjU2PiYgYmVmb3JlLCBjb25zdCBzdGQ6
OmEKICAgICB9CiB9CiAKLWNvbnN0IGNoYXIqIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQg
dGFnKQorQVNDSUlMaXRlcmFsIGRpc3BsYXlOYW1lRm9yVk1UYWcodW5zaWduZWQgdGFnKQogewog
ICAgIHN3aXRjaCAodGFnKSB7Ci0gICAgY2FzZSBWTV9NRU1PUllfQ0dJTUFHRTogcmV0dXJuICJD
RyBpbWFnZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfQ09SRUdSQVBISUNTX0RBVEE6IHJldHVybiAi
Q0cgcmFzdGVyIGRhdGEiOwotICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVTRVJWSUNFUzogcmV0dXJu
ICJDb3JlU2VydmljZXMiOwotICAgIGNhc2UgVk1fTUVNT1JZX0RZTElCOiByZXR1cm4gImR5bGli
IjsKLSAgICBjYXNlIFZNX01FTU9SWV9GT1VOREFUSU9OOiByZXR1cm4gIkZvdW5kYXRpb24iOwot
ICAgIGNhc2UgVk1fTUVNT1JZX0lNQUdFSU86IHJldHVybiAiSW1hZ2VJTyI7Ci0gICAgY2FzZSBW
TV9NRU1PUllfSU9BQ0NFTEVSQVRPUjogcmV0dXJuICJJT0FjY2VsZXJhdG9yIjsKLSAgICBjYXNl
IFZNX01FTU9SWV9JT1NVUkZBQ0U6IHJldHVybiAiSU9TdXJmYWNlIjsKLSAgICBjYXNlIFZNX01F
TU9SWV9JT0tJVDogcmV0dXJuICJJT0tpdCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQ
VF9DT1JFOiByZXR1cm4gIkdpZ2FjYWdlIjsKLSAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBU
X0pJVF9FWEVDVVRBQkxFX0FMTE9DQVRPUjogcmV0dXJuICJKU0MgSklUIjsKLSAgICBjYXNlIFZN
X01FTU9SWV9KQVZBU0NSSVBUX0pJVF9SRUdJU1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiOwot
ICAgIGNhc2UgVk1fTUVNT1JZX0xBWUVSS0lUOiByZXR1cm4gIkNvcmVBbmltYXRpb24iOwotICAg
IGNhc2UgVk1fTUVNT1JZX0xJQkRJU1BBVENIOiByZXR1cm4gImxpYmRpc3BhdGNoIjsKLSAgICBj
YXNlIFZNX01FTU9SWV9NQUxMT0M6IHJldHVybiAibWFsbG9jIjsKLSAgICBjYXNlIFZNX01FTU9S
WV9NQUxMT0NfSFVHRTogcmV0dXJuICJtYWxsb2MgKGh1Z2UpIjsKLSAgICBjYXNlIFZNX01FTU9S
WV9NQUxMT0NfTEFSR0U6IHJldHVybiAibWFsbG9jIChsYXJnZSkiOwotICAgIGNhc2UgVk1fTUVN
T1JZX01BTExPQ19NRURJVU06IHJldHVybiAibWFsbG9jIChtZWRpdW0pIjsKLSAgICBjYXNlIFZN
X01FTU9SWV9NQUxMT0NfTkFOTzogcmV0dXJuICJtYWxsb2MgKG5hbm8pIjsKLSAgICBjYXNlIFZN
X01FTU9SWV9NQUxMT0NfU01BTEw6IHJldHVybiAibWFsbG9jIChzbWFsbCkiOwotICAgIGNhc2Ug
Vk1fTUVNT1JZX01BTExPQ19USU5ZOiByZXR1cm4gIm1hbGxvYyAodGlueSkiOwotICAgIGNhc2Ug
Vk1fTUVNT1JZX09TX0FMTE9DX09OQ0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSI7Ci0gICAgY2Fz
ZSBWTV9NRU1PUllfU1FMSVRFOiByZXR1cm4gIlNRTGl0ZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllf
U1RBQ0s6IHJldHVybiAiU3RhY2siOwotICAgIGNhc2UgVk1fTUVNT1JZX1RDTUFMTE9DOiByZXR1
cm4gImJtYWxsb2MiOwotICAgIGNhc2UgVk1fTUVNT1JZX1VOU0hBUkVEX1BNQVA6IHJldHVybiAi
cG1hcCAodW5zaGFyZWQpIjsKLSAgICBkZWZhdWx0OiByZXR1cm4gbnVsbHB0cjsKKyAgICBjYXNl
IFZNX01FTU9SWV9DR0lNQUdFOiByZXR1cm4gIkNHIGltYWdlIl9zOworICAgIGNhc2UgVk1fTUVN
T1JZX0NPUkVHUkFQSElDU19EQVRBOiByZXR1cm4gIkNHIHJhc3RlciBkYXRhIl9zOworICAgIGNh
c2UgVk1fTUVNT1JZX0NPUkVTRVJWSUNFUzogcmV0dXJuICJDb3JlU2VydmljZXMiX3M7CisgICAg
Y2FzZSBWTV9NRU1PUllfRFlMSUI6IHJldHVybiAiZHlsaWIiX3M7CisgICAgY2FzZSBWTV9NRU1P
UllfRk9VTkRBVElPTjogcmV0dXJuICJGb3VuZGF0aW9uIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X0lNQUdFSU86IHJldHVybiAiSW1hZ2VJTyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0FDQ0VM
RVJBVE9SOiByZXR1cm4gIklPQWNjZWxlcmF0b3IiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9T
VVJGQUNFOiByZXR1cm4gIklPU3VyZmFjZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JT0tJVDog
cmV0dXJuICJJT0tpdCJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9KQVZBU0NSSVBUX0NPUkU6IHJl
dHVybiAiR2lnYWNhZ2UiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfRVhF
Q1VUQUJMRV9BTExPQ0FUT1I6IHJldHVybiAiSlNDIEpJVCJfczsKKyAgICBjYXNlIFZNX01FTU9S
WV9KQVZBU0NSSVBUX0pJVF9SRUdJU1RFUl9GSUxFOiByZXR1cm4gIklzb0hlYXAiX3M7CisgICAg
Y2FzZSBWTV9NRU1PUllfTEFZRVJLSVQ6IHJldHVybiAiQ29yZUFuaW1hdGlvbiJfczsKKyAgICBj
YXNlIFZNX01FTU9SWV9MSUJESVNQQVRDSDogcmV0dXJuICJsaWJkaXNwYXRjaCJfczsKKyAgICBj
YXNlIFZNX01FTU9SWV9NQUxMT0M6IHJldHVybiAibWFsbG9jIl9zOworICAgIGNhc2UgVk1fTUVN
T1JZX01BTExPQ19IVUdFOiByZXR1cm4gIm1hbGxvYyAoaHVnZSkiX3M7CisgICAgY2FzZSBWTV9N
RU1PUllfTUFMTE9DX0xBUkdFOiByZXR1cm4gIm1hbGxvYyAobGFyZ2UpIl9zOworICAgIGNhc2Ug
Vk1fTUVNT1JZX01BTExPQ19NRURJVU06IHJldHVybiAibWFsbG9jIChtZWRpdW0pIl9zOworICAg
IGNhc2UgVk1fTUVNT1JZX01BTExPQ19OQU5POiByZXR1cm4gIm1hbGxvYyAobmFubykiX3M7Cisg
ICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX1NNQUxMOiByZXR1cm4gIm1hbGxvYyAoc21hbGwpIl9z
OworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19USU5ZOiByZXR1cm4gIm1hbGxvYyAodGlueSki
X3M7CisgICAgY2FzZSBWTV9NRU1PUllfT1NfQUxMT0NfT05DRTogcmV0dXJuICJvc19hbGxvY19v
bmNlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX1NRTElURTogcmV0dXJuICJTUUxpdGUiX3M7Cisg
ICAgY2FzZSBWTV9NRU1PUllfU1RBQ0s6IHJldHVybiAiU3RhY2siX3M7CisgICAgY2FzZSBWTV9N
RU1PUllfVENNQUxMT0M6IHJldHVybiAiYm1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9V
TlNIQVJFRF9QTUFQOiByZXR1cm4gInBtYXAgKHVuc2hhcmVkKSJfczsKKyAgICBkZWZhdWx0OiBy
ZXR1cm4gQVNDSUlMaXRlcmFsOjpudWxsKCk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SW1wbC5oCmluZGV4IGM3NmNkNTIzNjc2MTFjOTQyZDM0MmJmMDkxYjE2MmEwYTY3NzQ0ZTAuLjhk
ODBmNzg3NzgzZDQzYzU2MmY4ZTBjZDNlMzY3NWI5NzZiYTgyNTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nSW1wbC5oCkBAIC00MzEsNyArNDMxLDcgQEAgcHVibGljOgogICAgIHNpemVfdCBmaW5kKGNo
YXIgY2hhcmFjdGVyLCB1bnNpZ25lZCBzdGFydCA9IDApOwogICAgIHNpemVfdCBmaW5kKFVDaGFy
IGNoYXJhY3RlciwgdW5zaWduZWQgc3RhcnQgPSAwKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c2l6ZV90IGZpbmQoQ29kZVVuaXRNYXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBpbmRleCA9IDApOwot
ICAgIHNpemVfdCBmaW5kKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAwKTsKKyAgICBX
VEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZpbmQoY29uc3QgTENoYXIqLCB1bnNpZ25lZCBpbmRl
eCA9IDApOwogICAgIEFMV0FZU19JTkxJTkUgc2l6ZV90IGZpbmQoY29uc3QgY2hhciogc3RyaW5n
LCB1bnNpZ25lZCBpbmRleCA9IDApIHsgcmV0dXJuIGZpbmQocmVpbnRlcnByZXRfY2FzdDxjb25z
dCBMQ2hhcio+KHN0cmluZyksIGluZGV4KTsgfQogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzaXpl
X3QgZmluZChTdHJpbmdJbXBsKik7CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5k
KFN0cmluZ0ltcGwqLCB1bnNpZ25lZCBpbmRleCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L1dURlN0cmluZy5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAK
aW5kZXggM2E5MWE2NzdkNWMwMzhlMDNiN2M1ZWIzMmYzNzMzYmVmYzA4Y2E1NS4uZjM0NTkzNGI3
M2NjOGQ0NTIwNWUzYTQ2YWM2MTkyMGE5YTM5OTljNSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvdGV4dC9XVEZTdHJpbmcuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5n
LmNwcApAQCAtODAsNyArODAsNyBAQCBTdHJpbmc6OlN0cmluZyhjb25zdCBjaGFyKiBudWxsVGVy
bWluYXRlZFN0cmluZykKIH0KIAogU3RyaW5nOjpTdHJpbmcoQVNDSUlMaXRlcmFsIGNoYXJhY3Rl
cnMpCi0gICAgOiBtX2ltcGwoU3RyaW5nSW1wbDo6Y3JlYXRlRnJvbUxpdGVyYWwoY2hhcmFjdGVy
cykpCisgICAgOiBtX2ltcGwoY2hhcmFjdGVycy5pc051bGwoKSA/IG51bGxwdHIgOiBSZWZQdHI8
U3RyaW5nSW1wbD4geyBTdHJpbmdJbXBsOjpjcmVhdGVGcm9tTGl0ZXJhbChjaGFyYWN0ZXJzKSB9
KQogewogfQogCkBAIC00NjUsMzEgKzQ2NSwzMSBAQCBTdHJpbmcgU3RyaW5nOjpudW1iZXIodW5z
aWduZWQgbG9uZyBsb25nIG51bWJlcikKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4
ZWRQcmVjaXNpb24oZmxvYXQgbnVtYmVyLCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVy
b3NUcnVuY2F0aW5nUG9saWN5IHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5KQogewogICAg
IE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFBy
ZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1
bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworICAgIHJldHVybiBTdHJp
bmcgeyBudW1iZXJUb0ZpeGVkUHJlY2lzaW9uU3RyaW5nKG51bWJlciwgcHJlY2lzaW9uLCBidWZm
ZXIsIHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5ID09IFRydW5jYXRlVHJhaWxpbmdaZXJv
cykgfTsKIH0KIAogU3RyaW5nIFN0cmluZzo6bnVtYmVyVG9TdHJpbmdGaXhlZFByZWNpc2lvbihk
b3VibGUgbnVtYmVyLCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5n
UG9saWN5IHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5KQogewogICAgIE51bWJlclRvU3Ry
aW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmlu
ZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGlj
eSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJU
b0ZpeGVkUHJlY2lzaW9uU3RyaW5nKG51bWJlciwgcHJlY2lzaW9uLCBidWZmZXIsIHRyYWlsaW5n
WmVyb3NUcnVuY2F0aW5nUG9saWN5ID09IFRydW5jYXRlVHJhaWxpbmdaZXJvcykgfTsKIH0KIAog
U3RyaW5nIFN0cmluZzo6bnVtYmVyKGZsb2F0IG51bWJlcikKIHsKICAgICBOdW1iZXJUb1N0cmlu
Z0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVy
KTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpIH07
CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlcihkb3VibGUgbnVtYmVyKQogewogICAgIE51bWJl
clRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9TdHJpbmcobnVtYmVy
LCBidWZmZXIpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1
ZmZlcikgfTsKIH0KIAogU3RyaW5nIFN0cmluZzo6bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKGRv
dWJsZSBudW1iZXIsIHVuc2lnbmVkIGRlY2ltYWxQbGFjZXMpCiB7CiAgICAgTnVtYmVyVG9TdHJp
bmdCdWZmZXIgYnVmZmVyOwotICAgIHJldHVybiBudW1iZXJUb0ZpeGVkV2lkdGhTdHJpbmcobnVt
YmVyLCBkZWNpbWFsUGxhY2VzLCBidWZmZXIpOworICAgIHJldHVybiBTdHJpbmcgeyBudW1iZXJU
b0ZpeGVkV2lkdGhTdHJpbmcobnVtYmVyLCBkZWNpbWFsUGxhY2VzLCBidWZmZXIpIH07CiB9CiAK
IGRvdWJsZSBTdHJpbmc6OnRvRG91YmxlKGJvb2wqIG9rKSBjb25zdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3Ry
aW5nLmgKaW5kZXggNTExYjljMTY0YTFhNThjMTFkNGNmZDUzMjFlMzJmNTI3YjRjOWVkNi4uNDFl
ZDM1Y2NhNmU5ZjcxZjI2ZWRkYmQzNWE3OGFlNmFlNjQ3ODA4MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0
cmluZy5oCkBAIC0xNzEsNiArMTcxLDcgQEAgcHVibGljOgogCiAgICAgc2l6ZV90IGZpbmQoQ29k
ZVVuaXRNYXRjaEZ1bmN0aW9uIG1hdGNoRnVuY3Rpb24sIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29u
c3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKG1hdGNoRnVuY3Rpb24sIHN0YXJ0KSA6
IG5vdEZvdW5kOyB9CiAgICAgc2l6ZV90IGZpbmQoY29uc3QgTENoYXIqIHN0cmluZywgdW5zaWdu
ZWQgc3RhcnQgPSAwKSBjb25zdCB7IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmZpbmQoc3RyaW5n
LCBzdGFydCkgOiBub3RGb3VuZDsgfQorICAgIHNpemVfdCBmaW5kKGNvbnN0IGNoYXIqIHN0cmlu
ZywgdW5zaWduZWQgc3RhcnQgPSAwKSBjb25zdCB7IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPmZp
bmQoc3RyaW5nLCBzdGFydCkgOiBub3RGb3VuZDsgfQogCiAgICAgLy8gRmluZCB0aGUgbGFzdCBp
bnN0YW5jZSBvZiBhIHNpbmdsZSBjaGFyYWN0ZXIgb3Igc3RyaW5nLgogICAgIHNpemVfdCByZXZl
cnNlRmluZChVQ2hhciBjaGFyYWN0ZXIsIHVuc2lnbmVkIHN0YXJ0ID0gTWF4TGVuZ3RoKSBjb25z
dCB7IHJldHVybiBtX2ltcGwgPyBtX2ltcGwtPnJldmVyc2VGaW5kKGNoYXJhY3Rlciwgc3RhcnQp
IDogbm90Rm91bmQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9BdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKaW5kZXggYWMwNTA1ZDU0OTY0MjNm
YzVmZGVlNjYzMGViN2Y5NTM4MDIxMzM1OC4uZmY5MzcxMGYyMDk3NDZiYWFlZjlhNjZjNTdjZDAy
NGMwOTUzY2IwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9B
dWRpb1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9BdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTE0Niw3ICsxNDYsNyBAQCBS
ZWZQdHI8QXVkaW9Xb3JrbGV0UHJvY2Vzc29yPiBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZTo6Y3Jl
YXRlUHJvY2Vzc29yKGNvbnN0IFN0cgogICAgIGFyZ3MuYXBwZW5kKGFyZyk7CiAgICAgQVNTRVJU
KCFhcmdzLmhhc092ZXJmbG93ZWQoKSk7CiAKLSAgICBhdXRvKiBvYmplY3QgPSBKU0M6OmNvbnN0
cnVjdChnbG9iYWxPYmplY3QsIGpzQ29uc3RydWN0b3IsIGFyZ3MsICJGYWlsZWQgdG8gY29uc3Ry
dWN0IEF1ZGlvV29ya2xldFByb2Nlc3NvciIpOworICAgIGF1dG8qIG9iamVjdCA9IEpTQzo6Y29u
c3RydWN0KGdsb2JhbE9iamVjdCwganNDb25zdHJ1Y3RvciwgYXJncywgIkZhaWxlZCB0byBjb25z
dHJ1Y3QgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIl9zKTsKICAgICBBU1NFUlQoISFzY29wZS5leGNl
cHRpb24oKSA9PSAhb2JqZWN0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxs
cHRyKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWls
dGluQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRp
bkNvbnN0cnVjdG9yLmgKaW5kZXggZjU1M2MyNWRlNzlmNzMxYzA3OWY1YWUwZmUxZTE4YTBjNzBj
NWQ2NS4uMjRhNDFhYjg3ZmY1OTE5MWI4ZWFiZThmY2UxOGVlNjRiYjI5MGZmMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5o
CkBAIC05OCw3ICs5OCw3IEBAIHRlbXBsYXRlPHR5cGVuYW1lIEpTQ2xhc3M+IGlubGluZSBKU0M6
OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKCiAgICAgICAgIHJldHVy
biB7IH07CiAKICAgICBhdXRvKiBqc09iamVjdCA9IEpTQ2xhc3M6OmNyZWF0ZShzdHJ1Y3R1cmUs
IGNhc3RlZFRoaXMtPmdsb2JhbE9iamVjdCgpKTsKLSAgICBKU0M6OmNhbGwobGV4aWNhbEdsb2Jh
bE9iamVjdCwgY2FzdGVkVGhpcy0+aW5pdGlhbGl6ZUZ1bmN0aW9uKCksIGpzT2JqZWN0LCBKU0M6
OkFyZ0xpc3QoY2FsbEZyYW1lKSwgIlRoaXMgZXJyb3Igc2hvdWxkIG5ldmVyIG9jY3VyOiBpbml0
aWFsaXplIGZ1bmN0aW9uIGlzIGd1YXJhbnRlZWQgdG8gYmUgY2FsbGFibGUuIik7CisgICAgSlND
OjpjYWxsKGxleGljYWxHbG9iYWxPYmplY3QsIGNhc3RlZFRoaXMtPmluaXRpYWxpemVGdW5jdGlv
bigpLCBqc09iamVjdCwgSlNDOjpBcmdMaXN0KGNhbGxGcmFtZSksICJUaGlzIGVycm9yIHNob3Vs
ZCBuZXZlciBvY2N1cjogaW5pdGlhbGl6ZSBmdW5jdGlvbiBpcyBndWFyYW50ZWVkIHRvIGJlIGNh
bGxhYmxlLiJfcyk7CiAgICAgcmV0dXJuIEpTQzo6SlNWYWx1ZTo6ZW5jb2RlKGpzT2JqZWN0KTsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxP
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3Qu
Y3BwCmluZGV4IGIyNjI2ZmViNGEwNTM3MzhlYTdkZWQxODI3Nzg2NWM0ZjgxMzRiNTguLjcxYWIx
MmIxNTBmMGU3MmZkYTk1N2M5OTQxYTA0MDdiYjRiNGVjYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKQEAgLTgyLDcgKzgyLDcgQEAg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihnZXRJbnRlcm5hbFdyaXRhYmxlU3RyZWFtKTsKIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04od2hlblNpZ25hbEFib3J0ZWQpOwogSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihpc0Fib3J0U2lnbmFsKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NR2xv
YmFsT2JqZWN0OjpzX2luZm8gPSB7ICJET01HbG9iYWxPYmplY3QiLCAmSlNHbG9iYWxPYmplY3Q6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiRE9NR2xvYmFsT2JqZWN0Il9zLCAmSlNHbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTUdsb2JhbE9iamVjdCkgfTsKIAogSlNE
T01HbG9iYWxPYmplY3Q6OkpTRE9NR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIFJlZjxET01XcmFwcGVyV29ybGQ+JiYgd29ybGQsIGNvbnN0IEdsb2JhbE9iamVjdE1l
dGhvZFRhYmxlKiBnbG9iYWxPYmplY3RNZXRob2RUYWJsZSkKICAgICA6IEpTR2xvYmFsT2JqZWN0
KHZtLCBzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKaW5kZXggZWQwZTI3NGE3ODQ1Njgw
YTg5NTM5MGQ2MGQxMmNhYjI2NDdhZjVkZS4uNTdkMGI2NDk5ODVmZTA2YzI3NDg1YmE3YmY2YmY3
ODFmMjQyODc4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01X
aW5kb3dCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRv
d0Jhc2UuY3BwCkBAIC02OCw3ICs2OCw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBu
YW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dCYXNlOjpzX2luZm8g
PSB7ICJXaW5kb3ciLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRvd0Jhc2UpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNET01XaW5kb3dCYXNlOjpzX2luZm8gPSB7ICJXaW5kb3ciX3MsICZKU0RPTUdsb2JhbE9i
amVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93QmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5k
b3dCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewogICAgICZzdXBwb3J0c1JpY2hT
b3VyY2VJbmZvLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01X
aW5kb3dQcm9wZXJ0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93UHJvcGVydGllcy5jcHAKaW5kZXggNTEyNWFjOGM5MGRhZDMyM2QwNjYwMmVhMTBkN2VmMGQz
ZDVmNzlkOC4uMjg3YmZiMDY1MGVkNTAyMGNjNjNiZjhkMmU2Nzg5YTdkZWEyNjQ5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1Byb3BlcnRpZXMu
Y3BwCkBAIC00MCw3ICs0MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNw
YWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93UHJvcGVydGllczo6c19pbmZv
ID0geyAiV2luZG93UHJvcGVydGllcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm9wZXJ0aWVzKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTRE9NV2luZG93UHJvcGVydGllczo6c19pbmZvID0geyAiV2luZG93UHJvcGVydGll
cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0RPTVdpbmRvd1Byb3BlcnRpZXMpIH07CiAKIC8vIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3dpbmRvdy1vYmplY3QuaHRtbCNkb20td2luZG93LW5hbWVkaXRlbQog
c3RhdGljIGJvb2wganNET01XaW5kb3dQcm9wZXJ0aWVzR2V0T3duUHJvcGVydHlTbG90TmFtZWRJ
dGVtR2V0dGVyKEpTRE9NV2luZG93UHJvcGVydGllcyogdGhpc09iamVjdCwgRE9NV2luZG93JiB3
aW5kb3csIEpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJ
dGVyYXRvci5jcHAKaW5kZXggYjUwMTkwNTljMTM1ZWU3NmFiZWEzM2E5NTNmMjUwMzNhMTU3ZWQ4
OC4uNmViYWRiNTE4Y2RkMmE5ZjJmNGRjZmI1YTdiMjBhMTQ2MDIyYzI0OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRl
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcApAQCAtNDMsMTEgKzQzLDExIEBAIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKGpzRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
X29uUHJvbWlzZVJlCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZU5leHQsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZUl0ZXJhdG9yUHJvdG90eXBlOjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpD
bGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlOjpzX2luZm8g
PSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJ
dGVyYXRvckJhc2UpIH07Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGVJdGVyYXRvcjo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5m
byBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIkRp
cmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0
b3JCYXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IpIH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpT
Qzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJEaXJl
Y3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiBHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIEpTRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZUl0ZXJhdG9yOjpzdWJzcGFjZUZvckltcGwoVk0mIHZtKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2Jq
ZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXphdGlvbkds
b2JhbE9iamVjdC5jcHAKaW5kZXggNDE0ZjZkM2Q1MzQ2ZDZjMjg0ZWUyYzhhNzg1NDRjNjFjODBh
Mzk3MC4uYTA3YTc1NGI4MTZiYzkzOTliOWI0NmZlZTRiNDMwZjUzNzdmZDQxOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRp
b25HbG9iYWxPYmplY3QuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSURCU2VyaWFsaXph
dGlvbkdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJKU0lEQlNlcmlhbGl6YXRp
b25HbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KSB9OwogCiBpbmxp
bmUgSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0OjpKU0lEQlNlcmlhbGl6YXRpb25HbG9i
YWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERPTVdyYXBwZXJXb3Js
ZD4mJiBpbXBsKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZW1vdGVET01XaW5kb3dCYXNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5j
cHAKaW5kZXggYTRkNzE1ZjcwOGM2MGMwMjg2NTc5Y2YxNTkwMzU3NzAwYjdkNTRhZC4uM2UxMTA0
MGQ5ZTFhZWZjMmIzNWY1ZTVkZDk3NzFjODFkOGEyMDQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNSZW1vdGVET01XaW5kb3dCYXNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwCkBAIC0zMiw3ICsz
Miw3IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTUmVtb3RlRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93Iiwg
JkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNSZW1vdGVET01XaW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUmVt
b3RlRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93Il9zLCAmSlNET01HbG9iYWxPYmpl
Y3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1JlbW90
ZURPTVdpbmRvd0Jhc2UpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTUmVt
b3RlRE9NV2luZG93QmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICBudWxs
cHRyLCAvLyBzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAK
aW5kZXggODNmOTRlMzEwOGY4ZTQ1OGQ2ZDI0N2EzOWYwMmI5NTVhM2E2MWExMS4uMzMwNGI3Yjg4
OGU5Y2EzYjVlNGZlM2UzN2Y4M2FhOWVjYjJiNDQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHAK
QEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2Ug
SlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZTo6c19p
bmZvID0geyAiU2hhZG93UmVhbG1HbG9iYWxTY29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1H
bG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNj
b3BlQmFzZTo6c19pbmZvID0geyAiU2hhZG93UmVhbG1HbG9iYWxTY29wZSJfcywgJkpTRE9NR2xv
YmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0
aG9kVGFibGUgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQmFzZTo6c19nbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNXaW5kb3dQcm94eS5jcHAKaW5kZXggNDY5OWQ4ZWRiNTFmMjNkMTg5
MzdkYjg3YmZhNmI4OGZhYjE0ODBhNi4uMjcyMWI3NzZhZTY3YWI2NmZkMzViZWNjNDFmMTdjMTQ3
ZjJhMzVlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXaW5kb3dQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXaW5kb3dQcm94eS5j
cHAKQEAgLTUwLDcgKzUwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3Bh
Y2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXaW5kb3dQcm94eTo6c19pbmZvID0geyAiSlNX
aW5kb3dQcm94eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXaW5kb3dQcm94eSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dpbmRvd1Byb3h5
OjpzX2luZm8gPSB7ICJKU1dpbmRvd1Byb3h5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2luZG93UHJveHkpIH07CiAKIGlubGluZSBK
U1dpbmRvd1Byb3h5OjpKU1dpbmRvd1Byb3h5KFZNJiB2bSwgU3RydWN0dXJlJiBzdHJ1Y3R1cmUs
IERPTVdyYXBwZXJXb3JsZCYgd29ybGQpCiAgICAgOiBCYXNlKHZtLCAmc3RydWN0dXJlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuY3BwCmluZGV4IDk2Y2RmNmUwMDdiNDIwNjE1ZjRhNTM2NGE3YjlhOGNkZmM2MjMwNDAuLmI0
MWVkM2U4NDI0MDNjZjVhMmQ1MTZmNjMwMWEwMTBmNzYzZjVlMDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKQEAg
LTQzLDcgKzQzLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHVzaW5nIG5hbWVzcGFjZSBKU0M7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAi
V29ya2VyR2xvYmFsU2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiV29y
a2VyR2xvYmFsU2NvcGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlKSB9Owog
CiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6
c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5m
bywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2xldEdsb2Jh
bFNjb3BlQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9i
YWxTY29wZUJhc2UuY3BwCmluZGV4IDA5OGJmNjNiNjBjZDNjNjZkODY2NDVkNWY1NTgyYjA2MzU4
NmZhMTAuLmI2NGMyYWFlYWRhODE0MTcyOWI2OTNhZjExYTU0MWM3NzdmMzQ1NDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrbGV0R2xvYmFsU2NvcGVC
YXNlLmNwcApAQCAtMzksNyArMzksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5h
bWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2U6
OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2Jh
bFNjb3BlQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2U6
OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkpTRE9NR2xvYmFsT2JqZWN0Ojpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xv
YmFsU2NvcGVCYXNlKSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1dvcmts
ZXRHbG9iYWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1
cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDQ2YTBhNWFkMWUxNWFhNmIzZDAxNjUwYWJl
ZjVkMDExM2FmNGQxZGEuLjA3M2UxNThlMzFhNTMyYzJiMzM4NTc4N2E5NzkyYzQzMjMwNjRiNDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtCkBAIC00NTU0LDcgKzQ1NTQsNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgog
ICAgICAgICAkb2JqZWN0LT5HZW5lcmF0ZUhhc2hUYWJsZSgkY2xhc3NOYW1lLCAkaGFzaE5hbWUs
ICRoYXNoU2l6ZSwgXEBoYXNoS2V5cywgXEBoYXNoU3BlY2lhbHMsIFxAaGFzaFZhbHVlMSwgXEBo
YXNoVmFsdWUyLCBcJWNvbmRpdGlvbmFscywgXCVyZWFkV3JpdGVDb25kaXRpb25hbHMsICRqdXN0
R2VuZXJhdGVWYWx1ZUFycmF5KTsKIAogICAgICAgICBteSAkcHJvdG90eXBlSGFzaFRhYmxlID0g
JGp1c3RHZW5lcmF0ZVZhbHVlQXJyYXkgPyAibnVsbHB0ciIgOiAiJiR7Y2xhc3NOYW1lfVByb3Rv
dHlwZVRhYmxlIjsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8g
JHtjbGFzc05hbWV9UHJvdG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFt
ZX1cIiwgJkJhc2U6OnNfaW5mbywgJHtwcm90b3R5cGVIYXNoVGFibGV9LCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxuIik7CisgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlw
ZTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5m
bywgJHtwcm90b3R5cGVIYXNoVGFibGV9LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7
Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxuIik7CiAKICAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJ2b2lkICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKVxu
Iik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7CkBAIC00NjQ4LDcgKzQ2NDgs
NyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIH0KIAogICAgICMgLSBJbml0aWFs
aXplIHN0YXRpYyBDbGFzc0luZm8gb2JqZWN0Ci0gICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25z
dCBDbGFzc0luZm8gJGNsYXNzTmFtZSIgLiAiOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJm
YWNlTmFtZX1cIiwgJkJhc2U6OnNfaW5mbywgIik7CisgICAgcHVzaChAaW1wbENvbnRlbnQsICJj
b25zdCBDbGFzc0luZm8gJGNsYXNzTmFtZSIgLiAiOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50
ZXJmYWNlTmFtZX1cIl9zLCAmQmFzZTo6c19pbmZvLCAiKTsKIAogICAgIGlmICgkbnVtSW5zdGFu
Y2VQcm9wZXJ0aWVzID4gMCkgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiYke2NsYXNz
TmFtZX1UYWJsZSIpOwpAQCAtNjgzMCwxMSArNjgzMCwxMSBAQCB1c2luZyAke2l0ZXJhdG9yUHJv
dG90eXBlTmFtZX0gPSBKU0RPTUl0ZXJhdG9yUHJvdG90eXBlPCR7Y2xhc3NOYW1lfSwgJHtpdGVy
YXRvcgogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9
TmV4dCwgJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9OjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29u
c3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9QmFzZTo6c19pbmZvID0geyAiJHt2aXNp
YmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7aXRlcmF0b3JOYW1lfUJhc2UpIH07Ci1jb25zdCBK
U0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yTmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVy
ZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yTmFtZX0pIH07Citjb25zdCBKU0M6OkNsYXNzSW5m
byAke2l0ZXJhdG9yTmFtZX1CYXNlOjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1l
fSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRSgke2l0ZXJhdG9yTmFtZX1CYXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8g
JHtpdGVyYXRvck5hbWV9OjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVy
YXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRSgke2l0ZXJhdG9yTmFtZX0pIH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJ
bmZvICR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJm
YWNlTmFtZX0gSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKCR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfSkgfTsKK2NvbnN0IEpTQzo6
Q2xhc3NJbmZvICR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxl
SW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9KSB9OwogCiBF
TkQKIApAQCAtNzgzMSw3ICs3ODMxLDcgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJN
ZXRob2RzCiAgICAgICAgICRsZWFzdENvbnN0cnVjdG9yTGVuZ3RoID0gMDsKICAgICB9CiAKLSAg
ICBwdXNoKEAkb3V0cHV0QXJyYXksICJ0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyAke2NvbnN0
cnVjdG9yQ2xhc3NOYW1lfTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtj
b25zdHJ1Y3RvckNsYXNzTmFtZX0pIH07XG5cbiIpOworICAgIHB1c2goQCRvdXRwdXRBcnJheSwg
InRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvICR7Y29uc3RydWN0b3JDbGFzc05hbWV9OjpzX2lu
Zm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1cIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y29uc3RydWN0b3JDbGFzc05hbWV9
KSB9O1xuXG4iKTsKIAogICAgICMgSWYgdGhlIGludGVyZmFjZSBoYXMgYSBwYXJlbnQgaW50ZXJm
YWNlIHdoaWNoIGRvZXMgbm90IGhhdmUgW0xlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0XSwgdGhlbiB1
c2UgaXRzIGludGVyZmFjZSBvYmplY3QgYXMgcHJvdG90eXBlLAogICAgICMgb3RoZXJ3aXNlIHVz
ZSBGdW5jdGlvblByb3RvdHlwZTogaHR0cDovL2hleWNhbS5naXRodWIuaW8vd2ViaWRsLyNpbnRl
cmZhY2Utb2JqZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNET01XaW5kb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcAppbmRleCA3Nzg3ZTFkZjA3ZDhiNTM1NWE3ODgyNThj
ODg4Y2Y1MDU5MjM4NTgyLi4wZmVhMDI1OTU2YjAxNTk5ZTdiNTYwMzg1NDM4NjEzNmEyYTAxMTEz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNE
T01XaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU0RPTVdpbmRvdy5jcHAKQEAgLTE0Nyw3ICsxNDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNET01XaW5kb3dUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUgSlNET01XaW5kb3dUYWJsZSA9IHsgMTIsIDMxLCB0cnVlLCBKU0RPTVdpbmRvdzo6
aW5mbygpLCBKU0RPTVdpbmRvd1RhYmxlVmFsdWVzLCBKU0RPTVdpbmRvd1RhYmxlSW5kZXggfTsK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkRPTVdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNET01XaW5kb3dET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTc3LDcgKzE3Nyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0RPTVdpbmRvd1By
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RP
TVdpbmRvd1Byb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU0RPTVdpbmRvdzo6aW5mbygp
LCBKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlVmFsdWVzLCBKU0RPTVdpbmRvd1Byb3RvdHlwZVRh
YmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3RvdHlwZTo6c19pbmZv
ID0geyAiRE9NV2luZG93IiwgJkJhc2U6OnNfaW5mbywgJkpTRE9NV2luZG93UHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRPTVdp
bmRvdyJfcywgJkJhc2U6OnNfaW5mbywgJkpTRE9NV2luZG93UHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNET01XaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE4Niw3
ICsxODYsNyBAQCB2b2lkIEpTRE9NV2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvdzo6c19pbmZvID0geyAiRE9NV2luZG93IiwgJkJhc2U6
OnNfaW5mbywgJkpTRE9NV2luZG93VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNET01XaW5kb3cpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3c6OnNfaW5mbyA9IHsg
IkRPTVdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgJkpTRE9NV2luZG93VGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3cpIH07CiAKIEpTRE9NV2luZG93OjpKU0RP
TVdpbmRvdyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV2luZG93PiYmIGlt
cGwsIEpTV2luZG93UHJveHkqIHByb3h5KQogICAgIDogSlNFdmVudFRhcmdldCh2bSwgc3RydWN0
dXJlLCBXVEZNb3ZlKGltcGwpLCBwcm94eSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlLmNwcAppbmRleCAyZGNiYTlmNjQwZmExMDA4NGU4Y2I1ZGEwYjgwNTNmNWQx
Yjg4OTk5Li45Mjg2OGQ1Nzc3NTZhY2M3MDRiYzIyZTgxNzIyZmJiMmUxZTBiODU2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRX
b3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03NCw3ICs3NCw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVW
YWx1ZXMsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA0
LDcgKzEwNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSA9IHsg
MSwgMSwgdHJ1ZSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU0RlZGlj
YXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVk
aWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTMsNyArMTEzLDcgQEAgdm9pZCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNl
OjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTRGVkaWNhdGVkV29y
a2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGlj
YXRlZFdvcmtlckdsb2JhbFNjb3BlKSB9OwogCiBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3Bl
OjpKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFJlZjxEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZT4mJiBpbXBsKQogICAgIDogSlNXb3Jr
ZXJHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIu
Y3BwCmluZGV4IGU1ZmMzNWM4YWU5YzMxYjBkMTg3MjY2ZmYxOTdiOTMwMDAzNjI3MmIuLjQ2OWEx
MjFmMjQ5NWU2YjQyOGFlZWY2MjA4OGFkMDVmZTU0Y2E3MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5jcHAK
QEAgLTkxLDcgKzkxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNF
eHBvc2VkU3RhclByb3RvdHlwZSwgSlNFeHBvc2VkU3RhclByb3RvdHkKIAogdXNpbmcgSlNFeHBv
c2VkU3RhckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8
SlNFeHBvc2VkU3Rhcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0
YXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhckRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNFeHBvc2VkU3RhckRPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTRXhwb3NlZFN0YXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0K
ICAgICB7ICJvcGVyYXRpb25KdXN0Rm9yV29ya2VyQ29udGV4dHMiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzRXhwb3NlZFN0YXJQcm90
b3R5cGVGdW5jdGlvbl9vcGVyYXRpb25KdXN0Rm9yV29ya2VyQ29udGV4dHMpLCAoaW50cHRyX3Qp
ICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6
c19pbmZvID0geyAiRXhwb3NlZFN0YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNFeHBvc2VkU3RhclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU0V4cG9zZWRTdGFyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDMsNyArMTQzLDcgQEAgdm9pZCBKU0V4
cG9zZWRTdGFyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0V4
cG9zZWRTdGFyOjpzX2luZm8gPSB7ICJFeHBvc2VkU3RhciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyOjpzX2luZm8gPSB7ICJFeHBvc2VkU3RhciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9z
ZWRTdGFyKSB9OwogCiBKU0V4cG9zZWRTdGFyOjpKU0V4cG9zZWRTdGFyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8RXhwb3NlZFN0YXI+
JiYgaW1wbCkKICAgICA6IEpTRXZlbnRUYXJnZXQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcApp
bmRleCBlYjg3ZDZjODdmYjVlMDhkMzBhODg3ZTc3MzM1MWRhZTZmNTg4YTc0Li5mZjExNDg1YzVl
NjhkYzU3YmFiZjJhZWE0YzY1NjU1OTA0MzE3YWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRU
b1dvcmtlckFuZFdpbmRvdy5jcHAKQEAgLTE1MSw3ICsxNTEsNyBAQCB0ZW1wbGF0ZTw+IEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvd0RPTQogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNFeHBvc2VkVG9Xb3JrZXJB
bmRXaW5kb3dET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5k
b3dET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJB
bmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNzYsNyArMTc2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAiZG9Tb21ldGhpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90
eXBlRnVuY3Rpb25fZG9Tb21ldGhpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25z
dCBDbGFzc0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dv
cmtlckFuZFdpbmRvd1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvd1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTg1LDcgKzE4NSw3
IEBAIHZvaWQgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93OjpzX2luZm8g
PSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93KSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93OjpzX2luZm8gPSB7
ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cpIH07
CiAKIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93OjpKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRv
dyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPEV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PEV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAKaW5kZXgg
N2E1NmE3OWI2YmExZmY5ZTU2YjRhMjcxYzIyMThkNGQ0ZjY4MjZhNS4uMzViNjM4ZWY2NGQ0MTQz
YmE3MjQ5MWY5NjU2MDMwMDAwZTEzY2Q0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEds
b2JhbFNjb3BlLmNwcApAQCAtNzMsNyArNzMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZSBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMs
IHRydWUsIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OmluZm8oKSwgSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlVGFibGVJbmRl
eCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1BhaW50V29ya2xldEdsb2Jh
bFNjb3BlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwMyw3ICsxMDMs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBK
U1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OmluZm8oKSwgSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNQ
YWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZTo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6
c19pbmZvLCAmSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZTo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xv
YmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZSkgfTsKIAogSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZTo6SlNQYWludFdvcmtsZXRHbG9iYWxT
Y29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8UGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGU+JiYgaW1wbCkKICAgICA6IEpTV29ya2xldEdsb2JhbFNjb3BlKHZtLCBzdHJ1Y3R1cmUs
IFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNw
cAppbmRleCA5OTg2NWQxZTBiZmJiNDU5ZWEzZDJiMmYxNzBlMDQ4MGYwYTFlODM0Li5mZWFmMTc5
MWE4YjVlMGNjMmQ3NjdmYzExMmRmZmE1ZTcwMWU2YzBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKQEAgLTczLDcgKzczLDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9
OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFi
bGUgPSB7IDIsIDMsIHRydWUsIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpT
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpTU2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMDMsNyArMTAzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGUgPSB7IDEsIDEsIHRydWUsIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCks
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZv
IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckds
b2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEyLDcgKzExMiw3
IEBAIHZvaWQgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8g
PSB7ICJTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIl9zLCAm
QmFzZTo6c19pbmZvLCAmSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSkgfTsKIAogSlNT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlKFZNJiB2
bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU+JiYg
aW1wbCkKICAgICA6IEpTV29ya2VyR2xvYmFsU2NvcGUodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5jcHAKaW5kZXggODkxYTIz
MmRhOWU3ZWJkYjlmMzMxY2U5MjE3ZGRkMGJjMzc1OTNhYS4uYjU5OTQyNTdlMjgwZDRmNDBkMjk3
MDMyYTVhOWRhOWMwYjgyMTkxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29w
ZS5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhh
c2hUYWJsZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNT
aGFkb3dSZWFsbUdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRh
YmxlVmFsdWVzLCBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiU2hhZG93UmVhbG1HbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNj
b3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYWRv
d1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhZG93UmVhbG1H
bG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZURPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC05Miw3ICs5Miw3IEBAIHRlbXBsYXRlPD4gdm9pZCBK
U1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRp
ZXMoVk0mCiAgICAgcHV0RGlyZWN0KHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5wcm90b3R5cGUsIGds
b2JhbE9iamVjdC5nZXRQcm90b3R5cGVEaXJlY3Qodm0pLCBKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtIHwgSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NoYWRv
d1JlYWxtR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAm
QmFzZTo6c19pbmZvLCAmSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6c19pbmZvID0geyAiU2hhZG93UmVhbG1H
bG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29w
ZSkgfTsKIAogSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlOjpKU1NoYWRvd1JlYWxtR2xvYmFsU2Nv
cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFNoYWRvd1JlYWxtR2xvYmFsU2Nv
cGU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPih2
bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xv
YmFsU2NvcGUuY3BwCmluZGV4IGEwMjQ5NDA2MmRkN2RkNjIzMmQxZWJhNDAyNTZiMzBkYTM1MGNi
MGMuLjdhMzVlNDliNDQwMmY4NDM3ZDZmY2JjNmJhMGFiNWQxMDZmOTNiYWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckds
b2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVl
c1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjppbmZv
KCksIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNTaGFyZWRXb3JrZXJH
bG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhcmVkV29y
a2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsK
K3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRX
b3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMDQsNyArMTA0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRp
YyBjb25zdCBIYXNoVGFibGUgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
ID0geyAxLCAxLCB0cnVlLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNTaGFyZWRXb3JrZXJH
bG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9i
YWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2Jh
bFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSJfcywg
JkJhc2U6OnNfaW5mbywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExMyw3ICsxMTMsNyBAQCB2b2lkIEpTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckds
b2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3Bl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9
IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNTaGFyZWRX
b3JrZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGU6OkpT
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVm
PFNoYXJlZFdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtlckdsb2JhbFNj
b3BlKHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNw
cAppbmRleCAxYjhmNjFhNmZhMGI1ZjA5ODhiNDFkNThiMDFhNTJjNzY4MzRiMWUyLi5kNjQ5ZjFk
MzMwMmYyYTg0ZjM4NDBhMjYyODQ1YjdmNWQ3YTIxYTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9u
cy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFS
QUJMRShKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZSwgSlNUZXN0Q0VSZWFjdGlvbgogCiB1c2lu
ZyBKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0Q0VSZWFjdGlvbnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q0VS
ZWFjdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0Q0VSZWFjdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENFUmVhY3Rpb25zRE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTE0Myw3ICsxNDMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJt
ZXRob2RXaXRoQ0VSZWFjdGlvbnNOb3ROZWVkZWQiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdENFUmVhY3Rpb25zUHJvdG90eXBl
RnVuY3Rpb25fbWV0aG9kV2l0aENFUmVhY3Rpb25zTm90TmVlZGVkKSwgKGludHB0cl90KSAoMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0Q0VSZWFjdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0Q0VSZWFjdGlvbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE1
Miw3ICsxNTIsNyBAQCB2b2lkIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uczo6c19pbmZvID0geyAiVGVz
dENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
RVJlYWN0aW9uczo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25z
KSB9OwogCiBKU1Rlc3RDRVJlYWN0aW9uczo6SlNUZXN0Q0VSZWFjdGlvbnMoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q0VSZWFj
dGlvbnM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0Q0VSZWFjdGlvbnM+KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXIuY3BwCmluZGV4IGQwMzNlZjgzZjkxYzI5NDk3NmMxZmM3ZDlk
ZjU0MGUzNTE0ZThkZDUuLjQxMGY2MTkyNjE3NjU2ZDI3YzNhZTk2NGY5MmExMDIzMjRjZDk0Njcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5jcHAKQEAgLTk1
LDcgKzk1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZSwgSlNUZXMKIAogdXNpbmcgSlNUZXN0Q0VSZWFj
dGlvbnNTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0
cnVjdGFibGU8SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcj47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3Ry
aW5naWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dENFUmVhY3Rpb25zU3RyaW5naWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllckRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q0VSZWFjdGlvbnNTdHJp
bmdpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjIsNyArMTIy
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90
KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDRVJl
YWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTMxLDcgKzEzMSw3IEBAIHZvaWQgSlNUZXN0Q0VSZWFj
dGlvbnNTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rp
b25zU3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcjo6c19pbmZvID0geyAiVGVzdENFUmVh
Y3Rpb25zU3RyaW5naWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcikgfTsKIAogSlNU
ZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcjo6SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcihT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuY3BwCmluZGV4IDg3NzNmNDE0OTE2YjViZjBl
ZmNhNWNhYmQyZjk2YTljYzljMDY5YWUuLjcxNmMwN2VkZmFkNDUxZmExOWRmZjNmYzg5YmI0OTk5
NmIyOWY1OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5jcHAKQEAgLTEyNiw3ICsxMjYsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q2FsbFRyYWNlckNvbnN0cnVjdG9yVGFi
bGVWYWx1ZXNbXSA9CiAKIHN0YXRpY19hc3NlcnQoVGVzdENhbGxUcmFjZXI6OnRlc3RDb25zdFZh
bHVlID09IGZhbHNlLCAidGVzdENvbnN0VmFsdWUgaW4gVGVzdENhbGxUcmFjZXIgZG9lcyBub3Qg
bWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRy
YWNlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDYWxsVHJhY2VyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RDYWxsVHJhY2VyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q2Fs
bFRyYWNlclByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInRlc3RDb25zdFZhbHVlIiwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q29uc3RhbnRJbnRlZ2VyLCBO
b0ludHJpbnNpYywgeyAobG9uZyBsb25nKShmYWxzZSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2Vy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxU
cmFjZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFj
ZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgSlNUZXN0Q2FsbFRy
YWNlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q2Fs
bFRyYWNlcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXIpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbFRyYWNlcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFj
ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q2FsbFRyYWNlcikgfTsKIAogSlNUZXN0Q2FsbFRyYWNlcjo6SlNUZXN0Q2FsbFRy
YWNlcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3RDYWxsVHJhY2VyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENh
bGxUcmFjZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrSW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAKaW5kZXggY2YyN2M2NjM5NzQ1N2E0NDY1Mzkw
NDk4NTI0MmYwZWQwZDM2Yzg3OC4uNDhiNGMyZjc4MTdhNzQ3M2MwY2EzNTU0YWQ2YzQ4ZWY4ZjZm
MjNlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENhbGxiYWNrSW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2UuY3BwCkBAIC0xNTMsNyAr
MTUzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxiYWNrSW50ZXJm
YWNlQ29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0KIHN0YXRpY19hc3NlcnQoVGVzdENhbGxiYWNr
SW50ZXJmYWNlOjpDT05TVEFOVDEgPT0gMSwgIkNPTlNUQU5UMSBpbiBUZXN0Q2FsbGJhY2tJbnRl
cmZhY2UgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIHN0YXRpY19hc3NlcnQoVGVz
dENhbGxiYWNrSW50ZXJmYWNlOjpDT05TVEFOVDIgPT0gMiwgIkNPTlNUQU5UMiBpbiBUZXN0Q2Fs
bGJhY2tJbnRlcmZhY2UgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdENhbGxiYWNrSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsYmFja0ludGVyZmFj
ZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2Fs
bGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxiYWNrSW50
ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RDYWxsYmFja0ludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVp
bHRpbkNvbnN0cnVjdG9yLmNwcAppbmRleCBhMzJiMmQ4Yjg5NTRhYTE2ZDI0YWVhZTlmODBiNDQ0
ODExOTZlMGVlLi44MjExMGQzNDY2ODlhNTNkNTBjMDI3ZDUzNzJkOTA1M2YyMmMwYzkzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5j
cHAKQEAgLTg0LDcgKzg0LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGUKIAogdXNpbmcgSlNU
ZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvciA9IEpTRE9NQnVp
bHRpbkNvbnN0cnVjdG9yPEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPjsKIAot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNv
bnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9y
KSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVp
bHRpbkNvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29u
c3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0
aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTMs
NyArMTEzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENsYXNzV2l0aEpT
QnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZh
bHVlRnVuYz4oanNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JDb25zdHJ1Y3Rvciks
IChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25z
dHJ1Y3RvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xMjIsNyArMTIyLDcgQEAgdm9pZCBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFz
c1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvcikgfTsKIAogSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3I6OkpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yKFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNw
cAppbmRleCAwNDZmNzNjNjRlODk5ODJiNDhmYjFiN2M1MjY5NDNhZTMxNDA5NTlmLi5kYWI1Y2Uy
MTI5ZWIyY2Y4ZDA3ZmE0NTkwZWUyMzJlMzljOTU5ZDg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXMuY3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgc3RhdGljX2Fzc2VydChU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6Q09OU1RfSU1QTCA9PSAyLCAiQ09OU1RfSU1QTCBpbiBU
ZXN0Q29uZGkKIHN0YXRpY19hc3NlcnQoVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OlBBUlRJQUxf
TUlYSU5fQ09OU1RBTlRfRlJPTV9QQVJUSUFMID09IDUsICJQQVJUSUFMX01JWElOX0NPTlNUQU5U
X0ZST01fUEFSVElBTCBpbiBUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyBkb2VzIG5vdCBtYXRjaCB2
YWx1ZSBmcm9tIElETCIpOwogI2VuZGlmCiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
Q29uZGl0aW9uYWxJbmNsdWRlc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0zMDMsNyArMzAzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1
ZGVzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q29uZGl0aW9uYWxJ
bmNsdWRlc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtNDUwLDcgKzQ1
MCw3IEBAIHZvaWQgSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6c19pbmZv
ID0geyAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6c19pbmZvID0geyAi
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcykgfTsKIAog
SlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlczo6SlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyhTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RDb25kaXRpb25hbEluY2x1ZGVzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENv
bmRpdGlvbmFsSW5jbHVkZXM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwCmluZGV4IGM1
YzdiNmJhOTgyZDI0OWQ4OWJiNzNlOTYyOTcxZDljZDRmNjQ4YmYuLmRhNjFkNjkzNjc5Mzk3ODQx
YTAzMDUyZDEyNGRlMTExNTI3MDgyNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9u
YWxseVJlYWRXcml0ZS5jcHAKQEAgLTEzOSw3ICsxMzksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlVmFsdWVzW10gPQogfTsK
IAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlVGFi
bGUgPSB7IDIsIDcsIHRydWUsIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OmluZm8oKSwg
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlVmFsdWVzLCBKU1Rlc3RDb25kaXRpb25h
bGx5UmVhZFdyaXRlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
Q29uZGl0aW9uYWxseVJlYWRXcml0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE4MSw3ICsxODEsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogICAgIHsgInNldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJp
YnV0ZVByb21pc2UiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6Q3VzdG9tQWNjZXNzb3IpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVf
c2V0dGluZ3NDb25kaXRpb25hbGx5UmVhZFdyaXRlQXR0cmlidXRlUHJvbWlzZSksIChpbnRwdHJf
dCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KHNldEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGVfc2V0dGluZ3NDb25kaXRpb25hbGx5UmVhZFdyaXRlQXR0cmli
dXRlUHJvbWlzZSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFs
bHlSZWFkV3JpdGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjMzLDcgKzIzMyw3IEBAIHZvaWQgSlNUZXN0
Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZTo6c19pbmZvID0geyAiVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGUiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRp
dGlvbmFsbHlSZWFkV3JpdGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZTo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiX3MsICZC
YXNlOjpzX2luZm8sICZKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSkgfTsKIAog
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZTo6SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmNwcAppbmRleCA3M2U0NDQzYzFlMDY3MGQxOTBmMjQy
Yjk5Njc4NGY0MDlmN2JmNzhlLi44YjljMzQ1ZTQ1ZTM3YmZlZTlmYjQ1ZTVhNWNkM2ZjYTU2NmE2
MjEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RE9NSklULmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RE9NSklULmNwcApAQCAtNTAxLDcgKzUwMSw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERPTUpJVFByb3RvdHlwZSwgSlNUZXN0RE9NSklU
UHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yID0gSlNET01Db25z
dHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RE9NSklUPjsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
T01KSVQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3RET01KSVRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNTY0LDcgKzU2
NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RET01KSVRQcm90b3R5cGVU
YWJsZVZhbHVlc1tdID0KICAgICB7ICJnZXRFbGVtZW50c0J5TmFtZSIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiB8IEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRPTUpJVEZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RET01KSVRQcm90b3R5cGVGdW5jdGlvbl9n
ZXRFbGVtZW50c0J5TmFtZSksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8Y29uc3QgSlNDOjpET01K
SVQ6OlNpZ25hdHVyZSo+KCZET01KSVRTaWduYXR1cmVGb3JUZXN0RE9NSklUR2V0RWxlbWVudHNC
eU5hbWUpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RET01KSVRQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVFByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RET01KSVRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RE9NSklUUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERPTUpJVFByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtNTczLDcgKzU3Myw3IEBAIHZvaWQgSlNUZXN0RE9N
SklUUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RET01K
SVQ6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVCkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RET01KSVQ6OnNfaW5mbyA9IHsgIlRlc3RET01KSVQiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RE9NSklUKSB9Owog
CiBKU1Rlc3RET01KSVQ6OkpTVGVzdERPTUpJVChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RET01KSVQ+JiYgaW1wbCkKICAgICA6
IEpTTm9kZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09OLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3REZWZhdWx0VG9KU09OLmNwcAppbmRleCBlYTVhMjU0ZGE4MWVjNGQ0ZWIyZGRmNTI1YjYyYThi
MGNmNDNjZGRhLi4zZDNjNDNjODU4OTYwYzlkN2ZmODQyYzk0Y2NkYWYyNmQ1Y2I2YjNlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uY3BwCkBAIC0xNDQsNyArMTQ0LDcgQEAgU1RBVElDX0FT
U0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZSwg
SlNUZXN0RGVmYXVsdFQKIAogdXNpbmcgSlNUZXN0RGVmYXVsdFRvSlNPTkRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05E
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1
bHRUb0pTT05ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RGVmYXVsdFRvSlNPTkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0RGVmYXVsdFRvSlNPTkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xOTAsNyArMTkwLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERlZmF1
bHRUb0pTT05Qcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b0pTT04iLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJp
bnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERl
ZmF1bHRUb0pTT05Qcm90b3R5cGVGdW5jdGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdERlZmF1bHRUb0pTT04iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC0yMTYsNyArMjE2LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OOjpz
X2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRv
SlNPTiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWZhdWx0VG9KU09OKSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OOjpKU1Rl
c3REZWZhdWx0VG9KU09OKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT04+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0RGVmYXVsdFRvSlNPTj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVy
ZWRCeUV4cG9zZWQuY3BwCmluZGV4IDk1ODU3NGJjNmQ4NzA2OTk0OTdhMDE5ZDYyODQ1MjU3N2I2
YTM4MzEuLmNkMzY3NWM2Yzc5YjE5NzM0ZTlmOGZhOTMwMDQyYmZhZGFhODMyZjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuY3Bw
CkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwCiAKIHVzaW5nIEpTVGVz
dERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yID0gSlNET01Db25z
dHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZp
bHRlcmVkQnlFeHBvc2VkRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9K
U09ORmlsdGVyZWRCeUV4cG9zZWQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVk
QnlFeHBvc2VkRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RE
ZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGVUYWJsZVZhCiAgICAg
eyAidG9KU09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2
ZUZ1bmN0aW9uPihqc1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGVG
dW5jdGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09O
RmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVm
YXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVm
YXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5
RXhwb3NlZFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRC
eUV4cG9zZWRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0OSw3ICsx
NDksNyBAQCB2b2lkIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZp
bHRlcmVkQnlFeHBvc2VkOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlF
eHBvc2VkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkOjpzX2luZm8gPSB7ICJU
ZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZCkgfTsKIAogSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2Vk
OjpKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQoU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVmYXVsdFRvSlNP
TkZpbHRlcmVkQnlFeHBvc2VkPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlZmF1
bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlLmNwcAppbmRleCAzMjNlZjA4MmMxYmM3ZjE1ZjZlMmQ2ZDEyYzg1YzUy
NjAzZTIxZDRlLi5kZjlmMmQ4ZGY0NmVmYmUwY2JlMmY5YTFkNmE3YmI4MjJkZDBmNzY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0
YW5jZS5jcHAKQEAgLTgyLDcgKzgyLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hB
UkFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3QKIAogdXNp
bmcgSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3RvciA9
IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVm
YXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5k
aXJlY3RJbmhlcml0YW5jZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZURP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDUsNyArMTA1LDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVy
aXRhbmNlUHJvdG90eXBlVGFibGUKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkg
c3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9K
U09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2U6OnNfaW5mbyA9
IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNP
TkluZGlyZWN0SW5oZXJpdGFuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTkluZGlyZWN0SW5oZXJpdGFuY2U6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5k
aXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSkg
fTsKIAogSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2U6OkpTVGVzdERlZmF1
bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdElu
aGVyaXRhbmNlPiYmIGltcGwpCiAgICAgOiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXQuY3BwCmluZGV4IGRlOTdkMjNkZGM1ODNjMDlhMzY0NzdiNWZlN2Iy
MDBlMDRhZGU1ZmUuLjM0OTQ2NTg4NjVkNDEzNGE2NWRhMGRkZjVlM2ViN2ZhNTA0MDE2OWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmNwcApAQCAtMTA5LDcgKzEw
OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0UHJvdG90eXBlLCBKU1Rlc3RECiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM0LDcgKzEzNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogICAgIHsgInRvSlNPTiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGVG
dW5jdGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQzLDcgKzE0Myw3IEBAIHZvaWQg
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0OjpzX2luZm8gPSB7ICJUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0OjpzX2luZm8gPSB7ICJUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQpIH07CiAKIEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0OjpKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdD4mJiBpbXBsKQogICAgIDogSlNUZXN0RGVmYXVsdFRvSlNPTihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdEZpbmFsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmNwcAppbmRleCA3ODNjOWRiOTRkMzYzZTFj
MTFhOTg2ZjNmODM4YTgwNmVmNGY3YWQ2Li41ODQzMTdjZjdkYTI2MWY0MzY1OWJlMDVjYTJhZjJh
NGJlZjllYjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
RmluYWwuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0Vf
U0hBUkFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZSwgSlMKIAog
dXNpbmcgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbERPTUNvbnN0cnVjdG9yID0gSlNE
T01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWxET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
RmluYWxET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
RmluYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbERPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbERPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzcsNyArMTM3LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90
b3R5cGVUYWJsZVZhbHVlc1sKICAgICB7ICJ0b0pTT04iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxQcm90b3R5cGVGdW5jdGlvbl90b0pTT04pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDYsNyArMTQ2LDcgQEAgdm9pZCBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsOjpzX2luZm8gPSB7
ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
OjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsKSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
OjpKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWw+JiYgaW1wbCkKICAgICA6IEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50
aGV0aWNBdHRyaWJ1dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuY3BwCmluZGV4IDhl
NmZlMzkxYmUxMDBmMzYyZGYzMjBmZjk2NTA4NDIxNDg2OWQ2NTguLjhkODA4ZDBhNDk2ODNjN2Rj
ZWIzNmFmNTU0OWJjZWU2YmVmMTcwOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5jcHAKQEAgLTkwLDcgKzkwLDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RGVsZWdhdGVUb1No
YXJlZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3QKIAogdXNpbmcgSlNUZXN0RGVsZWdhdGVUb1NoYXJl
ZFN5bnRoZXRpY0F0dHJpYnV0ZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZT47CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVU
b1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZURPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGVQcm90b3R5cGVUYWIKICAgICB7ICJwcm9wZXJ0eTUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50
aGV0aWNBdHRyaWJ1dGVfc2hhcmVkQXR0cmlidXRlMiksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KHNldEpTVGVzdERlbGVnYXRlVG9TaGFyZWRT
eW50aGV0aWNBdHRyaWJ1dGVfc2hhcmVkQXR0cmlidXRlMikgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgSlNUZXN0RGVsZWdh
dGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTo6
c19pbmZvID0geyAiVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZSkgfTsKIAogSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0
dHJpYnV0ZTo6SlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZShTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5j
cHAKaW5kZXggNWM1MDQwY2U2M2VjYTJmZjA5M2JhOTIwZThmNGQzNzMxMzUzOTAwMi4uZDNjY2Y2
MDBjZDVkOGFhOGY0N2M2YmU0Y2I0ZWE0OTY4ZjA1OTRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWlu
U2VjdXJpdHkuY3BwCkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdERvbWFpblNlY3VyaXR5VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlIEpTVGVzdERvbWFpblNlY3VyaXR5VGFibGUgPSB7IDEsIDEsIHRydWUsIEpT
VGVzdERvbWFpblNlY3VyaXR5OjppbmZvKCksIEpTVGVzdERvbWFpblNlY3VyaXR5VGFibGVWYWx1
ZXMsIEpTVGVzdERvbWFpblNlY3VyaXR5VGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdERvbWFpblNlY3VyaXR5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5Il9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3REb21haW5TZWN1
cml0eURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNDEsNyArMTQxLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAib3ZlcmxvYWRlZE1ldGhvZCIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RG9tYWlu
U2VjdXJpdHlQcm90b3R5cGVGdW5jdGlvbl9vdmVybG9hZGVkTWV0aG9kKSwgKGludHB0cl90KSAo
MSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0RG9tYWluU2VjdXJpdHkiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5UHJv
dG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0RG9tYWluU2VjdXJpdHkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHlQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RG9tYWluU2VjdXJpdHlQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE1MCw3ICsxNTAsNyBAQCB2b2lkIEpTVGVzdERvbWFpblNl
Y3VyaXR5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RE
b21haW5TZWN1cml0eTo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5IiwgJkJhc2U6OnNf
aW5mbywgJkpTVGVzdERvbWFpblNlY3VyaXR5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHkpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RG9t
YWluU2VjdXJpdHk6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSJfcywgJkJhc2U6OnNf
aW5mbywgJkpTVGVzdERvbWFpblNlY3VyaXR5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHkpIH07CiAKIEpTVGVzdERvbWFpblNlY3VyaXR5OjpK
U1Rlc3REb21haW5TZWN1cml0eShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REb21haW5TZWN1cml0eT4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3REb21haW5TZWN1cml0eT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3Qs
IFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5jcHAKaW5kZXgg
OWYyNjg4OTc4NDQxNDRlMGQxOGQ1OWMxMmQyZmNmOThmMjA2YTJmYi4uMDVjYTI5OGJiNjQ5ZWU2
ZDU1ZDAyMWI1NGVlNzRiZTdjMDMzMjllNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0
aW5nLmNwcApAQCAtMTM1LDcgKzEzNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3RFbmFibGVkQnlTZXR0aW5nQ29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0KIAogc3RhdGlj
X2Fzc2VydChUZXN0RW5hYmxlZEJ5U2V0dGluZzo6ZW5hYmxlZEJ5U2V0dGluZ0NvbnN0YW50ID09
IDAsICJlbmFibGVkQnlTZXR0aW5nQ29uc3RhbnQgaW4gVGVzdEVuYWJsZWRCeVNldHRpbmcgZG9l
cyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
RW5hYmxlZEJ5U2V0dGluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlT
ZXR0aW5nRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RFbmFi
bGVkQnlTZXR0aW5nRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE4Myw3
ICsxODMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0
dGluZ1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImVuYWJsZWRCeVNldHRpbmdDb25z
dGFudCIsIEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50
ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZykoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RF
bmFibGVkQnlTZXR0aW5nIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RFbmFibGVkQnlTZXR0aW5nIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMjM2LDcgKzIzNiw3IEBAIHZvaWQgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1By
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZzo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciLCAmQmFzZTo6c19pbmZv
LCAmSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmcpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5h
YmxlZEJ5U2V0dGluZzo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciX3MsICZCYXNl
OjpzX2luZm8sICZKU1Rlc3RFbmFibGVkQnlTZXR0aW5nVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZykgfTsKIAogSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZzo6SlNUZXN0RW5hYmxlZEJ5U2V0dGluZyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFbmFibGVkQnlTZXR0aW5nPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEVuYWJsZWRCeVNldHRpbmc+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9y
Q29udGV4dC5jcHAKaW5kZXggM2FmN2RiMzQzMTk3MWJmNjQ1OGI1YTNlN2YyNmJiODIxMjc1MDM3
OC4uZTE5NTEwNjllOWYxYmMwOTQ4NGQ0YzQwZjMxMDc0NzIwOTViNzZkYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JD
b250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RW5hYmxlZEZvckNvbnRleHQuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBl
LCBKU1Rlc3RFbmFiCiAKIHVzaW5nIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRGb3JDb250
ZXh0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RW5hYmxlZEZvckNvbnRleHRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RFbmFibGVkRm9yQ29udGV4dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RW5hYmxlZEZvckNvbnRleHRET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEwLDcgKzExMCw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RFbmFibGVk
Rm9yQ29udGV4dENvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0
eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNv
bnRleHQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxl
ZEZvckNvbnRleHQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHRQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0RW5hYmxlZEZvckNvbnRleHRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dDo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29u
dGV4dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dDo6c19pbmZv
ID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0KSB9Owog
CiBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dDo6SlNUZXN0RW5hYmxlZEZvckNvbnRleHQoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
RW5hYmxlZEZvckNvbnRleHQ+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RW5hYmxl
ZEZvckNvbnRleHQ+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2
ZW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCmluZGV4IGM4OGVkMjFjY2Y5YTA5NmEzMzZi
YjQzMGM3MDdjMzJmZDNlYWI5YjYuLmRlODdjOTE5ODVjN2NkZWIxMDI5YmUzOTM1MDIzMmY5ODlm
OTA0OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTE5NCw3ICsx
OTQsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRF
UyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29ucwogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVO
Q1RJT04oSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rl
c3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29u
c3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3Ii
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0yMjQsNyArMjI0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjMzLDcgKzIzMyw3IEBAIHZvaWQgSlNUZXN0RXZlbnRD
b25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEV2ZW50Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV2ZW50Q29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRDb25zdHJ1
Y3RvcikgfTsKIAogSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6SlNUZXN0RXZlbnRDb25zdHJ1Y3Rv
cihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RFdmVudENvbnN0cnVjdG9yPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAK
aW5kZXggN2JmZDFlOTIwNDE4ODVlMmFmNmMyZDUwYmMwMzIwYzQ2Yzk5M2UyMC4uNWFjY2YwZTY1
MjE4OGU5YzljNDA4NGVjMDY3YzA2ODcyOTBmOWQ2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQu
Y3BwCkBAIC05Myw3ICs5Myw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlLCBKU1Rlc3RFdmVudFRhcmdlCiAKIHVzaW5nIEpT
VGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3RFdmVudFRhcmdldD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRh
cmdldCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0RXZlbnRUYXJnZXRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RFdmVudFRhcmdldCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0RXZlbnRUYXJnZXRET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIml0ZW0i
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlRnVuY3Rpb25faXRlbSksIChpbnRwdHJfdCkgKDEp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEV2ZW50VGFyZ2V0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdEV2ZW50VGFyZ2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdEV2ZW50VGFyZ2V0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
MjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJnZXQ6OnNfaW5mbyA9IHsgIlRl
c3RFdmVudFRhcmdldCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
RXZlbnRUYXJnZXQ6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdl
dCkgfTsKIAogSlNUZXN0RXZlbnRUYXJnZXQ6OkpTVGVzdEV2ZW50VGFyZ2V0KFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEV2ZW50
VGFyZ2V0PiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHN0cnVjdHVyZSwgZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcAppbmRleCAxMWRjNWVhZWZm
NzNlNWYzZjBkZjA4MWJkYzZkMTU5Y2IwMTkwNzNmLi45N2NmOGQzNWIxNTJjZDEwNWU5ZDJiMDI4
NGMyYzA5YmIzNGRiYTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmNwcApAQCAtODYsNyArODYsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFeGNlcHRpb25Qcm90
b3R5cGUsIEpTVGVzdEV4Y2VwdGlvblBybwogCiB1c2luZyBKU1Rlc3RFeGNlcHRpb25ET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEV4Y2VwdGlv
bj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV4Y2VwdGlvbkRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvbkRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RXhjZXB0aW9uRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAibmFtZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29y
IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RE9NQXR0cmlidXRlKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RF
eGNlcHRpb25fbmFtZSksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRp
b25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTIwLDcgKzEyMCw3IEBAIHZvaWQgSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RF
eGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEV4Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRp
b246OnNfaW5mbyA9IHsgIlRlc3RFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXhjZXB0aW9uKSB9OwogCiBKU1Rl
c3RFeGNlcHRpb246OkpTVGVzdEV4Y2VwdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFeGNlcHRpb24+JiYgaW1wbCkKICAg
ICA6IEpTRE9NV3JhcHBlcjxUZXN0RXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5j
cHAKaW5kZXggZWUzYWYxZjFmNTkyODk3ODdhOWRlNTBhZjE3OTg0MWVhMTFlYmI2NC4uOGVkNmM0
OGYwYzViMDM2NTM5MmVkZWM1MGE5NTBlOGU0MmU4YTNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90
eXBlLCBKU1Rlc3QKIAogdXNpbmcgSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3Ry
dWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3Q+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0
ZUFkZE9wYXF1ZVJvb3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RH
ZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAg
IHsgInNvbWVBdHRyaWJ1dGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3Nv
ciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290X3NvbWVBdHRyaWJ1dGUpLCAoaW50cHRyX3QpIHN0YXRpY19j
YXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RHZW5lcmF0ZUFkZE9w
YXF1ZVJvb3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsx
MjAsNyBAQCB2b2lkIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290Ojpz
X2luZm8gPSB7ICJUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1
ZVJvb3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290Ojpz
X2luZm8gPSB7ICJUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290Il9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdCkgfTsKIAogSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290OjpKU1Rlc3RHZW5lcmF0
ZUFkZE9wYXF1ZVJvb3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290PiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdD4oc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZS5jcHAKaW5kZXggNWY1OTU4NThlZGRjOWNiODhlZjdlMTQxZjUxNzE3NDUwOTM5ZDAzZC4u
Yzg0OTU0YThjMDY4YjQ5OTg5YTcyMWVlYjZiNDc2ZTIyNzdkNTdhZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFj
aGFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90
eXBlLCBKU1Rlc3RHZQogCiB1c2luZyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlRE9NQ29uc3Ry
dWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RHZW5lcmF0ZUlz
UmVhY2hhYmxlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVJ
c1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVh
Y2hhYmxlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHZW5l
cmF0ZUlzUmVhY2hhYmxlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEx
MSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0R2VuZXJhdGVJ
c1JlYWNoYWJsZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImFTZWNyZXRBdHRyaWJ1
dGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9u
bHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZV9hU2VjcmV0QXR0cmlidXRlKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0
eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlz
UmVhY2hhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RHZW5lcmF0ZUlzUmVhY2hhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgSlNUZXN0R2VuZXJhdGVJ
c1JlYWNoYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFi
bGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2Vu
ZXJhdGVJc1JlYWNoYWJsZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSkgfTsKIAogSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZTo6
SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmNw
cAppbmRleCA0ZjE0YTY5YTIwZjBhMzAxMzk5NDA3ZGMwMGJjODA2NWVkMmRiOTBkLi45NDIzNDcz
OGU0MDAyMjk1M2M5ZTk4MjE4ZjYwM2JjZDUzY2IwOTMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2Jq
ZWN0LmNwcApAQCAtNjIxLDcgKzYyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3RHbG9iYWxPYmplY3RDb25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogI2VuZGlmCiB9Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmpl
Y3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9i
YWxPYmplY3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEds
b2JhbE9iamVjdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC02NTMsNyAr
NjUzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEdsb2JhbE9iamVjdFBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rl
c3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNUZXN0R2xvYmFs
T2JqZWN0OjppbmZvKCksIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZVRhYmxlVmFsdWVzLCBK
U1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8g
SlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RHbG9iYWxPYmplY3RQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxP
YmplY3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC02NjEsNyArNjYxLDcgQEAgdm9pZCBKU1Rlc3RH
bG9iYWxPYmplY3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZCYXNlOjpz
X2luZm8sICZKU1Rlc3RHbG9iYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFs
T2JqZWN0OjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAm
SlNUZXN0R2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0R2xvYmFsT2JqZWN0KSB9OwogCiBKU1Rlc3RHbG9iYWxPYmplY3Q6OkpTVGVzdEdsb2JhbE9i
amVjdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3RHbG9iYWxPYmplY3Q+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
R2xvYmFsT2JqZWN0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCBh
NzY0YzhmMjc0NTUyNmE4OWQyMzg4YWEyNWJhZjQ4ZWUwY2U4YzI3Li5kZDc2NTkwYTJjMjhkMjU2
OWU4YTBkNWFiZTY2ZDdmNTVlMmE2NGQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90
b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdEluZGV4ZWRT
ZXR0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEw
OSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJf
dCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVz
dEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsg
IlRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6
OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRT
ZXR0ZXJOb0lkZW50aWZpZXIpIH07CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6
OkpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW5kZXhlZFNldHRlck5vSWRl
bnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAK
aW5kZXggODgyZmYwNDdiOGJkMjgwYzZjODY1NjExZGQxZjU1ZWY5Mzc3NmIwYi4uYWRkYzU0OGQ3
OWNjZjk4NzZhZjk3M2Q5NDI3MzE1YjA4YWRjYzFhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0SW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uUHJvdG90eXAKIAogdXNpbmcgSlNUZXN0SW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25E
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDks
NyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZVRhYmxlVmEKICAgICB7ICJjb25zdHJ1Y3RvciIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZh
bHVlRnVuYz4oanNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uQ29uc3RydWN0b3Ip
LCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBK
U1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uOjpzX2luZm8gPSB7ICJU
ZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0SW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uOjpKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4oc3Ry
dWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDJhYzZkNzFkNTYzMjdk
OWE2Y2NkODA2MjA1YTUyNWEzZmNmYzY0MzUuLjE5OTViZjgwMDI1OWI5ZWRmYWFhMWFiMjQyNjdk
OGIwZmVkMGVhMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXIuY3BwCkBAIC05Myw3ICs5Myw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwK
IAogdXNpbmcgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJE
T01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0x
MTgsNyArMTE4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEluZGV4ZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWUKICAgICB7ICJpbmRleGVkU2V0
dGVyIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9p
bmRleGVkU2V0dGVyKSwgKGludHB0cl90KSAoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCBKU1Rlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAi
VGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllcjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllcjo6SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRleCBlY2IwNTQ4NDA2ZjFkZTRmZGE0
YmRhNWQ5NjQ3ZGZhNzkzMzMyMTMzLi5kZmQxZDRmYzc2ZmQ2YzMzZTRhMTM3OTI5MWVhZDViZjk3
NDE5NGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAtMjkzLDcgKzI5Myw3IEBAIHRlbXBs
YXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdEludGVy
ZmFjZURPTUNvbnN0cnVjdG9yCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RJ
bnRlcmZhY2VET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3Ry
dWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdElu
dGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRl
cmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
SW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTQ1Nyw3ICs0
NTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNlUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFj
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtNDc5LDcgKzQ3OSw3IEBAIHZvaWQgSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2U6OnNfaW5mbyA9IHsg
IlRlc3RJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlKSB9Owog
CiBKU1Rlc3RJbnRlcmZhY2U6OkpTVGVzdEludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbnRlcmZhY2U+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW50ZXJmYWNlPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKQEAgLTExMzIsMTEgKzExMzIsMTEgQEAgdXNpbmcgVGVzdElu
dGVyZmFjZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3RJ
bnRlcmZhY2UsIFQKIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKFRlc3RJbnRlcmZhY2VJdGVy
YXRvclByb3RvdHlwZU5leHQsIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6bmV4dCk7
CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRv
ckJhc2U6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVy
YXRvckJhc2UpIH07Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3I6
OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvcikg
fTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2U6OnNfaW5m
byA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJhdG9yQmFzZSkg
fTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvcjo6c19pbmZvID0g
eyAiVGVzdEludGVyZmFjZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3IpIH07CiAKIHRl
bXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJh
dG9yUHJvdG90eXBlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEludGVyZmFjZUl0ZXJh
dG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRl
cmZhY2VJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIGlubGluZSBFbmNvZGVkSlNWYWx1
ZSBqc1Rlc3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9lbnRyaWVzQ2FsbGVyKEpTR2xvYmFs
T2JqZWN0KiwgQ2FsbEZyYW1lKiwgSlNUZXN0SW50ZXJmYWNlKiB0aGlzT2JqZWN0KQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAKaW5kZXgg
YTgzM2M4NDRkYTAwMjNkZDUxZWI3NzdjOTg1ZTU2MmJmNTFhOGNiMi4uNTU2YjA2MmQzZTc3YjJi
Y2E4OGFmNTk5NTA3OWE0MzdiNDFmOTliZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50
ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3Jl
UHJvdG90eXBlLCBKCiAKIHVzaW5nIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVy
c2NvcmVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJz
Y29yZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SW50ZXJm
YWNlTGVhZGluZ1VuZGVyc2NvcmVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTExLDcgKzExMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3RvdHlwZVRhYmxlVmFsdWVzCiAgICAgeyAicmVhZG9u
bHkiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9u
bHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0SW50ZXJmYWNlTGVhZGlu
Z1VuZGVyc2NvcmVfcmVhZG9ubHkpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5
U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTIwLDcgKzEyMCw3IEBAIHZvaWQgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1Vu
ZGVyc2NvcmVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RS
SU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVh
ZGluZ1VuZGVyc2NvcmUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlOjpzX2luZm8gPSB7ICJU
ZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVy
c2NvcmUpIH07CiAKIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlOjpKU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZT4m
JiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxl
LmNwcAppbmRleCA1ZjRmYTY5ZmE4ZDFiMDExOTFkN2E0ODQyMWJlYzkzMWE4OTU2YWYyLi41MzEy
OTU2YjdiYWQwNGJlMzEwOTJmYWZkYTNiN2I1ZjEzMTYxNWJmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5j
cHAKQEAgLTk1LDcgKzk1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0SXRlcmFibGVQcm90b3R5cGUsIEpTVGVzdEl0ZXJhYmxlUHJvdG8KIAogdXNpbmcgSlNU
ZXN0SXRlcmFibGVET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdEl0ZXJhYmxlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
SXRlcmFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVy
YWJsZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
SXRlcmFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0
ZXJhYmxlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJdGVy
YWJsZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjMsNyArMTIzLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlVGFi
bGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SXRlcmFibGVQcm90b3R5cGVGdW5j
dGlvbl9mb3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0
ZXJhYmxlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGVQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0SXRlcmFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTEzMyw3ICsxMzMsNyBAQCB2b2lkIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZTo6c19pbmZvID0geyAi
VGVzdEl0ZXJhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVy
YWJsZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxlKSB9OwogCiBKU1Rl
c3RJdGVyYWJsZTo6SlNUZXN0SXRlcmFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SXRlcmFibGU+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0SXRlcmFibGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpAQCAtMjI3LDExICsyMjcsMTEgQEAgdXNpbmcgVGVzdEl0ZXJhYmxlSXRlcmF0
b3JQcm90b3R5cGUgPSBKU0RPTUl0ZXJhdG9yUHJvdG90eXBlPEpTVGVzdEl0ZXJhYmxlLCBUZXMK
IEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBl
TmV4dCwgVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+
Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVyYXRvckJhc2U6OnNfaW5mbyA9
IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlKSB9OwotY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJ
dGVyYWJsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNz
SW5mbyBUZXN0SXRlcmFibGVJdGVyYXRvckJhc2U6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJ
dGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShUZXN0SXRlcmFibGVJdGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5m
byBUZXN0SXRlcmFibGVJdGVyYXRvcjo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9y
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlc3RJdGVyYWJsZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNz
SW5mbyBUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJh
YmxlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6
Q2xhc3NJbmZvIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
SXRlcmFibGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0
YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0SXRlcmFibGVQcm90b3R5cGVGdW5jdGlv
bl9lbnRyaWVzQ2FsbGVyKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiwgSlNUZXN0SXRlcmFi
bGUqIHRoaXNPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9y
LmNwcAppbmRleCA3MWY2MWMyYTYwZmE5ODYyYzEzODdjZTZiYmUxNmY2OTQyM2QzNmU5Li4wYjIy
YWEzNGIyODMzNTg2YTNmOWE2NzAxNmU4ZDI0YWE2ZTcyNjRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0
b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5
cGUsIEpTVGVzdEoKIAogdXNpbmcgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1
Y3RvciA9IEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yPEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9y
PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0
b3JET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RKU0J1aWx0
aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjMs
NyArMTIzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEpTQnVpbHRpbkNv
bnN0cnVjdG9yUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidGVzdEN1c3RvbUZ1bmN0
aW9uIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZUZ1bmN0aW9uX3Rlc3RDdXN0
b21GdW5jdGlvbiksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEpTQnVp
bHRpbkNvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzIsNyArMTMyLDcgQEAgdm9pZCBKU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1
aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0
aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvcikgfTsKIAogSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3I6OkpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogICAgIDogSlNET01P
YmplY3Qoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVn
YWN5RmFjdG9yeUZ1bmN0aW9uLmNwcAppbmRleCBiYjY4OGZjYjRhOGY3MjM3ZWU5Nzk2YWQxOTNh
OTg2NzQ0YWRkZDUwLi44Yzc0NjAyZjM1YzY0NjhlZTI5ZTVkOGRmNGMwZjI0NDQ3MzQ3MTgyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmNwcApAQCAtODgsNyAr
ODgsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb25Qcm90b3R5cGUsIEpTVGVzdAogdXNpbmcgSlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24+OwogdXNpbmcgSlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uID0gSlNET01MZWdhY3lGYWN0b3J5RnVuY3Rp
b248SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5
RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0
b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3IpIH07
CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25ET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHRlbXBsYXRl
PD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdExlZ2FjeUZh
Y3RvcnlGdW5jdGlvbkxlCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVuY3Rpb25Db25zdHJ1Y3QsIEpTVGVzdExl
Z2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6Y29uc3RydWN0KTsKIAot
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVn
YWN5RmFjdG9yeUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJBdWRpbyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpzX2lu
Zm8gPSB7ICJBdWRpbyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVu
Y3Rpb24pIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rp
b25MZWdhY3lGYWN0b3J5RnVuY3Rpb246OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE2NCw3ICsx
NjQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBz
dGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0
aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5
RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
NzMsNyArMTczLDcgQEAgdm9pZCBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbjo6c19pbmZvID0geyAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFj
dG9yeUZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbjo6c19pbmZvID0geyAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb24pIH07CiAKIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6SlNUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbj4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdC5jcHAKaW5kZXggMWM4MzQ5MGI2N2ExMWNjODhiM2E1ZWI4MmI5
MTcyOGI1ZGY4MzUxMi4uZmE3NjA5MTYyMTRmNmFiNjgyMzk4MjdlYmVhNTJiNmQwNGZjYzdjYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuY3BwCkBAIC0x
MTcsNyArMTE3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdExlZ2FjeU5v
SW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlVGFibGVWYWx1ZXNbXQogICAgIHsgIkNPTlNUQU5UMiIs
IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwg
Tm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZykoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVn
YWN5Tm9JbnRlcmZhY2VPYmplY3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5Tm9J
bnRlcmZhY2VPYmplY3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEy
Niw3ICsxMjYsNyBAQCB2b2lkIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFj
ZU9iamVjdDo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0lu
dGVyZmFjZU9iamVjdDo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0KSB9OwogCiBKU1Rlc3RMZWdhY3lOb0ludGVyZmFj
ZU9iamVjdDo6SlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TGVnYWN5Tm9JbnRl
cmZhY2VPYmplY3Q+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5Tm9JbnRl
cmZhY2VPYmplY3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCmluZGV4IGUyYjFmODA0
OTY5MDFlNmU4NzJhMDZiY2RiZWEwMGQ0OTg5OWE0YTIuLjUzMTI0MDUzOWY4Nzk0ZTEyYjI5MGYx
ZDM0NWEzNzBlYTYyYjg1NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVC
dWlsdElucy5jcHAKQEAgLTkzLDcgKzkzLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0Vf
U0hBUkFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSwgSlNUZXMKIAog
dXNpbmcgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucz47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qp
CiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVz
dExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJu
YW1lZEl0ZW0iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZl
RnVuY3Rpb24+KGpzVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGVGdW5jdGlvbl9u
YW1lZEl0ZW0pLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJp
ZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjcsNyArMTI3LDcg
QEAgdm9pZCBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpzX2lu
Zm8gPSB7ICJUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWls
dElucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpz
X2luZm8gPSB7ICJUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zKSB9OwogCiBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOjpKU1Rlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+JiYgaW1wbCkK
ICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucz4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAKaW5kZXggZDVl
YTE0YzEyOTYzNTBjYWY1Y2U4MTc5YmFiOWIzNGE1NTFkYjMxNS4uZTFiNmU5MDM0ZTgzZjNjNDBk
ZWU1YTI0OTc0MGNjNDhiMzRlNzNmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmNwcApAQCAtMTAyLDcgKzEw
Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE1hcExpa2VQ
cm90b3R5cGUsIEpTVGVzdE1hcExpa2VQcm90b3R5CiAKIHVzaW5nIEpTVGVzdE1hcExpa2VET01D
b25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE1hcExp
a2U+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE1hcExpa2VET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTM2LDcgKzEzNiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RNYXBMaWtlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZGVs
ZXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE1hcExpa2VQcm90
b3R5cGVGdW5jdGlvbl9kZWxldGUpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2Ui
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE1hcExpa2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC0xNDYsNyArMTQ2LDcgQEAgdm9pZCBKU1Rlc3RNYXBMaWtlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlOjpzX2luZm8gPSB7ICJU
ZXN0TWFwTGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TWFwTGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtl
OjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlKSB9OwogCiBKU1Rlc3RNYXBM
aWtlOjpKU1Rlc3RNYXBMaWtlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE1hcExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3Jh
cHBlcjxUZXN0TWFwTGlrZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5jcHAKaW5kZXggMjA4MGU3ZTZkZTE2MzkwOTlkZmI4YTVhM2FkMmUyYmZkNzBlYzlhNy4u
YzczN2E5ZGZlY2E0MWM5OTI5MWMwYWI2NDViOTliNWQzYjJmYmYwNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcApAQCAt
MTA2LDcgKzEwNiw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5CiAKIHVzaW5nIEpTVGVzdE1h
cExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlVGFibGVW
CiAgICAgeyAiZGVsZXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OkRvbnRFbnVtIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVz
dE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVGdW5jdGlvbl9kZWxldGUp
LCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlr
ZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJh
dGlvbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1By
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTAsNyArMTUwLDcgQEAg
dm9pZCBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0
TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zKSB9OwogCiBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
OjpKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE1hcExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCmluZGV4IDI0NzAyZWYxNThmZGZjZTgxZGJiNGZjYTE1
OGFlNjM2ODdhOGU0ZjEuLmNhYzMzNjhhNWI3YzVhYTE2NTc4ZjU1NTU0NjI4NGYzMWNjOGZjZTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXIuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQ
QUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3Rv
CiAKIHVzaW5nIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEw
LDcgKzExMCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGVUYWJsCiAgICAgeyAiY29uc3RydWN0b3Ii
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRW
YWx1ZUZ1bmM+KGpzVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckNvbnN0cnVj
dG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVu
Yz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcg
QEAgdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5v
SWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5j
cHAKaW5kZXggMWNlMjMzNjFiMzc4ZDdiMTc3MmE5OTdkZjdlYmZhOTk2MDg1ODc2Ni4uYmY5YTVh
YjBiNDBmOTY5ZDA5NzkzMzE0ZGMzOWYyOWMzMGZlNmJkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24u
Y3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uCiAKIHVzaW5nIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEFuZEluZGV4ZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEwLDcgKzExMCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvblByb3RvdHlwCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2CiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uKSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5jcHAKaW5kZXggOGYyNGJhMTZiNmIzYjVhYzIwM2QyZjY0MTY0NTA0ZTI2MjBmNTVjOS4u
M2FlMmM5MzM1YWZlYTI1ZDRmZjBmYWE3Mzc4ZGM2ZWZlMThkZjU4OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIu
Y3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvCiAKIHVzaW5nIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBK
U0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhCiAgICAgeyAiaW5kZXhl
ZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpG
dW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVG
dW5jdGlvbj4oanNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGVGdW5jdGlvbl9pbmRleGVkU2V0dGVyKSwgKGludHB0cl90KSAoMikgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lk
IEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6
c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
V2l0aElkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCBmNGNl
MGU0MWU1ZTNhMDI2YmNjNWIzZTA0NzBlZjE0MzFjODdhNGVjLi41ODdjOTViZWYwMzEwNTM3MjBi
MzEyMzg2MWM5OTI2MmFhMTM1OTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUs
IEpTVAogCiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlck5v
SWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVs
ZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVu
dGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90
eXBlVGFibGVWYWx1ZXNbXQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1l
ZERlbGV0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZERlbGV0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50
aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0
ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rl
c3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
cihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3Jh
cHBlcjxUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDc5MWNkYTIxZWY1MzNkMWQ1YzZjMTQwNDkwNWMy
ODhmZmQ5MmY1YWUuLjFkMjExMzIxZTJlNTU5YjI1YjNmMjY2NWFmZDViMTIyNjMwMWQxODEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
LmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJM
RShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZQogCiB1c2luZyBK
U1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJU
aHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxl
dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERl
bGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVk
RGVsZXRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGVUYWJsZVZhbAogICAgIHsgImNv
bnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5
U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNv
bnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZh
bHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRl
clRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0
aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRp
b24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkRGVs
ZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAi
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uKSB9OwogCiBKU1Rlc3ROYW1lZERl
bGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRp
b24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qs
IFJlZjxUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAKaW5kZXggM2E5OGQ1OWQzOGI3MWIwMTY1YzFiMmFl
ZjIzYmVmODA5YWRlYzc0Ni4uODUxZWQ5Y2I4OTMyY2M4MzU0ZjU5ZmM5MWU1MjRiNDdjYzQxNzhk
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIu
Y3BwCkBAIC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlLCBKCiAKIHVzaW5nIEpT
VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0
cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRl
bnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsK
K3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRp
ZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclBy
b3RvdHlwZVRhYmxlVmFsdWVzCiAgICAgeyAibmFtZWREZWxldGVyIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsg
KGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZUZ1bmN0aW9uX25hbWVkRGVsZXRlciksIChpbnRwdHJf
dCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRo
SWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVu
dGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRl
cldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYs
NyArMTI2LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJX
aXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNU
ZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVu
dGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBK
U0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwCmluZGV4IDJlYWMxNmY0OTk2Y2RhZDc2Y2Zj
MWNhZjA3YWY4YTI2YjIwN2ZlMTkuLjEzMzg2YjJmMzE3ODk5NGFhN2RhMTE4ZGU3NGU5MWQ2NDIw
ZDczZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZQog
CiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGVUYWJsZVZhbAog
ICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhl
ZEdldHRlckNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNs
b3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0
dGVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
bmRleGVkR2V0dGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElu
ZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpTVGVz
dE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSW5kZXhlZEdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSW5kZXhlZEdldHRlcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyKSB9OwogCiBKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcjo6SlNUZXN0TmFtZWREZWxldGVyV2l0aElu
ZGV4ZWRHZXR0ZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QsIFJlZjxUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI+JiYgaW1wbCkK
ICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGguY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGguY3BwCmluZGV4IGNjMTAyMGMzZGNjZmEyZGJkZTYwY2Q2Nzk1NDJj
N2NlZDdlYzNjMDUuLmY2MGI0ZjZjZjhhYTQ4OWQxOGQ5ZjI4ZGQzY2JiOGYyNTUyM2QyMWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZEdldHRlckNhbGxXaXRoLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5jcHAKQEAgLTg1LDcgKzg1LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJD
YWxsV2l0aFByb3RvdHlwZSwgSlNUZXN0TmEKIAogdXNpbmcgSlNUZXN0TmFtZWRHZXR0ZXJDYWxs
V2l0aERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGgiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRHZXR0ZXJDYWxsV2l0aERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJj
b25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0
eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aENvbnN0cnVjdG9y
KSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4o
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0
dGVyQ2FsbFdpdGhQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRo
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFt
ZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTE4LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0
aDo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2Fs
bFdpdGgpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aDo6c19p
bmZvID0geyAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0
aCkgfTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aDo6SlNUZXN0TmFtZWRHZXR0ZXJDYWxs
V2l0aChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3ROYW1lZEdldHRlckNhbGxXaXRoPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5j
cHAKaW5kZXggYTE5ZGY5ZGVlZDg4OTY4MTFhZDVmMmQyZDM1OWJmYjc3ZWNjYjFmYS4uODRiNjYw
OTkzZDhlM2MzMzQ1YzZjMjRhMTQ5MGRjMGIyNmMyMmFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlm
aWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19B
U1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVy
UHJvdG90eXBlLCBKU1RlCiAKIHVzaW5nIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1l
ZEdldHRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZEdldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVy
Tm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChp
bnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFt
ZWRHZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmll
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVk
R2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhP
VVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJO
b0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRH
ZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmll
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJO
b0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRl
eCA4YjM0OGFjNGUyZTdiNmRlODM0Y2Q3NTE5OTc4NGNlNzE4NjYzNmZiLi41NzA3MTQ0MmU3ODU5
Mjc5Njc4ODZkMjdlNzZlY2I2YjhiNjk1YWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJET01D
b25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVk
R2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZEdldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE1LDcg
KzExNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlcldp
dGhJZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAiZ2V0dGVyTmFtZSIsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5v
SW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZUZ1bmN0aW9uX2dldHRlck5hbWUp
LCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVy
V2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEdldHRl
cldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
MjQsNyArMTI0LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlcldp
dGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZEdldHRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRo
SWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RO
YW1lZEdldHRlcldpdGhJZGVudGlmaWVyOjpKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3Jh
cHBlcjxUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyLmNwcAppbmRleCBlYTJlZGVlOWFiODQ1YjA1M2FhY2YwOGZlYjU3NzE3MjkxZDE2YmQ5
Li40Y2JmNjZlM2Q4YjUyZDA1MzNkYWNjMGVhOTFmYzI0ODVkNjYzNDU4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJO
b0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5jcHAKQEAgLTg1LDcgKzg1LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lk
ZW50aWZpZXJQcm90b3R5cGUsIEpTVGUKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50
aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmll
ckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRp
ZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllckNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0
aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9J
ZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZp
ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlck5vSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlck5vSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9J
ZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1l
ZFNldHRlck5vSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24uY3BwCmluZGV4IDgyOTQyZGI1Mjk3MTdjMjAwYTVhYzUyYjI2ZTE0MjdhMzM4ZTcxZjQu
LmI0OTUyMzllM2FjODdmMDJiNWJmZDZmMjI4ZjI3Yzg2NDcxYjBlZmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcg
Kzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25E
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb25Qcm90b3R5cGVUYWJsZVZhbHUKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNU
ZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBz
dGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzEx
OCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikg
fTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IGM3ZDcyYTdjYTgy
NTgwYWFmNjYzYTkxOTY1YTJmOGQyMDEzZGY5MTQuLjc4MWFiMDU1YjRjZTMwMDVkZjIxYzM5ZTBm
ZThiYTllZTk3Mzc2YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
SWRlbnRpZmllci5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwgSlMK
IAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRl
bnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGVUYWJsZVZhbHVlc1sKICAgICB7ICJuYW1lZFNldHRlciIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0
ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZUZ1bmN0aW9uX25hbWVkU2V0dGVyKSwgKGludHB0cl90
KSAoMikgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlm
aWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRp
ZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3
IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmll
cjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5h
bWVkU2V0dGVyV2l0aElkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXIuY3BwCmluZGV4IDdkMzQ1ZmY0NjJiOTJmMWRmMGU2OWY0Mzc0Y2YyMjA0MWUxYWE0NDMu
LjZmN2E1YjYyYjg5YWE0M2Q5ODc5ODMyZjYxZTZjODg0NjVlYzQ4NTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKQEAgLTk1LDcg
Kzk1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcj47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKK3Rl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjEsNyArMTIxLDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXJQcm90b3R5cGVUYWJsZVZhbHUKICAgICB7ICJpbmRleGVkU2V0dGVyIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciks
IChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXI6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmNwcAppbmRleCA0Nzk2NjgwMzY0YzJlNjMy
ODUzNGYwOWQ0NDExNmFhNDVmNDZiMWY1Li5kYzZjNjYyY2UwNGQ1YmZmYjExNDEyYWViYTczNjQ0
ZTA1YmZlMzgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4
ZWRHZXR0ZXJBbmRTZXR0ZXJQCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXJBbmRTZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXJBbmRTZXR0ZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIxLDcg
KzEyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJvdG90eXBlCiAgICAgeyAiaW5kZXhlZFNldHRlciIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZUZ1bmN0
aW9uX2luZGV4ZWRTZXR0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRl
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJB
bmRTZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyArMTMwLDcg
QEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0KICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5k
U2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXJBbmRTZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIp
IH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI6OkpTVGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIoU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAppbmRleCBlMDFjNzA1
NDE2YTgzMzhlMjY2OWFiMTc0NTVjMWVjZjZhYTA0NTU3Li4zOGI4NTgyMTY2NGQ1NjNiMWYyZjA4
NTBlM2ZkYmEzOTdjMjQxODdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCkBAIC04NSw3ICs4NSw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlCiAgICAgeyAiY29uc3Ry
dWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9u
dEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90
OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWls
dEluczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19p
bmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5T3ZlcnJpZGVCdWlsdElucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmNwcAppbmRleCBmODU5ZGVkYjZiZDE0Mjlm
YWRhZWQzZDRkM2Q4ZDllMTRkYjE4N2M3Li5hNmRjNjZhOGM4MzE2ZjcxYzE3NWRmYmYxMDM0MzM5
MDQzMmNhMTczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmNwcApAQCAtMTExLDcgKzEx
MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsCiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxl
ID0geyAyLCAzLCB0cnVlLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXM6OmluZm8oKSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzVGFibGVWYWx1ZXMsIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc1RhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdAogICAgIHsgImNvbnN0cnVj
dG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6
R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTQ0LDcgKzE0NCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiLCAmQmFz
ZTo6c19pbmZvLCAmSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllczo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyJfcywgJkJhc2U6
OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcykgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3Qs
IFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKaW5kZXggNmZhZDc1YjczNGU5
ZjkxMmY5MzJlOTgzNjkxZjcwMTAzY2RiYjZjYS4uYmZiY2RlNjMzMGVmNjc0MThhZTZiY2U1NzM2
NjVjY2JlMzQ5NTllNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcApAQCAtMTExLDcgKzExMSw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMCiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6
aW5mbygpLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNB
bmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGVWYWx1ZXMsIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNUYWJs
ZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM1LDcgKzEzNSw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJp
bnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+
KGpzVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0
UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3Jn
ZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnNQcgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2lu
Zm8sICZKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3Jn
ZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFj
ZUNvbnN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lc3BhY2VDb25zdC5jcHAKaW5kZXggNmMyZjllZTRiNjQ2OGU3MGQ4NWJjY2JlOGMxNWMx
YTEzYjk5MjE2Yi4uNDUyZGRjNTQzMjhhZWZhMWNhZTEwOWJiMzdkY2YwMzQ2NjU0NzM1YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVzcGFjZUNvbnN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZXNwYWNlQ29uc3QuY3BwCkBAIC01Niw3ICs1Niw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lc3BhY2VDb25zdENvbnN0cnVjdG9yVGFibGVW
YWx1ZXNbXSA9CiBzdGF0aWNfYXNzZXJ0KFRlc3ROYW1lc3BhY2VDb25zdDo6VEVTVF9GTEFHID09
IGZhbHNlLCAiVEVTVF9GTEFHIGluIFRlc3ROYW1lc3BhY2VDb25zdCBkb2VzIG5vdCBtYXRjaCB2
YWx1ZSBmcm9tIElETCIpOwogc3RhdGljX2Fzc2VydChUZXN0TmFtZXNwYWNlQ29uc3Q6OlRFU1Rf
QklUX01BU0sgPT0gMHgwMDAwZmMwMCwgIlRFU1RfQklUX01BU0sgaW4gVGVzdE5hbWVzcGFjZUNv
bnN0IGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lc3BhY2VDb25zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3RvcikgfTsK
K3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lc3BhY2VDb25zdCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VDb25z
dERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZXNwYWNl
Q29uc3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNzEsNyArNzEsNyBA
QCB0ZW1wbGF0ZTw+IHZvaWQgSlNUZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3Rvcjo6aW5p
dGlhbGl6ZVByb3BlcnRpZXMoVk0mIHZtLAogICAgIFVOVVNFRF9QQVJBTShnbG9iYWxPYmplY3Qp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZXNwYWNlQ29uc3Q6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lc3BhY2VDb25zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZXNwYWNlQ29uc3Q6OnNfaW5mbyA9IHsgIlRlc3ROYW1lc3BhY2VDb25zdCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lc3BhY2VDb25zdCkgfTsKIAogSlNUZXN0TmFtZXNwYWNlQ29uc3Q6OkpTVGVzdE5h
bWVzcGFjZUNvbnN0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogICAgIDogSlNET01PYmplY3Qoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QpIHsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVzcGFjZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmNwcAppbmRleCAwNzZkNjM0MjY2YTVhMmIz
ZDQyYWRlNzM3ZDYxYTc0NzUwN2MwZWQyLi5kZTkwZTlhMDY2MjgzMGRmMWNjNjIyOTM2YjU2ODEx
YzBkNzM4Nzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmNwcApAQCAtOTUsNyAr
OTUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZXNwYWNlT2JqZWN0
Q29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RJbnRlcmZhY2VOYW1lIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFtZSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lc3BhY2VP
YmplY3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVz
cGFjZU9iamVjdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzEsNyAr
MTMxLDcgQEAgdGVtcGxhdGU8PiB2b2lkIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVj
dG9yOjppbml0aWFsaXplUHJvcGVydGllcyhWTSYgdm0KICNlbmRpZgogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZXNwYWNlT2JqZWN0OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFt
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZXNwYWNlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFj
ZU9iamVjdDo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2Jq
ZWN0KSB9OwogCiBKU1Rlc3ROYW1lc3BhY2VPYmplY3Q6OkpTVGVzdE5hbWVzcGFjZU9iamVjdChT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAg
ICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcApp
bmRleCAyZjRlYTY1Y2M4MDIzMzQzNGMzN2JlYjQxM2ZjYzFlNDYzYzE1YmJjLi5iOTA0ZGY2YjMw
NzdhYjJkZGE3N2QyOWZmNDVmNWNkNGZlMWY2MjViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCkBAIC0xMzQsNyAr
MTM0LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVU
RVMgSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpjb24KIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZV
TkNUSU9OKEpTVGVzdE5vZGVET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0Tm9kZURPTUNv
bnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROb2RlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROb2RlRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTcxLDcgKzE3MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3ROb2RlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2ZvckVhY2gpLCAoaW50cHRyX3QpICgxKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5vZGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9k
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZVByb3RvdHlwZSkgfTsK
IAogdm9pZCBKU1Rlc3ROb2RlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0yMzUsNyArMjM1LDcgQEAgdm9pZCBKU1Rlc3ROb2RlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROb2RlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
Tm9kZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROb2RlOjpzX2luZm8gPSB7ICJUZXN0Tm9k
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROb2RlKSB9OwogCiBKU1Rlc3ROb2RlOjpKU1Rlc3ROb2RlKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5vZGU+JiYg
aW1wbCkKICAgICA6IEpTTm9kZShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKQEAgLTQzMywxMSArNDMzLDExIEBAIHVzaW5nIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGUg
PSBKU0RPTUl0ZXJhdG9yUHJvdG90eXBlPEpTVGVzdE5vZGUsIFRlc3ROb2RlSXRlCiBKU0NfQU5O
T1RBVEVfSE9TVF9GVU5DVElPTihUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlTmV4dCwgVGVzdE5v
ZGVJdGVyYXRvclByb3RvdHlwZTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xh
c3NJbmZvIFRlc3ROb2RlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
VGVzdE5vZGVJdGVyYXRvckJhc2UpIH07Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0
ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvcikgfTsK
K2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJU
ZXN0Tm9kZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZXN0Tm9kZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xh
c3NJbmZvIFRlc3ROb2RlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRl
c3ROb2RlSXRlcmF0b3IpIH07CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRl
c3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0
Tm9kZUl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdE5vZGVJ
dGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJ
dGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIGlubGluZSBFbmNvZGVkSlNWYWx1ZSBqc1Rl
c3ROb2RlUHJvdG90eXBlRnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENh
bGxGcmFtZSosIEpTVGVzdE5vZGUqIHRoaXNPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCmluZGV4IGI0NDcz
OTVlZTM3YzY0MjBhMjg0MTFiMjZjN2M1MGRiMjY3NzlhZGMuLjU5NjVjOWI2NGVhZWZlYmNkMWE3
Njg1Zjk5NDkyNjYwN2ZhYmU0ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouY3BwCkBAIC0yMDYzLDcgKzIwNjMsNyBAQCB0
ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RP
YmpET01Db25zdHJ1Y3Rvcjo6Y29ucwogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNU
ZXN0T2JqRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yOjpj
b25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPYmpET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0yNDI5LDcgKzI0MjksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
T2JqUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAicmVhZG9ubHkiLCBKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9u
bHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2lj
LCB7IChsb25nIGxvbmcpKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9ialByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3RPYmpQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3Qi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0T2JqUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE9ialByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjUzOSw3ICsyNTM5LDcgQEAgdm9pZCBKU1Rlc3RPYmpQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9iajo6c19p
bmZvID0geyAiVGVzdE9iamVjdCIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RPYmpUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPYmopIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0T2JqOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmSlNU
ZXN0T2JqVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqKSB9Owog
CiBKU1Rlc3RPYmo6OkpTVGVzdE9iaihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPYmo+JiYgaW1wbCkKICAgICA6IEpTRE9NV3Jh
cHBlcjxUZXN0T2JqPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
cGVyYXRpb25Db25kaXRpb25hbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwCmluZGV4IDJlMDcwZGM5MjM1
MDdhNGU3OTkxYmVhMmE2OGY1NjRlZDJjMDljYWUuLjg1OGFhNGM5ZWU4NWJiOGEwZWM5ZWNhYjYy
MTk1Y2I1ZGE4MDc5MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFs
LmNwcApAQCAtMTAxLDcgKzEwMSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlLCBKU1Rlc3RPCiAKIHVzaW5n
IEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbD47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPcGVyYXRpb25Db25kaXRpb25hbCIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9u
Q29uZGl0aW9uYWxET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RPcGVyYXRpb25Db25kaXRpb25hbCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9u
YWxET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM1LDcgKzEzNSw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2VuZGlmCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPcGVyYXRp
b25Db25kaXRpb25hbCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RPcGVyYXRpb25Db25kaXRpb25hbCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ0LDcgKzE0NCw3IEBAIHZvaWQgSlNUZXN0
T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0
aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9u
Q29uZGl0aW9uYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwpIH07CiAKIEpTVGVzdE9wZXJh
dGlvbkNvbmRpdGlvbmFsOjpKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbChTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPcGVyYXRp
b25Db25kaXRpb25hbD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RPcGVyYXRpb25D
b25kaXRpb25hbD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9ycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKaW5kZXggNDkyMTA0NjU5
MzIzZTE3NzMwZTc4ODE2MWViZjU3ZDYwYjk1YzdmMi4uODU5Yjk5Y2UxNzJjZjU0MmQyN2M5NTc5
YjcwNWY0NzIxNzc2N2EyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzLmNwcApAQCAtMjE4LDcgKzIxOCw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNECiB9
CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
Q29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25z
dHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9ycyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTI0Miw3ICsyNDIsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZVRhYmxl
VmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90
KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3Bl
cnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0yNTEsNyArMjUxLDcg
QEAgdm9pZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpzX2lu
Zm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpz
X2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzKSB9OwogCiBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+JiYgaW1wbCkK
ICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycz4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKaW5kZXggZDdmMTM3
NDY3ZDI1YTA5ZjI2MmY3MWI1ZTAzYzdkZGEyODgzNjlkZi4uNmZjMmY0YjUzNmI3ZmZkODZhYTIw
MzM2MzA1NmNlNTBlNmNlZWQwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcApAQCAtMTU1LDcgKzE1NSw3IEBA
IHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlQ29uc3RydWN0b3JDb25zdHJ1
Y3QsIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rv
cjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0
aFNlcXVlbmNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3OSw3ICsx
NzksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZVRhYgogICAgIHsgImNvbnN0cnVjdG9yIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVG
dW5jPihqc1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlQ29uc3RydWN0b3Ip
LCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1
Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1
Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNl
cXVlbmNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xODgsNyArMTg4
LDcgQEAgdm9pZCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzV2l0aFNlcXVlbmNlOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVl
bmNlOjpzX2luZm8gPSB7ICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlKSB9OwogCiBKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlOjpKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1
Z2luSW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RQbHVnaW5JbnRlcmZhY2UuY3BwCmluZGV4IGQ1MzdhYWI4YjRlNGRkZmQwYjFkNmEx
OGM4MDVmYTBiNzFjMDk1NDAuLjUzODM4MmFlNjIzOTZkY2E4MTczNDg4MmMyOTEyYWU1ZWRhZDQx
ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RQbHVnaW5JbnRlcmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RQbHVnaW5JbnRlcmZhY2UuY3BwCkBAIC04NCw3ICs4NCw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFj
ZVByb3RvdHlwZSwgSlNUZXN0UGx1Z2luCiAKIHVzaW5nIEpTVGVzdFBsdWdpbkludGVyZmFjZURP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0UGx1
Z2luSW50ZXJmYWNlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2lu
SW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RQbHVnaW5JbnRlcmZhY2Ui
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RQbHVnaW5JbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA4LDcgKzEwOCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0UGx1Z2luSW50ZXJmYWNl
Q29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0
VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50
ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVn
aW5JbnRlcmZhY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50
ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBs
dWdpbkludGVyZmFjZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCB2
b2lkIEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0UGx1Z2luSW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2lu
SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
UGx1Z2luSW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBs
dWdpbkludGVyZmFjZSkgfTsKIAogSlNUZXN0UGx1Z2luSW50ZXJmYWNlOjpKU1Rlc3RQbHVnaW5J
bnRlcmZhY2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0UGx1Z2luSW50ZXJmYWNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdFBsdWdpbkludGVyZmFjZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuY3BwCmluZGV4
IDA3ZDljNzFmYjc1Mzc1YTVjNTE2YzMxYmZhNzkyMDA4MTEzZmU3NDUuLjMwNjcyZDJkZDQxNTNh
ZDRiODNkYmQ1MWJlMzk5ZmU0YjRlYWQ3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNl
UmVqZWN0aW9uRXZlbnQuY3BwCkBAIC0xOTUsNyArMTk1LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50RE8KIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdFByb21pc2VSZWplY3Rp
b25FdmVudERPTUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZl
bnRET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJl
amVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0
aW9uRXZlbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjIwLDcgKzIyMCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGVUYWJs
ZVZhbHVlc1tdID0KICAgICB7ICJyZWFzb24iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0
b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVu
Yz4oanNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50X3JlYXNvbiksIChpbnRwdHJfdCkgc3RhdGlj
X2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFByb21pc2VSZWpl
Y3Rpb25FdmVudFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjI5LDcg
KzIyOSw3IEBAIHZvaWQgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6
OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rp
b25FdmVudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6
OnNfaW5mbyA9IHsgIlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50KSB9OwogCiBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ6OkpTVGVzdFByb21p
c2VSZWplY3Rpb25FdmVudChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ+JiYgaW1wbCkKICAg
ICA6IEpTRXZlbnQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVh
ZE9ubHlNYXBMaWtlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RSZWFkT25seU1hcExpa2UuY3BwCmluZGV4IDRmOTYzMDU5NWZkMTdlMjJhZmQ0MDFl
NWEwODViM2M3ZmY5MTFjOGMuLjYwNDZjYmFjNzg5NWY3NmNlOTBmMTg5N2Y4OWUwZGY2ZjQ5ZWE5
NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RSZWFkT25seU1hcExpa2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuY3BwCkBAIC05OSw3ICs5OSw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZVByb3RvdHlwZSwgSlNUZXN0UmVhZE9uCiAKIHVzaW5nIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0UmVh
ZE9ubHlNYXBMaWtlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0UmVhZE9u
bHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2Ui
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJmb3JFYWNoIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGVGdW5j
dGlvbl9mb3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5
TWFwTGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5
TWFwTGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
NDAsNyArMTQwLDcgQEAgdm9pZCBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZTo6c19pbmZv
ID0geyAiVGVzdFJlYWRPbmx5TWFwTGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5
TWFwTGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2UpIH07CiAKIEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZTo6SlNUZXN0UmVhZE9ubHlNYXBMaWtlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFJlYWRPbmx5TWFwTGlrZT4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3RSZWFkT25seU1hcExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmNwcApp
bmRleCAzNGZlODU3ZDIzZTlhNmE1YWQ4ZmUyMWNlMGYxZGFmOWQ1OWZiZjg5Li4xNWU2MTM4ODQ4
NDUyMDBjYjcyNjhjMWE4ZTNlMTYyYmFhODA3MzA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlT
ZXRMaWtlLmNwcApAQCAtOTgsNyArOTgsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGUsIEpTVGVzdFJlYWRPbgogCiB1
c2luZyBKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFJlYWRPbmx5U2V0TGlrZT47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0UmVhZE9ubHlTZXRMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlr
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlTZXRMaWtlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJl
YWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEyOCw3ICsxMjgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVhZE9u
bHlTZXRMaWtlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5
cGVGdW5jdGlvbl9mb3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJl
YWRPbmx5U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJl
YWRPbmx5U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMzgsNyArMTM4LDcgQEAgdm9pZCBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZTo6
c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5U2V0TGlrZTo6c19pbmZvID0geyAiVGVzdFJl
YWRPbmx5U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2UpIH07CiAKIEpTVGVzdFJlYWRPbmx5
U2V0TGlrZTo6SlNUZXN0UmVhZE9ubHlTZXRMaWtlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFJlYWRPbmx5U2V0TGlrZT4mJiBp
bXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RSZWFkT25seVNldExpa2U+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0
cmFNZW1vcnlDb3N0LmNwcAppbmRleCAwN2Y1ZjkxMTEwZTk2MjUzMWY1YWFiM2UxZWY5NzI2Nzg5
MzBlMDk5Li45ZWQwZDdhOTU2Y2VkNzRhZjMxODMzYzBlOTQ3YWY1ZmM3YTBmOGE2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0
RXh0cmFNZW1vcnlDb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmNwcApAQCAtODMsNyArODMsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1l
bW9yeUNvc3RQcm90b3R5cGUsIEpTVGVzdAogCiB1c2luZyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3RET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNyw3ICsxMDcsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlVGFibGVW
YWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlND
OjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qp
c3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdENvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0
eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4
dHJhTWVtb3J5Q29zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNv
c3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgdm9pZCBK
U1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdDo6c19pbmZvID0geyAiVGVz
dFJlcG9ydEV4dHJhTWVtb3J5Q29zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0KSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdDo6c19pbmZvID0geyAiVGVz
dFJlcG9ydEV4dHJhTWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QpIH07CiAK
IEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdDo6SlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlLmNwcAppbmRleCBiY2EwYmU1NTVhZTZlYTJlOTQ5OTY1OGY1NTI3MjYzZjNl
OWZkNWEyLi40MTE2NmUyMTVmM2YzZTQ3ZTM1M2FmMzgxZGUyZmYxZTIyYTRiNjAzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNw
cApAQCAtMTA5LDcgKzEwOSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwCiAKIHVzaW5nIEpT
VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxp
emVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGVUYWJsZVZhCiAg
ICAgeyAiZnVuY3Rpb25SZXR1cm5pbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZVByb3RvdHlwZUZ1bmN0aW9uX2Z1bmN0aW9uUmV0dXJuaW5nKSwgKGludHB0cl90KSAoMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUlu
dGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUlu
dGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBKU1Rlc3RTZXJpYWxpemVkU2Ny
aXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6c19pbmZvID0geyAiVGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UpIH07CiAKIEpTVGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuY3BwCmluZGV4
IGU3ZDQ3NmJjYzM0M2I1ODI3YTQ3NGIxOTk5YmQwMzU3YTcyM2UyMmUuLmIzNzUxN2UwODY5MWY3
ODMwMzU1NTdmOWJmNzIwNWFiNDc4NDdhNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5jcHAKQEAgLTEwMSw3
ICsxMDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTZXRM
aWtlUHJvdG90eXBlLCBKU1Rlc3RTZXRMaWtlUHJvdG90eQogCiB1c2luZyBKU1Rlc3RTZXRMaWtl
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RT
ZXRMaWtlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZURPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZURPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTZXRMaWtlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNCw3ICsxMzQsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0U2V0TGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsg
ImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXRMaWtl
UHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXRM
aWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTZXRMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExp
a2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VQcm90b3R5
cGUpIH07CiAKIHZvaWQgSlNUZXN0U2V0TGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTQ0LDcgKzE0NCw3IEBAIHZvaWQgSlNUZXN0U2V0TGlrZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZTo6c19pbmZvID0g
eyAiVGVzdFNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0
TGlrZTo6c19pbmZvID0geyAiVGVzdFNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZSkgfTsKIAogSlNUZXN0
U2V0TGlrZTo6SlNUZXN0U2V0TGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTZXRMaWtlPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdFNldExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMuY3BwCmluZGV4IDQwMjQzOWFiMGNkOTQ3YWUyYjcyMDk3NDkwNzgwZmYxM2I4YTk3
MTguLjM1MmM4NjNmM2ExYTAyOTU1MTEyYjk2NjExYTkzYzc3NzNhMjZlZjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAK
QEAgLTEwNSw3ICsxMDUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eQogCiB1c2luZyBKU1Rl
c3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlr
ZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzOCw3ICsxMzgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZVRh
YmxlVgogICAgIHsgImNsZWFyIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnRFbnVtIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpz
VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVGdW5jdGlvbl9jbGVh
ciksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9uc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0OCw3ICsxNDgsNyBA
QCB2b2lkIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM6OnNfaW5mbyA9IHsgIlRl
c3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnMpIH07CiAKIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnM6OkpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMoU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U2V0TGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9ucz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RT
ZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuY3BwCmluZGV4IGVhMjkxMzRmMzJh
NWUyZWQ0MmJlZjFlMjNlZjI3ZWY3OGY5ZjU5ODQuLmZkOThiNzQ0ZDRjNmQyZjIzNjgzNzRmMTZm
NTJkNTEyNzdjYzM2NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyLmNwcApAQCAtODksNyArODks
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTdHJpbmdpZmll
clByb3RvdHlwZSwgSlNUZXN0U3RyaW5naWZpZQogCiB1c2luZyBKU1Rlc3RTdHJpbmdpZmllckRP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3Ry
aW5naWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmll
ckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RT
dHJpbmdpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEx
NCw3ICsxMTQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZp
ZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5n
aWZpZXJQcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdFN0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmlu
Z2lmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIz
LDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
ZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U3RyaW5naWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZp
ZXI6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllcikgfTsKIAog
SlNUZXN0U3RyaW5naWZpZXI6OkpTVGVzdFN0cmluZ2lmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3BwCmluZGV4IDBiYzZjODI5YjY3NWFmZjc5MzFl
MGYyZWZhZGU0NWIxY2EyZWU4NGEuLmMxY2UzYzRjYTZiNmU2ODRjMDk2M2YyMGQ0Yzc4NmNjYzkw
ODQyZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uLmNwcApAQCAtODksNyArODksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZQog
CiB1c2luZyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJp
bmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3Bl
cmF0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTExNCw3ICsxMTQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGVUYWJsZVZhbAog
ICAgIHsgInRvU3RyaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRy
aWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJh
d05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3Rv
dHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24iLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMyw3ICsx
MjMsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255
bW91c09wZXJhdGlvbjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbikgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbjo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3Bl
cmF0aW9uKSB9OwogCiBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbjo6SlNUZXN0
U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3BwCmluZGV4
IDdjMWUyNjliOTNmZDI1ZmM4MTVjZjMwZWYwMjdlZGM0NmRkMzg2NzguLjQ0MzY1MTM3MTI5Y2Y4
ZDJkYzcxMWM1M2U3ZDkxMmQzNTgxN2ZmY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3Ry
aW5naWZpZXJOYW1lZE9wZXJhdGlvbi5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblBy
b3RvdHlwZSwgSlMKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbkRPTUNv
bnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5n
aWZpZXJOYW1lZE9wZXJhdGlvbj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25E
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyTmFtZWRPcGVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbkRPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJOYW1l
ZE9wZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTYsNyAr
MTE2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyTmFt
ZWRPcGVyYXRpb25Qcm90b3R5cGVUYWJsZVZhbHVlc1sKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0
U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGlu
dHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVk
T3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJOYW1l
ZE9wZXJhdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI1LDcg
KzEyNSw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9w
ZXJhdGlvbjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJOYW1lZE9wZXJhdGlvbjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbikgfTsKIAogSlNUZXN0U3RyaW5n
aWZpZXJOYW1lZE9wZXJhdGlvbjo6SlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbihTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25JbXBsZW1lbnRlZEFzLmNwcAppbmRleCA1NTMzNjc5Yzg2NjI2MTBmMjgxZDJmZWIx
MGU1NTFkZjEzYWYzMGNiLi45YWJhNjQ2YjdmYTgyZjUzYWI0OWVlMDc4MDBhYzQ4NzQ5MzIxZmI1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25J
bXBsZW1lbnRlZEFzLmNwcApAQCAtOTAsNyArOTAsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90
bwogCiB1c2luZyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcz47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRB
c0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEx
Niw3ICsxMTYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlVGFibAogICAgIHsgInRvU3RyaW5nIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihq
c1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGVGdW5jdGlvbl90
b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTI1LDcgKzEyNSw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM6OnNfaW5mbyA9IHsgIlRlc3RTdHJp
bmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1w
bGVtZW50ZWRBcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXM6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxl
bWVudGVkQXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzKSB9OwogCiBK
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM6OkpTVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uSW1wbGVtZW50ZWRBcyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVu
dGVkQXM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25JbXBsZW1lbnRlZEFzPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRU
b1N0cmluZy5jcHAKaW5kZXggYzA2NWQ3MmE3ZmIxMGI5ZjY2ZTBiNzllODc0NjFlYmNjNjhhOTU2
Ny4uY2JkZjhhYWZlYzhjNDQxYzE5N2I4OWExYmNiNDFlZjA4ZDYyNDM1MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uTmFtZWRUb1N0cmluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5j
cHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG8KIAogdXNpbmcgSlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5h
bWVkVG9TdHJpbmc+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmlu
Z0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZ1Byb3RvdHlwZVRhYmwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50
cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9T
dHJpbmdQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVy
YXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0
cmluZ1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMyw3ICsx
MjMsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhP
VVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25OYW1lZFRvU3RyaW5nIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
OjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZykgfTsKIAogSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nOjpKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVk
VG9TdHJpbmcoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nPiYmIGltcGwp
CiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmlu
Zz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAKaW5kZXggOWJkYzRl
MzAyOTcwYTYyMjk3MGNlNWZkYzYwYzAyMjAwMmNhMDMwZi4uM2NhZWQ4ODI3NDQ3MTI0NTI3MTg5
MzBhOGZhNDEzOWU3NDY2ODBmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
ZmllclJlYWRPbmx5QXR0cmlidXRlLmNwcApAQCAtOTEsNyArOTEsNyBAQCBTVEFUSUNfQVNTRVJU
X0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRl
UHJvdG90eXBlLAogCiB1c2luZyBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJp
bmdpZmllclJlYWRPbmx5QXR0cmlidXRlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
clJlYWRPbmx5QXR0cmlidXRlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1
ZSBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZVRhYmxlVmFs
dQogICAgIHsgInRvU3RyaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJv
dG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0
cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJp
YnV0ZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmli
dXRlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcg
QEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0
cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RT
dHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlKSB9Owog
CiBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlOjpKU1Rlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZT4o
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcAppbmRleCBlZmJjNGU2
MzVhZjhkOTYyMmM1MGMzYjIwN2M5ZTliZTVhZWE0MGFhLi44NDBjNWU2ZTJmZmYxMWFjODNhNDM0
M2UyNWYyNDk5MDcyOGQwMDdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgU1RBVElDX0FTU0VS
VF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1
dGVQcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVE
T01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
clJlYWRXcml0ZUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZURPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90
eXBlVGFibGVWYWwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVB
dHRyaWJ1dGVQcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJp
YnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGU6OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmll
clJlYWRXcml0ZUF0dHJpYnV0ZSkgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRy
aWJ1dGU6OkpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RG
TW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmNwcAppbmRleCBkZGI5NjVkZDZm
ZTY1NDkxM2Q5MmRmOWY4MjNjMWEzYmNjZmI5N2UyLi5mZmEwY2U3N2NjMjlmMTQ2Mjk1MTMyZTc3
NzBmZGI0MjBhNTQ1M2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuY3BwCkBAIC04Myw3
ICs4Myw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFRhZ2dl
ZFdyYXBwZXJQcm90b3R5cGUsIEpTVGVzdFRhZ2dlZFdyCiAKIHVzaW5nIEpTVGVzdFRhZ2dlZFdy
YXBwZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdFRhZ2dlZFdyYXBwZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RU
YWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUYWdnZWRXcmFwcGVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RUYWdnZWRXcmFwcGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFRhZ2dlZFdyYXBwZXJET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFRhZ2dlZFdyYXBwZXJET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTA3LDcgKzEwNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAg
eyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJv
cGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFRhZ2dlZFdyYXBwZXJDb25zdHJ1Y3Rvciks
IChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSkKIHsKQEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFRhZ2dlZFdyYXBw
ZXI6OnNfaW5mbyA9IHsgIlRlc3RUYWdnZWRXcmFwcGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFRhZ2dlZFdyYXBwZXI6OnNfaW5mbyA9IHsgIlRlc3RUYWdn
ZWRXcmFwcGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFRhZ2dlZFdyYXBwZXIpIH07CiAKIEpTVGVzdFRhZ2dlZFdyYXBwZXI6
OkpTVGVzdFRhZ2dlZFdyYXBwZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0VGFnZ2VkV3JhcHBlcj4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RUYWdnZWRXcmFwcGVyLCBTaWduZWRQdHJUcmFpdHM8VGVzdFRhZ2dl
ZFdyYXBwZXIsIFRlc3RUYWdnZWRXcmFwcGVyUHRyVGFnPj4oc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcAppbmRleCBjMmJjZWVhMTJmNjdh
ZjU2NTdkZTVlOWU4ZWFhYjdhZDVjY2MyYWMwLi5iYzE5YjgzZDg2NjNkOGU0ZmEyYWFmMWE2YmFk
NDcyZGQ0ODFhMWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5jcHAKQEAgLTE4Nyw3ICsxODcsNyBAQCB0
ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RU
eXBlZGVmc0RPTUNvbnN0cnVjdG9yOgogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNU
ZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0VHlwZWRlZnNET01Db25z
dHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBl
ZGVmc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFR5
cGVkZWZzRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RUeXBl
ZGVmc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yMzIsNyArMjMyLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlVGFi
bGVWYWx1ZXNbXSA9CiAgICAgeyAiY2FsbFdpdGhTZXF1ZW5jZVRoYXRSZXF1aXJlc0luY2x1ZGUi
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdFR5cGVkZWZzUHJvdG90eXBlRnVuY3Rpb25fY2FsbFdpdGhTZXF1ZW5jZVRoYXRSZXF1
aXJlc0luY2x1ZGUpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlw
ZWRlZnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnNQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZSkgfTsK
IAogdm9pZCBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMjQxLDcgKzI0MSw3IEBAIHZvaWQgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzOjpzX2luZm8gPSB7ICJU
ZXN0VHlwZWRlZnMiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0VHlwZWRlZnNUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmcykgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RUeXBlZGVmczo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIl9zLCAmQmFzZTo6c19p
bmZvLCAmSlNUZXN0VHlwZWRlZnNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RUeXBlZGVmcykgfTsKIAogSlNUZXN0VHlwZWRlZnM6OkpTVGVzdFR5cGVkZWZzKFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVz
dFR5cGVkZWZzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNj
b3BlLmNwcAppbmRleCAzZDk0N2EzMTlhNTBiMjQwYzFlNmRlMWU4NzM1ZmEzZmZkMjljMTEyLi5l
YzAxMjcxNGYwYzk3ODQzODY4NGY0ZWEwOWQ2Y2Y5ODFjNWJkNjYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2Vy
R2xvYmFsU2NvcGUuY3BwCkBAIC05OSw3ICs5OSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1dvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlIEpTV29ya2VyR2xvYmFsU2NvcGVUYWJsZSA9IHsgNiwgMTUsIHRydWUsIEpT
V29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVz
LCBKU1dvcmtlckdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJXb3Jr
ZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1dvcmtlckdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyOSw3ICsxMjksNyBAQCBzdGF0aWMg
Y29uc3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTV29ya2VyR2xvYmFsU2NvcGU6OmluZm8o
KSwgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1dvcmtlckdsb2Jh
bFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xv
YmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgJkpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtl
ckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2Nv
cGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTM4LDcgKzEzOCw3IEBAIHZvaWQgSlNXb3JrZXJH
bG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19T
VFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNX
b3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6
c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJH
bG9iYWxTY29wZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2lu
Zm8sICZKU1dvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNXb3JrZXJHbG9iYWxTY29wZSkgfTsKIAogSlNXb3JrZXJHbG9iYWxTY29wZTo6SlNXb3Jr
ZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V29ya2VyR2xv
YmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwgV1RG
TW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IGVkZjFmMTZm
YzFhMDA3N2MwMzc5NDFhMWJmZDIyZGJjZTI0NzUzMzQuLmY1Zjg1YWY0ODFkMWRjMjliNzk4OWNj
Nzc2YjY5ZWJmYTRhYWE3MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmNwcApAQCAt
NjgsNyArNjgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrbGV0R2xvYmFs
U2NvcGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNXb3Jr
bGV0R2xvYmFsU2NvcGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNXb3JrbGV0R2xvYmFsU2NvcGU6
OmluZm8oKSwgSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNXb3JrbGV0R2xvYmFs
U2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRH
bG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJX
b3JrbGV0R2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsK
IAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTV29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTk4LDcgKzk4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9
OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGUgPSB7IDEsIDEsIHRydWUsIEpTV29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29y
a2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTV29ya2xldEdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2xldEdsb2JhbFNj
b3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19p
bmZvLCAmSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiV29ya2xl
dEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxT
Y29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTA3LDcgKzEwNyw3IEBAIHZvaWQgSlNXb3Jr
bGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTV29ya2xldEdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAm
QmFzZTo6c19pbmZvLCAmSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1dvcmtsZXRHbG9iYWxTY29wZTo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAm
QmFzZTo6c19pbmZvLCAmSlNXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZSkgfTsKIAogSlNXb3JrbGV0R2xvYmFs
U2NvcGU6OkpTV29ya2xldEdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUs
IFJlZjxXb3JrbGV0R2xvYmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpTRXZlbnRUYXJnZXQodm0s
IHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29i
amMvT2JqQ1J1bnRpbWVPYmplY3QubW0KaW5kZXggZGIzNTgwYjhiNTFlYmVjZjNlOTgzYmIyMDAz
YWQyMzUwNzRlY2IxOS4uOWI2MzIyZjQ2MzRiNTk0ZDQzOTRmZWU5NDBkNGZhOTQ2MjJkNDAzOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3Qu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0K
QEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsK
IAotY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpDUnVu
dGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8g
T2JqQ1J1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lT2JqZWN0Il9zLCAmUnVu
dGltZU9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KE9iakNSdW50aW1lT2JqZWN0KSB9OwogCiBPYmpDUnVudGltZU9iamVjdDo6T2JqQ1J1bnRpbWVP
YmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPE9iamNJbnN0YW5jZT4m
JiBpbnN0YW5jZSkKICAgICA6IFJ1bnRpbWVPYmplY3Qodm0sIHN0cnVjdHVyZSwgaW5zdGFuY2Up
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
IGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQppbmRleCA1YjFh
ODM1M2Q5MDJlMWY4ZDczNjI4YzY5MGIzZjc0YjIwZjFjZmU0Li42YWY2ZWEyYjkzMDA0ZTc5YTI0
NmE0MzJiNWRlNTRhMjMwZTQ0NmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
b2JqYy9vYmpjX2luc3RhbmNlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29i
amNfaW5zdGFuY2UubW0KQEAgLTIwNSw3ICsyMDUsNyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAK
LWNvbnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRp
bWVNZXRob2QiLCAmUnVudGltZU1ldGhvZDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIE9i
akNSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJPYmpDUnVudGltZU1ldGhvZCJfcywgJlJ1bnRp
bWVNZXRob2Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShP
YmpDUnVudGltZU1ldGhvZCkgfTsKIAogSlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5jZTo6Z2V0TWV0
aG9kKEpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2Jq
Y19ydW50aW1lLm1tIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1t
CmluZGV4IGI0NmM1NmZkMDEwNTA4Njk1N2RjZTMyZGQ1ZjY2NjU2OWM0Y2E2ZDMuLjE1Y2I2YTA4
ZTVjMzVjMTcyMmNkZDM3Y2EzOGFjNWNhOTQ0ZmExNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KQEAgLTIxNSw3ICsyMTUsNyBAQCB1bnNpZ25lZCBpbnQg
T2JqY0FycmF5OjpnZXRMZW5ndGgoKSBjb25zdAogICAgIHJldHVybiBbX2FycmF5IGNvdW50XTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIE9iamNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAi
T2JqY0ZhbGxiYWNrT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShPYmpjRmFsbGJhY2tPYmplY3RJbXApIH07Citjb25zdCBDbGFzc0lu
Zm8gT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpzX2luZm8gPSB7ICJPYmpjRmFsbGJhY2tPYmplY3Qi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
T2JqY0ZhbGxiYWNrT2JqZWN0SW1wKSB9OwogCiBPYmpjRmFsbGJhY2tPYmplY3RJbXA6Ok9iamNG
YWxsYmFja09iamVjdEltcChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgT2JqY0luc3RhbmNlKiBpLCBjb25zdCBTdHJpbmcmIHByb3BlcnR5TmFtZSkK
ICAgICA6IEpTRGVzdHJ1Y3RpYmxlT2JqZWN0KGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCmluZGV4IGE5ZWE2NDI4YzVk
MTE3ZjZmZTI4YmQwY2MxMTI0ODMyNDE2ZjE5YzUuLmMwNWUzYTQwZTgwNTY2NWRjMGZkZWQwMmMz
MDUxOGVkOTYyODYwYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X2FycmF5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5jcHAK
QEAgLTM3LDcgKzM3LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1l
QXJyYXkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFJ1bnRpbWVBcnJheSkgfTsKK2NvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5m
byA9IHsgIlJ1bnRpbWVBcnJheSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9DVVNUT01fR0VUVEVSKGFycmF5TGVuZ3RoR2V0dGVyKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9ydW50aW1lX21ldGhvZC5jcHAKaW5kZXggNjU4ZjczY2FlOGE5MTBkMDBmY2M1ZGM2MjBlMjM3
MjFjM2I3OTZkMC4uZTE4ZWMyYzg4ZTE4NzBmOWQ2ZThlMzY0ODFkMTdlNWU5ZGUwMWMzNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCkBAIC00MSw3ICs0MSw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiB1c2luZyBuYW1lc3BhY2UgQmluZGluZ3M7CiAKLVdFQkNPUkVf
RVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1l
TWV0aG9kIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShSdW50aW1lTWV0aG9kKSB9OworV0VCQ09SRV9FWFBPUlQgY29uc3Qg
Q2xhc3NJbmZvIFJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVNZXRob2QiX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUnVudGltZU1ldGhvZCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oY2FsbFJ1bnRpbWVNZXRob2QpOwogc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIo
bWV0aG9kTGVuZ3RoR2V0dGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9y
dW50aW1lX29iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3Qu
Y3BwCmluZGV4IDlkM2YzYzVjNjkwNDdiMmU0MDBmYzI3MmI1YTc3ZThlZDMzMmI5YjcuLmIyNGYy
YWVmMTk0YmFkMjViM2E2MWViODhlNzQxNDdkY2U5MzEwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3J1bnRpbWVfb2JqZWN0LmNwcApAQCAtMzYsNyArMzYsNyBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIG5hbWVzcGFjZSBKU0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsKIAotV0VCQ09S
RV9FWFBPUlQgY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRp
bWVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFJ1bnRpbWVPYmplY3QpIH07CitXRUJDT1JFX0VYUE9SVCBjb25zdCBDbGFzc0luZm8g
UnVudGltZU9iamVjdDo6c19pbmZvID0geyAiUnVudGltZU9iamVjdCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9
OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb252ZXJ0UnVudGltZU9iamVj
dFRvUHJpbWl0aXZlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxSdW50
aW1lT2JqZWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJ
bWFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwCmluZGV4
IGY0Yjk4YmE2MmUxMTlhMDc3MTMxMmQzYjg4YzQ5MTkzNjgzNmVlMzcuLmFiZDJkNzU0MjMwMjky
ODQzMjE1NDk0NDAxMzViODAwNjZiNGI1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvQ3VzdG9tUGFpbnRJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9DdXN0b21Q
YWludEltYWdlLmNwcApAQCAtMTU2LDcgKzE1Niw3IEBAIEltYWdlRHJhd1Jlc3VsdCBDdXN0b21Q
YWludEltYWdlOjpkb0N1c3RvbVBhaW50KEdyYXBoaWNzQ29udGV4dCYgZGVzdENvbnRleHQsIGNv
CiAKICAgICBhdXRvJiBsZXhpY2FsR2xvYmFsT2JqZWN0ID0gZ2xvYmFsT2JqZWN0OwogICAgIEpT
Qzo6QXJnTGlzdCBub0FyZ3M7Ci0gICAgSlNDOjpKU1ZhbHVlIHRoaXNPYmplY3QgPSB7IEpTQzo6
Y29uc3RydWN0KCZsZXhpY2FsR2xvYmFsT2JqZWN0LCBwYWludENvbnN0cnVjdG9yLCBub0FyZ3Ms
ICJGYWlsZWQgdG8gY29uc3RydWN0IHBhaW50IGNsYXNzIikgfTsKKyAgICBKU0M6OkpTVmFsdWUg
dGhpc09iamVjdCA9IHsgSlNDOjpjb25zdHJ1Y3QoJmxleGljYWxHbG9iYWxPYmplY3QsIHBhaW50
Q29uc3RydWN0b3IsIG5vQXJncywgIkZhaWxlZCB0byBjb25zdHJ1Y3QgcGFpbnQgY2xhc3MiX3Mp
IH07CiAKICAgICBpZiAoVU5MSUtFTFkoc2NvcGUuZXhjZXB0aW9uKCkpKSB7CiAgICAgICAgIHJl
cG9ydEV4Y2VwdGlvbigmbGV4aWNhbEdsb2JhbE9iamVjdCwgc2NvcGUuZXhjZXB0aW9uKCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455538</attachid>
            <date>2022-03-23 12:29:11 -0700</date>
            <delta_ts>2022-03-23 16:04:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323122910.patch</filename>
            <type>text/plain</type>
            <size>667635</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZWZmMTExNjRkMDM0MTdkYTVhMzYyYjM0ZWQ4MjNlZmExZGE1MDA5Li4zODQ3ZmQxOTg5YTVkYTFm
NzI2MzMxZjc5NzVlNzQzZmNkMWNjNmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hh
ciopIGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAg
ICBleHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1
Y3RpbmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5n
IHRoZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21w
dXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVj
dDo6bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5j
cHA6CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkv
SlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0
aW9uLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFj
a09iamVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Nj
cmlwdC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJ
L0pTVHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFy
cmF5QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZm
ZXJBbmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRl
U3RydWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAg
ICAqIEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9y
Q3VzdG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAg
ICAgICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBB
UEkvZ2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGli
L0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoK
KyAgICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0
aW9uQ2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5k
bGVyOjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29k
ZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0
S2luZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5
dGVjb2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAg
ICAgICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2Rl
L1VubGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxD
b2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNw
cDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAg
ICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRl
Y29kZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rl
c0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNv
bXB1dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVs
ZXRlQnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5v
ZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgor
ICAgICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBk
ZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2Fs
bEZyYW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAg
ICAgIChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9v
dE1hcmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9y
L0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0
b3I6OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNl
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAg
ICAoSW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVz
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6
SW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Oklu
c3BlY3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0
YWJsZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAg
ICAqIGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgor
ICAgICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3Bw
OgorICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6Cisg
ICAgICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToK
KyAgICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFy
Z3VtZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAo
SlNDOjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAg
KiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBh
cnNlUHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVS
ZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRv
bWljc09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
QmlnSW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVD
YWNoZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFy
ZEVycm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoK
KyAgICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAg
ICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1
bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpT
Qzo6Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAg
ICAgICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVT
eW50YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToK
KyAgICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Q29uc3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICog
cnVudGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJT
ZXR0ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoK
KyAgICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFs
RXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5j
dGlvblNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291
cmNlQXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNv
dXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVu
ZGVyKToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVh
dGVJbnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5l
ZFByaXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNj
ZXNzRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJy
b3IpOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdT
bG93KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcElt
cGwuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAg
ICogcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6
OmluaXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpT
Qzo6SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZSk6CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsTnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpT
Qzo6aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6Cisg
ICAgICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0
aWFsaXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRp
dmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
SXRlcmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdt
ZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlh
bGl6ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9y
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNH
ZW5lcmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6Cisg
ICAgICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0Jv
dW5kRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJl
YW0pOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rp
b24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRU
RVIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAg
ICAgIChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXAp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9K
U0dlbmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgor
ICAgICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToK
KyAgICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRl
UmFuZ2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5
cGVGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAg
IChKU0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6
OmdlbmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVC
dXR0ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01h
cC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1
bGVMb2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2Jq
ZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
SlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1
bmN0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6
d3JhcFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Nj
cmlwdEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5n
OjpkdW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVk
QXJyYXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFr
TWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6
OkxpdGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KiBydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJh
dG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAg
ICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dp
dGhSYWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAg
ICAgIChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRv
U3RyaW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVy
YXRpb25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChK
U0M6OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5
VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBy
dW50aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBP
YmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1Jl
Z0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3Bl
ZEFyZ3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHA6CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxt
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6
OnRvTG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJv
bENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
U3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJh
dGlvbjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1w
b3JhbE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNt
YWxsZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFp
blRpbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6
OmxvZ1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAg
KiBydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFr
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dl
YWtTZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMv
RnVuY3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6
RnVuY3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cDoKKyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9v
bHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElP
Tik6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMpOgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAo
SlNDOjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUlu
c3BlY3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAg
ICAgICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJy
b3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6
CisgICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNt
R2xvYmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAq
IHdhc20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6
ZGlkQ29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5j
cHA6CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAg
ICAgICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pT
V2ViQXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlv
bi5jcHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAg
ICAgKEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAg
ICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpK
U1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAo
SlNDOjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1i
bHlNb2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoK
KyAgICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlD
b21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eUV4Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5j
cHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6Cisg
ICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
SlNDOjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlN
b2R1bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29y
ZC5jcHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXpl
RXhwb3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNt
L2pzL1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlX
cmFwcGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5j
dGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgor
ICAgICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVy
cm9yTWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMt
MjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXVtN
U1ZDXSBjdXN0b20gZ2V0dGVyIGNyZWF0aW9uIG5lZWRzIHRvIGluY2x1ZGUgY2xhc3NJbmZvIHNp
bmNlIE1TVkMgSUNGIGlzIG5vdCAic2FmZSIgdmFyaWFudApkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBjMDdl
MWFmMmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi42MTk2NGFjNzE2MjkxMTFlYzJhZTEzNTQ4N2Y5YTdm
NDZjZTE4YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUg
U3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5oOgor
ICAgICAgICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAoV1RG
OjpkaXNwbGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
OgorICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24pOgor
ICAgICAgICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6bnVt
YmVyVG9TdHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuaDoK
KwogMjAyMi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggMjI3ZDI2ZmQ4ODFkMDFkZTU1NjMzZjZhZTdhMjRjNzg5ODcyMjc2OC4uYjg0NTU0ZDA0
ZTYxYzk3YjYyNDI3MjE0MjEwNTNiYzM1MWRlNTU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMw
IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAg
ICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1
Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd1Byb3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lE
QlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
UmVtb3RlRE9NV2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5kb3dQ
cm94eS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2Uu
Y3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHA6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAg
IChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpDUnVu
dGltZU9iamVjdC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tOgor
ICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAgICAg
ICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVudGlt
ZV9hcnJheS5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAgICAg
ICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIyICBCcmFuZG9uIFN0
ZXdhcnQgIDxicmFuZG9uc3Rld2FydEBhcHBsZS5jb20+CiAKICAgICAgICAgV0JSIGVsZW1lbnQg
c2hvdWxkIHNldCBDbGVhciBwcm9wZXJ0eSB0byBOb25lCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwCmluZGV4IDNkY2VhNmNhMjZlMjhiZGUzOGY0
YjY5Mzk0NmVlMjkyMDMwN2E0ZGIuLjEyNWJjOTlhMWQ1MmY1OThiNmZkZDlkNmQ4MzBjNThkNDk3
OTFmNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkdsb2JhbE9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNBUElHbG9iYWxPYmplY3Q6OnNfaW5mbyA9
IHsgIkdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgSlNBUElHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQppbmRleCBiM2UyYWU0NDFjNGVjNTIzNDJh
ZmU5ZDU0OWU0YWU2MjM4Y2UzNDVmLi5lMDU1YWYyOTQzZTBmM2JlOTc3Mzc3YjZlZDk5YjQ0MjYx
MzhlNjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJR2xvYmFs
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmpl
Y3QubW0KQEAgLTUwLDcgKzUwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2Jh
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0g
eyAiR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmpl
Y3RNZXRob2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJs
ZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKQEAgLTkwLDcgKzkwLDcgQEAgc3Rh
dGljIEV4cGVjdGVkPFVSTCwgU3RyaW5nPiBjb21wdXRlVmFsaWRJbXBvcnRTcGVjaWZpZXIoY29u
c3QgVVJMJiBiYXNlLCBjb25zdAogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQobWFrZVN0
cmluZygiTW9kdWxlIHNwZWNpZmllcjogIl9zLCBzcGVjaWZpZXIsICIgZG9lcyBub3Qgc3RhcnQg
d2l0aCBcIi9cIiwgXCIuL1wiLCBvciBcIi4uL1wiLiBSZWZlcmVuY2VkIGZyb206ICJfcywgYmFz
ZS5zdHJpbmcoKSkpOwogCiAgICAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcvJykpIHsKLSAg
ICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKHsgfSwgImZpbGU6Ly8iKSwgc3BlY2lmaWVyKTsK
KyAgICAgICAgYWJzb2x1dGVVUkwgPSBVUkwoVVJMKCJmaWxlOi8vIl9zKSwgc3BlY2lmaWVyKTsK
ICAgICAgICAgaWYgKGFic29sdXRlVVJMLmlzVmFsaWQoKSkKICAgICAgICAgICAgIHJldHVybiBh
YnNvbHV0ZVVSTDsKICAgICB9CkBAIC0xNzcsMTIgKzE3NywxMiBAQCBKU0ludGVybmFsUHJvbWlz
ZSogSlNBUElHbG9iYWxPYmplY3Q6Om1vZHVsZUxvYWRlckZldGNoKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYgogCiAgICAgaWYgKFVOTElLRUxZKCFbY29udGV4dCBtb2R1bGVMb2FkZXJEZWxlZ2F0
ZV0pKSB7CiAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgcHJvbWlzZS0+cmVqZWN0
KGdsb2JhbE9iamVjdCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRl
ciBwcm92aWRlZC4iKSk7CisgICAgICAgIHByb21pc2UtPnJlamVjdChnbG9iYWxPYmplY3QsIGNy
ZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgIk5vIG1vZHVsZSBsb2FkZXIgcHJvdmlkZWQuIl9zKSk7
CiAgICAgICAgIHJldHVybiBwcm9taXNlOwogICAgIH0KIAogICAgIGF1dG8gc3Ryb25nUHJvbWlz
ZSA9IFN0cm9uZzxKU0ludGVybmFsUHJvbWlzZT4odm0sIHByb21pc2UpOwotICAgIGF1dG8qIHJl
c29sdmUgPSBKU05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwg
InJlc29sdmUiLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSog
Y2FsbEZyYW1lKSB7CisgICAgYXV0byogcmVzb2x2ZSA9IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAxLCAicmVzb2x2ZSJfcywgWz1dIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgewogICAgICAgICAvLyBUaGlz
IGNhcHR1cmVzIHRoZSBnbG9iYWxPYmplY3QgYnV0IHRoYXQncyBvayBiZWNhdXNlIG91ciBzdHJ1
Y3R1cmUga2VlcHMgaXQgYWxpdmUgYW55d2F5LgogICAgICAgICBWTSYgdm0gPSBnbG9iYWxPYmpl
Y3QtPnZtKCk7CiAgICAgICAgIEpTQ29udGV4dCAqY29udGV4dCA9IFtKU0NvbnRleHQgY29udGV4
dFdpdGhKU0dsb2JhbENvbnRleHRSZWY6dG9HbG9iYWxSZWYoZ2xvYmFsT2JqZWN0KV07CkBAIC0y
MTMsNyArMjEzLDcgQEAgSlNJbnRlcm5hbFByb21pc2UqIEpTQVBJR2xvYmFsT2JqZWN0Ojptb2R1
bGVMb2FkZXJGZXRjaChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2IKICAgICAgICAgcmV0dXJuIGVu
Y29kZWRKU1VuZGVmaW5lZCgpOwogICAgIH0pOwogCi0gICAgYXV0byogcmVqZWN0ID0gSlNOYXRp
dmVTdGRGdW5jdGlvbjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsICJyZWplY3QiLCBbPV0g
KEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpIHsKKyAgICBhdXRvKiByZWpl
Y3QgPSBKU05hdGl2ZVN0ZEZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJl
amVjdCJfcywgWz1dIChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAg
ICAgICAgIHN0cm9uZ1Byb21pc2UuZ2V0KCktPnJlamVjdChnbG9iYWxPYmplY3QsIGNhbGxGcmFt
ZS0+YXJndW1lbnQoMCkpOwogICAgICAgICByZXR1cm4gZW5jb2RlZEpTVW5kZWZpbmVkKCk7CiAg
ICAgfSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJVmFsdWVX
cmFwcGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElWYWx1ZVdyYXBwZXIu
Y3BwCmluZGV4IDIxYTdhOTdjMGVjZWRmOTAxMjU1MzAxZTc2Yzc4YzRmMmI0NDZkN2MuLjE3Nzhi
NjFkNjc1NWI5YTViNzZhNTQwNTY2MTU4MjM5NGI0ZWY2MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNBUElWYWx1ZVdyYXBwZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9BUEkvSlNBUElWYWx1ZVdyYXBwZXIuY3BwCkBAIC0yOCw2ICsyOCw2IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
SlNBUElWYWx1ZVdyYXBwZXIpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBUElWYWx1ZVdyYXBwZXI6
OnNfaW5mbyA9IHsgIkFQSSBXcmFwcGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0FQSVZhbHVlV3JhcHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiX3MsIG51bGxwdHIsIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBUElWYWx1ZVdyYXBwZXIpIH07
CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU0FQSVdyYXBwZXJPYmplY3QubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
QVBJV3JhcHBlck9iamVjdC5tbQppbmRleCA0NzczYjA3NDQ4NzM0OGE4N2VmYzgyMWQxMmIyYTkz
Y2U4NjEyMTk1Li5mYzg1ZWQ3YmRlYjZmOWY1MDIwNzFmZjNmYjlmNjNkZjI3YTgzOTJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbQor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbQpAQCAt
NzUsNyArNzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihzdGF0aWNGdW5j
dGlvbkdldHRlckpTQVBJV3JhcHBlck9iamVjdENhbGxiYWNrTwogCiBERUZJTkVfVklTSVRfQ0hJ
TERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3Jh
cHBlck9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja09i
amVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJPYmplY3Qi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
Q2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFj
a09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlIDw+IGNvbnN0IGJvb2wgSlNDYWxsYmFj
a09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIAog
dGVtcGxhdGUgPD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxs
YmFja0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a0NvbnN0cnVjdG9yLmNwcAppbmRleCA0ODc3Nzg4OTMwZWU0MmZkYWIzNTg3NTlkYmY3MTQyZjAz
NmEzM2JhLi5iYTA1NjY1Yzk4OWE4NTVkNWU5NTgyMmVjNDlmZTIwZTkzNDFmNzNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuY3Bw
CkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJDYWxsYmFja0NvbnN0cnVjdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Nh
bGxiYWNrQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0NvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJDYWxsYmFja0NvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tDb25zdHJ1Y3Rv
cikgfTsKIAogSlNDYWxsYmFja0NvbnN0cnVjdG9yOjpKU0NhbGxiYWNrQ29uc3RydWN0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTQ2xhc3NS
ZWYganNDbGFzcywgSlNPYmplY3RDYWxsQXNDb25zdHJ1Y3RvckNhbGxiYWNrIGNhbGxiYWNrKQog
ICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAppbmRleCAxMjg2NzA5YzA4
YzJhMWNhYTFkM2MzOWI3OTYwY2M2Yjc5MTcxM2RiLi5jOTk2NTAxOWQyYzAyOTc1NjY2ZjcyZDhl
ZjgyM2RiZmRlNzQyYjE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2Fs
bGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2FsbGJhY2tGdW5jdGlvbiJf
cywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGNhbGxKU0NhbGxiYWNrRnVuY3Rpb24pOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmNwcAppbmRleCA0NDRjMTUwMzQ1MWRkOTc5
NTMwYTE4NWNkYTM4NmVlMWQxYzY3YmI4Li4xNWRhZjNjMmZjYzQ3ZTU5MmYxZDY0MjEyNmFkN2Zh
OGI1NzIzOGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJh
Y2tPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09i
amVjdC5jcHAKQEAgLTQ1LDggKzQ1LDggQEAgREVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9E
SUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFja09iamVjdDxKU05vbkZpbmFsT2JqZWMKIERFRklO
RV9WSVNJVF9DSElMRFJFTl9XSVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmpl
Y3Q8SlNHbG9iYWxPYmplY3Q+KTsKIAogLy8gRGVmaW5lIHRoZSB0d28gdHlwZXMgb2YgSlNDYWxs
YmFja09iamVjdHMgd2Ugc3VwcG9ydC4KLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0Nh
bGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNDYWxsYmFja09iamVjdCkgfTsKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tHbG9iYWxPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxs
YmFja09iamVjdDxKU05vbkZpbmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tPYmplY3Qi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNDYWxsYmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tHbG9iYWxPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNr
T2JqZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIHRlbXBs
YXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6bmVlZHNE
ZXN0cnVjdGlvbiA9IHRydWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNDYWxsYmFja09iamVjdEZ1bmN0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25zLmgKaW5kZXggYzc4NGRmYmE5NDA2OTY5MjQ5OWVj
NzM2OGFlMWFjYmViMWM3OTRkYi4uNTFkYTc3N2FkMjQ1NDU4NTE4MjNjMWQ3MzY5N2I1N2RlMjBh
ZTA3ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2Jq
ZWN0RnVuY3Rpb25zLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0RnVuY3Rpb25zLmgKQEAgLTIxMSw3ICsyMTEsNyBAQCBib29sIEpTQ2FsbGJhY2tPYmpl
Y3Q8UGFyZW50Pjo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEpTR2xvYmFs
T2JqZQogICAgIGlmIChwcm9wZXJ0eU5hbWUudWlkKCkgPT0gdm0ucHJvcGVydHlOYW1lcy0+dG9T
dHJpbmdUYWdTeW1ib2wuaW1wbCgpKSB7CiAgICAgICAgIFN0cmluZyBjbGFzc05hbWUgPSB0aGlz
T2JqZWN0LT5jbGFzc1JlZigpLT5jbGFzc05hbWUoKTsKICAgICAgICAgaWYgKGNsYXNzTmFtZS5p
c0VtcHR5KCkpCi0gICAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzT2JqZWN0LT5jbGFzc05hbWUo
dm0pOworICAgICAgICAgICAgY2xhc3NOYW1lID0gIHRoaXNPYmplY3QtPmNsYXNzTmFtZSh2bSk7
CiAgICAgICAgIHNsb3Quc2V0VmFsdWUodGhpc09iamVjdCwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIGpzU3RyaW5nKHZtLCBXVEZNb3ZlKGNsYXNz
TmFtZSkpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9KU1NjcmlwdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNTY3JpcHQubW0KaW5kZXggODUwMzQ3YjdjZDcxMjYwYTBiZjY1OTA3NTBhOWE0NTBkYzMx
MWMxYy4uNmIwMjA2ZTAzN2YzMjNjMzJmOTkxMzQyMjFhZGFkYWIzNzVmYTBlMyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1NjcmlwdC5tbQorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0Lm1tCkBAIC0xNTQsOCArMTU0LDcgQEAgLSAodm9pZCly
ZWFkQ2FjaGUKICAgICBpZiAoIW1fY2FjaGVQYXRoKQogICAgICAgICByZXR1cm47CiAKLSAgICBO
U1N0cmluZyAqY2FjaGVQYXRoU3RyaW5nID0gW21fY2FjaGVQYXRoIHBhdGhdOwotICAgIGNvbnN0
IGNoYXIqIGNhY2hlRmlsZW5hbWUgPSBjYWNoZVBhdGhTdHJpbmcuVVRGOFN0cmluZzsKKyAgICBT
dHJpbmcgY2FjaGVGaWxlbmFtZSA9IFttX2NhY2hlUGF0aCBwYXRoXTsKIAogICAgIGF1dG8gZmQg
PSBGaWxlU3lzdGVtOjpvcGVuQW5kTG9ja0ZpbGUoY2FjaGVGaWxlbmFtZSwgRmlsZVN5c3RlbTo6
RmlsZU9wZW5Nb2RlOjpSZWFkLCB7RmlsZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpFeGNsdXNpdmUs
IEZpbGVTeXN0ZW06OkZpbGVMb2NrTW9kZTo6Tm9uYmxvY2tpbmd9KTsKICAgICBpZiAoIUZpbGVT
eXN0ZW06OmlzSGFuZGxlVmFsaWQoZmQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5
cGVkQXJyYXkuY3BwCmluZGV4IGFiYTZkZjZlMmEzMTgzOGU3Mzg4NDlkMjhiNzI5MmUyMTMyYTRl
OTEuLjkzZWU4ODRjNWM5OWRlYjcwYmI0MTlkYjg2YTJjOTVlYzExMmRjZDMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNUeXBlZEFycmF5LmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTVHlwZWRBcnJheS5jcHAKQEAgLTIxOSw3ICsyMTksNyBAQCBK
U09iamVjdFJlZiBKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyKEpTQ29udGV4
dFJlZiBjdHgsIEpTVHlwZWRBcnJheQogCiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBq
c0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAg
IGlmICghanNCdWZmZXIpIHsKLSAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBj
cmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhB
cnJheUJ1ZmZlciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0Iikp
OworICAgICAgICBzZXRFeGNlcHRpb24oY3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsICJKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVj
dHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAgICAgfQogCkBAIC0yNDQsNyArMjQ0LDcgQEAgSlNPYmplY3RSZWYgSlNP
YmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZlckFuZE9mZnNldChKU0NvbnRleHRSZWYg
Y3R4LCBKU1QKIAogICAgIEpTQXJyYXlCdWZmZXIqIGpzQnVmZmVyID0ganNEeW5hbWljQ2FzdDxK
U0FycmF5QnVmZmVyKj4odm0sIHRvSlMoanNCdWZmZXJSZWYpKTsKICAgICBpZiAoIWpzQnVmZmVy
KSB7Ci0gICAgICAgIHNldEV4Y2VwdGlvbihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIgZXhw
ZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJyYXkgQnVmZmVyIG9iamVjdCIpKTsKKyAgICAgICAgc2V0
RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAi
SlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZlciBleHBlY3RzIGJ1ZmZlciB0byBi
ZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0Il9zKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwog
ICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlLm1t
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlLm1tCmluZGV4IGQzYWQwODBlMWRk
ZjRmZTZlZmJhOTEzNWJhMjY4NzZjNzdkY2JjMjYuLmYxMmEyYzQ5NTNmMDAzMmRmYjRiNzJmNjhm
ZjgwZmVkZGI2OTAzNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNW
YWx1ZS5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KQEAgLTEx
NzksNyArMTE3OSw3IEBAIHN0YXRpYyBTdHJ1Y3RIYW5kbGVycyogY3JlYXRlU3RydWN0SGFuZGxl
ck1hcCgpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIC8vIFRyeSB0byBmaW5kIGEgbWF0
Y2hpbmcgdmFsdWVXaXRoPEZvbz46Y29udGV4dDogbWV0aG9kLgogICAgICAgICBhdXRvIHR5cGUg
PSBhZG9wdFN5c3RlbTxjaGFyW10+KG1ldGhvZF9jb3B5UmV0dXJuVHlwZShtZXRob2QpKTsKLSAg
ICAgICAgU3RydWN0SGFuZGxlcnM6Oml0ZXJhdG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+Zmlu
ZCh0eXBlLmdldCgpKTsKKyAgICAgICAgU3RydWN0SGFuZGxlcnM6Oml0ZXJhdG9yIGl0ZXIgPSBz
dHJ1Y3RIYW5kbGVycy0+ZmluZChTdHJpbmcgeyB0eXBlLmdldCgpIH0pOwogICAgICAgICBpZiAo
aXRlciA9PSBzdHJ1Y3RIYW5kbGVycy0+ZW5kKCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgIFN0cnVjdFRhZ0hhbmRsZXImIGhhbmRsZXIgPSBpdGVyLT52YWx1ZTsKQEAgLTEyMTcsNyAr
MTIxNyw3IEBAIHN0YXRpYyBTdHJ1Y3RUYWdIYW5kbGVyKiBoYW5kZXJGb3JTdHJ1Y3RUYWcoY29u
c3QgY2hhciogZW5jb2RlZFR5cGUpCiAKICAgICBzdGF0aWMgU3RydWN0SGFuZGxlcnMqIHN0cnVj
dEhhbmRsZXJzID0gY3JlYXRlU3RydWN0SGFuZGxlck1hcCgpOwogCi0gICAgU3RydWN0SGFuZGxl
cnM6Oml0ZXJhdG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+ZmluZChlbmNvZGVkVHlwZSk7Cisg
ICAgU3RydWN0SGFuZGxlcnM6Oml0ZXJhdG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+ZmluZChT
dHJpbmcgeyBlbmNvZGVkVHlwZSB9KTsKICAgICBpZiAoaXRlciA9PSBzdHJ1Y3RIYW5kbGVycy0+
ZW5kKCkpCiAgICAgICAgIHJldHVybiAwOwogICAgIHJldHVybiAmaXRlci0+dmFsdWU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTV3JhcHBlck1hcC5tbSBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tCmluZGV4IDcwZGVmYzAwNDAzZmEx
YmE1MGZhNTJjYjU1OTVjMmMxNmI3YzYyZGMuLmY4MjFkZjhlM2ViZWQ1N2Y1NDBjZDJmMDFkNjRl
Yzk2ZGNmYTg2Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFw
cGVyTWFwLm1tCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1t
CkBAIC00MzgsNyArNDM4LDcgQEAgc3RhdGljIEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3Ry
dWN0b3JGb3JDdXN0b21DbGFzcyhKU0NvbnRleHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyKiBuYW1lID0gc2VsX2dldE5hbWUoc2VsZWN0b3IpOwogICAgICAgICAg
ICAgICAgIGlmICghaXNJbml0RmFtaWx5TWV0aG9kKEAobmFtZSkpKQogICAgICAgICAgICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgaW5pdFRhYmxlLnNldChuYW1lLCAoX19icmlk
Z2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsKKyAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KFN0
cmluZyB7IG5hbWUgfSwgKF9fYnJpZGdlIENGVHlwZVJlZilwcm90b2NvbCk7CiAgICAgICAgICAg
ICB9KTsKICAgICAgICAgfSk7CiAgICAgfQpAQCAtNDUxLDcgKzQ1MSw3IEBAIHN0YXRpYyBKU0M6
OkpTT2JqZWN0KiBhbGxvY2F0ZUNvbnN0cnVjdG9yRm9yQ3VzdG9tQ2xhc3MoSlNDb250ZXh0ICpj
b250ZXh0LCBjb25zCiAgICAgICAgIGZvckVhY2hNZXRob2RJbkNsYXNzKGN1cnJlbnRDbGFzcywg
XihNZXRob2QgbWV0aG9kKSB7CiAgICAgICAgICAgICBTRUwgc2VsZWN0b3IgPSBtZXRob2RfZ2V0
TmFtZShtZXRob2QpOwogICAgICAgICAgICAgY29uc3QgY2hhciogbmFtZSA9IHNlbF9nZXROYW1l
KHNlbGVjdG9yKTsKLSAgICAgICAgICAgIGF1dG8gaXRlciA9IGluaXRUYWJsZS5maW5kKG5hbWUp
OworICAgICAgICAgICAgYXV0byBpdGVyID0gaW5pdFRhYmxlLmZpbmQoU3RyaW5nIHsgbmFtZSB9
KTsKIAogICAgICAgICAgICAgaWYgKGl0ZXIgPT0gaW5pdFRhYmxlLmVuZCgpKQogICAgICAgICAg
ICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2Jq
Q0NhbGxiYWNrRnVuY3Rpb24ubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxs
YmFja0Z1bmN0aW9uLm1tCmluZGV4IGRmNzYwYzYyODY2OGE0ZjQ2ZTg5ZDUzMzYwOTNkMWNhNWMw
MjQ0ZGMuLjhkOGUzNTE2OWQ5NjM0NjkyMzdlNDM5NWQ2MjkzMzMzNGIyNmZkNWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0KKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbQpAQCAt
NTMzLDcgKzUzMyw3IEBAIHN0YXRpYyBKU09iamVjdFJlZiBvYmpDQ2FsbGJhY2tGdW5jdGlvbkNh
bGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiBjYWxsZXJDb250CiAgICAgcmV0dXJuIGNvbnN0
X2Nhc3Q8SlNPYmplY3RSZWY+KHJlc3VsdCk7CiB9CiAKLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIE9i
akNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDQ2FsbGJh
Y2tGdW5jdGlvbikgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIE9iakNDYWxsYmFja0Z1bmN0aW9u
OjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNDYWxsYmFja0Z1bmN0aW9uKSB9Owog
CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsT2JqQ0NhbGxiYWNrRnVuY3Rp
b24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0T2JqQ0NhbGxi
YWNrRnVuY3Rpb24pOwpAQCAtNTc0LDEwICs1NzQsMTAgQEAgdm9pZCBPYmpDQ2FsbGJhY2tGdW5j
dGlvbjo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCiBTdHJpbmcgT2JqQ0NhbGxiYWNrRnVuY3Rpb25J
bXBsOjpuYW1lKCkKIHsKICAgICBpZiAobV90eXBlID09IENhbGxiYWNrSW5pdE1ldGhvZCkKLSAg
ICAgICAgcmV0dXJuIGNsYXNzX2dldE5hbWUobV9pbnN0YW5jZUNsYXNzLmdldCgpKTsKKyAgICAg
ICAgcmV0dXJuIFN0cmluZyB7IGNsYXNzX2dldE5hbWUobV9pbnN0YW5jZUNsYXNzLmdldCgpKSB9
OwogICAgIC8vIEZJWE1FOiBNYXliZSB3ZSBjb3VsZCBzdXBwb3J0IGhhdmluZyB0aGUgc2VsZWN0
b3IgYXMgdGhlIG5hbWUgb2YgdGhlIG5vbi1pbml0IAogICAgIC8vIGZ1bmN0aW9ucyB0byBtYWtl
IGl0IGEgYml0IG1vcmUgdXNlci1mcmllbmRseSBmcm9tIHRoZSBKUyBzaWRlPwotICAgIHJldHVy
biAiIjsKKyAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKIH0KIAogSlNWYWx1ZVJlZiBPYmpDQ2Fs
bGJhY2tGdW5jdGlvbkltcGw6OmNhbGwoSlNDb250ZXh0ICpjb250ZXh0LCBKU09iamVjdFJlZiB0
aGlzT2JqZWN0LCBzaXplX3QgYXJndW1lbnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVu
dHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlckdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcAppbmRleCAz
ZGJkOWQzNTNkNmViZGFiNmYyM2M4MjkxMjc3ZTUzNjY2N2MwNjhmLi45YTU4NzJjYjE3NzViMGMx
ODk3NmM4MTZhMDlmM2E4ZTAxNzJiYTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcApAQCAtNjIs
NyArNjIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihzdGF0aWNGdW5jdGlv
bkdldHRlckpTQVBJV3JhcHBlckdsb2JhbE9iamVjdENhbAogCiBERUZJTkVfVklTSVRfQ0hJTERS
RU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBl
ckdsb2JhbE9iamVjdD4pOwogCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFj
a09iamVjdDxKU0FQSVdyYXBwZXJHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBw
ZXJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFz
c0luZm8gSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJHbG9iYWxPYmplY3Q+OjpzX2luZm8g
PSB7ICJKU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBs
YXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVj
dD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIu
Y3BwCmluZGV4IDNlYWY4ZjY3OTBhZTc4NWEzZGQ1MjNhYjlhZTQxNzRkMWJkYjI4ZDQuLmYwNTk5
YzEwZjQ0MzkzNjY2MmNlZDU2YjE2ODU3NjUwYjdiNTg5MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0FQSVdyYXBwZXJPYmplY3RHTGliLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xpYi5jcHAK
QEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIoc3RhdGlj
RnVuY3Rpb25HZXR0ZXJKU0FQSVdyYXBwZXJPYmplY3RDYWxsYmFja08KIAogREVGSU5FX1ZJU0lU
X0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFja09iamVjdDxKU0FQ
SVdyYXBwZXJPYmplY3Q+KTsKIAotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJh
Y2tPYmplY3Q8SlNBUElXcmFwcGVyT2JqZWN0Pjo6c19pbmZvID0geyAiSlNBUElXcmFwcGVyT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0NhbGxiYWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2Fs
bGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyT2JqZWN0Pjo6c19pbmZvID0geyAiSlNBUElXcmFwcGVy
T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTQ2FsbGJhY2tPYmplY3QpIH07CiB0ZW1wbGF0ZTw+IGNvbnN0IGJvb2wgSlNDYWxs
YmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsK
IAogdGVtcGxhdGUgPD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xp
Yi9KU0NDYWxsYmFja0Z1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xp
Yi9KU0NDYWxsYmFja0Z1bmN0aW9uLmNwcAppbmRleCAwODEwNzdhNGMwNDNjY2I0OGFlYjI5YjAx
ZjhmZmMwZDhhZmJlMTNhLi5lZDdmMWE3MzlmMDViZDg4MzdmZDYzOWY2ODQ2ZmVmNjA3NWNhZTg2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNDQ2FsbGJhY2tG
dW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ0NhbGxi
YWNrRnVuY3Rpb24uY3BwCkBAIC01MCw3ICs1MCw3IEBAIHN0YXRpYyBKU09iamVjdFJlZiBjYWxs
QXNDb25zdHJ1Y3RvcihKU0NvbnRleHRSZWYgY2FsbGVyQ29udGV4dCwgSlNPYmplY3RSZWYgY29u
CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEpTQ0NhbGxiYWNrRnVuY3Rpb24qPih0b0pTKGNvbnN0
cnVjdG9yKSktPmNvbnN0cnVjdChjYWxsZXJDb250ZXh0LCBhcmd1bWVudENvdW50LCBhcmd1bWVu
dHMsIGV4Y2VwdGlvbik7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0NDYWxsYmFja0Z1bmN0aW9u
OjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0
aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkNhbGxiYWNrRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEpTQ0NhbGxiYWNrRnVuY3Rpb24p
Owogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNDQ2FsbGJhY2tG
dW5jdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pT
T05QYXJzZVRlc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFy
c2VUZXN0LmNwcAppbmRleCBhMDYyYWFiN2VkYzczZDViNTIxN2E1NWE5ZWY4NWVhNjZkYzc4MmZi
Li5kZjdiZmRiYjAyMTBiMjZjMDBkYzc4YzMxNjEwMDhmY2I2ZWI5ZWFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pTT05QYXJzZVRlc3QuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKQEAgLTQzLDEz
ICs0MywxMyBAQCBpbnQgdGVzdEpTT05QYXJzZSgpCiAgICAgSlNMb2NrSG9sZGVyIGxvY2tlcih2
bS5nZXQoKSk7CiAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IEpTR2xvYmFsT2Jq
ZWN0OjpjcmVhdGUoKnZtLCBKU0dsb2JhbE9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKCp2bSwganNO
dWxsKCkpKTsKICAgICAKLSAgICBKU1ZhbHVlIHYwID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwg
IiIpOwotICAgIEpTVmFsdWUgdjEgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiIpOwor
ICAgIEpTVmFsdWUgdjAgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIl9zKTsKKyAgICBKU1Zh
bHVlIHYxID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIiMkJV4iX3MpOwogICAgIEpTVmFsdWUg
djIgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCBTdHJpbmcoKSk7CiAgICAgVUNoYXIgZW1wdHlV
Q2hhckFycmF5WzFdID0geyAnXDAnIH07CiAgICAgSlNWYWx1ZSB2MyA9IEpTT05QYXJzZShnbG9i
YWxPYmplY3QsIFN0cmluZyhlbXB0eVVDaGFyQXJyYXksIDApKTsKICAgICBKU1ZhbHVlIHY0Owot
ICAgIEpTVmFsdWUgdjUgPSBKU09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiMTIzIik7CisgICAgSlNW
YWx1ZSB2NSA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsICIxMjMiX3MpOwogICAgIAogICAgIGZh
aWxlZCA9IGZhaWxlZCB8fCAodjAgIT0gdjEpOwogICAgIGZhaWxlZCA9IGZhaWxlZCB8fCAodjEg
IT0gdjIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2JpbmRpbmdzL1Njcmlw
dEZ1bmN0aW9uQ2FsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3MvU2NyaXB0
RnVuY3Rpb25DYWxsLmNwcAppbmRleCA3ZmYzZTYxZTQyNTIzNmE4ZTY1NjU1YWI5MGUzYTlkNDc5
ZTlhZjQyLi4zYWE5MjUzZDMzNDg3MDAzZTk3MzdkYmQyMjBiODBhNGFhYjkzYTk5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3MvU2NyaXB0RnVuY3Rpb25DYWxsLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3MvU2NyaXB0RnVuY3Rpb25DYWxs
LmNwcApAQCAtNTEsNyArNTEsNyBAQCB2b2lkIFNjcmlwdENhbGxBcmd1bWVudEhhbmRsZXI6OmFw
cGVuZEFyZ3VtZW50KGNvbnN0IGNoYXIqIGFyZ3VtZW50KQogewogICAgIFZNJiB2bSA9IG1fZ2xv
YmFsT2JqZWN0LT52bSgpOwogICAgIEpTTG9ja0hvbGRlciBsb2NrKHZtKTsKLSAgICBtX2FyZ3Vt
ZW50cy5hcHBlbmQoanNTdHJpbmcodm0sIGFyZ3VtZW50KSk7CisgICAgbV9hcmd1bWVudHMuYXBw
ZW5kKGpzU3RyaW5nKHZtLCBTdHJpbmcgeyBhcmd1bWVudCB9KSk7CiB9CiAKIHZvaWQgU2NyaXB0
Q2FsbEFyZ3VtZW50SGFuZGxlcjo6YXBwZW5kQXJndW1lbnQoSlNWYWx1ZSBhcmd1bWVudCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAKaW5kZXggMDk4YWVk
OTM1YTY4ZjdkNjY4N2JkMzUyMzI1MzA3N2YzMWVkMTlmMi4uNmQ5ZDhiNTFlMTE5ZGJjMDc4MDkx
MTRlMWNiMTBlZGI2NzI4NDU3OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL0NvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L0NvZGVCbG9jay5jcHAKQEAgLTk2LDcgKzk2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBERUZJTkVf
QUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKENvZGVCbG9ja1JhcmVEYXRhKTsKIAogY29u
c3QgQ2xhc3NJbmZvIENvZGVCbG9jazo6c19pbmZvID0gewotICAgICJDb2RlQmxvY2siLCBudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLAorICAgICJDb2RlQmxvY2siX3MsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShDb2RlQmxvY2spCiB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKaW5k
ZXggZmFhNTE5NTEzNDY0OGM2NjI1ZjdhYzU5NDM5MTI3NGRkMDRiOWJiMC4uNjBlOWQ4ODY0N2Qz
MjU0YTkwMmYwMzZhODliMTBjOTAzYmQyZGYwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2J5dGVjb2RlL0V2YWxDb2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNw
YWNlIEpTQyB7CiAKIGNvbnN0IENsYXNzSW5mbyBFdmFsQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0g
ICAgIkV2YWxDb2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAorICAg
ICJFdmFsQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAg
IENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbENvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tF
ZGdlLmNwcAppbmRleCBiZjlkNmZlNDFjZjg1NzgxNDBkZmFmM2RjZDdkZWFkZDdhMzYzMzk0Li4z
NmRkYjdhNjY1Nzk5YjY3NzY3YjMwNGZlNWYzNTg5NDdhZDQ3OTM2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9j
a0VkZ2UuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZTo6c19pbmZvID0geyAiRXhlY3V0YWJs
ZVRvQ29kZUJsb2NrRWRnZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
eGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlOjpzX2luZm8gPSB7ICJFeGVjdXRhYmxlVG9Db2RlQmxv
Y2tFZGdlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEV4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2UpIH07CiAKIFN0cnVjdHVyZSogRXhlY3V0YWJsZVRv
Q29kZUJsb2NrRWRnZTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0V4aXRLaW5kLmNwcAppbmRleCBkZTZmZWJmODhhMzRiOTA3M2QwYjc3NzNiNzFk
YzI5NDA4MzNlMzgxLi44OTQwMjYwYzg5OTUxMjMyMjdhYTgzNjZkZTc0MDBjMGFlNjlkN2NlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5jcHAKQEAgLTMxLDcw
ICszMSw3MCBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgY2hhciogZXhpdEtpbmRUb1N0
cmluZyhFeGl0S2luZCBraW5kKQorQVNDSUlMaXRlcmFsIGV4aXRLaW5kVG9TdHJpbmcoRXhpdEtp
bmQga2luZCkKIHsKICAgICBzd2l0Y2ggKGtpbmQpIHsKICAgICBjYXNlIEV4aXRLaW5kVW5zZXQ6
Ci0gICAgICAgIHJldHVybiAiVW5zZXQiOworICAgICAgICByZXR1cm4gIlVuc2V0Il9zOwogICAg
IGNhc2UgQmFkVHlwZToKLSAgICAgICAgcmV0dXJuICJCYWRUeXBlIjsKKyAgICAgICAgcmV0dXJu
ICJCYWRUeXBlIl9zOwogICAgIGNhc2UgQmFkQ29uc3RhbnRWYWx1ZToKLSAgICAgICAgcmV0dXJu
ICJCYWRDb25zdGFudFZhbHVlIjsKKyAgICAgICAgcmV0dXJuICJCYWRDb25zdGFudFZhbHVlIl9z
OwogICAgIGNhc2UgQmFkSWRlbnQ6Ci0gICAgICAgIHJldHVybiAiQmFkSWRlbnQiOworICAgICAg
ICByZXR1cm4gIkJhZElkZW50Il9zOwogICAgIGNhc2UgQmFkRXhlY3V0YWJsZToKLSAgICAgICAg
cmV0dXJuICJCYWRFeGVjdXRhYmxlIjsKKyAgICAgICAgcmV0dXJuICJCYWRFeGVjdXRhYmxlIl9z
OwogICAgIGNhc2UgQmFkQ2FjaGU6Ci0gICAgICAgIHJldHVybiAiQmFkQ2FjaGUiOworICAgICAg
ICByZXR1cm4gIkJhZENhY2hlIl9zOwogICAgIGNhc2UgQmFkQ29uc3RhbnRDYWNoZToKLSAgICAg
ICAgcmV0dXJuICJCYWRDb25zdGFudENhY2hlIjsKKyAgICAgICAgcmV0dXJuICJCYWRDb25zdGFu
dENhY2hlIl9zOwogICAgIGNhc2UgQmFkSW5kZXhpbmdUeXBlOgotICAgICAgICByZXR1cm4gIkJh
ZEluZGV4aW5nVHlwZSI7CisgICAgICAgIHJldHVybiAiQmFkSW5kZXhpbmdUeXBlIl9zOwogICAg
IGNhc2UgQmFkVHlwZUluZm9GbGFnczoKLSAgICAgICAgcmV0dXJuICJCYWRUeXBlSW5mb0ZsYWdz
IjsKKyAgICAgICAgcmV0dXJuICJCYWRUeXBlSW5mb0ZsYWdzIl9zOwogICAgIGNhc2UgT3ZlcmZs
b3c6Ci0gICAgICAgIHJldHVybiAiT3ZlcmZsb3ciOworICAgICAgICByZXR1cm4gIk92ZXJmbG93
Il9zOwogICAgIGNhc2UgTmVnYXRpdmVaZXJvOgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlWmVy
byI7CisgICAgICAgIHJldHVybiAiTmVnYXRpdmVaZXJvIl9zOwogICAgIGNhc2UgTmVnYXRpdmVJ
bmRleDoKLSAgICAgICAgcmV0dXJuICJOZWdhdGl2ZUluZGV4IjsKKyAgICAgICAgcmV0dXJuICJO
ZWdhdGl2ZUluZGV4Il9zOwogICAgIGNhc2UgSW50NTJPdmVyZmxvdzoKLSAgICAgICAgcmV0dXJu
ICJJbnQ1Mk92ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJJbnQ1Mk92ZXJmbG93Il9zOwogICAg
IGNhc2UgU3RvcmVUb0hvbGU6Ci0gICAgICAgIHJldHVybiAiU3RvcmVUb0hvbGUiOworICAgICAg
ICByZXR1cm4gIlN0b3JlVG9Ib2xlIl9zOwogICAgIGNhc2UgTG9hZEZyb21Ib2xlOgotICAgICAg
ICByZXR1cm4gIkxvYWRGcm9tSG9sZSI7CisgICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIl9z
OwogICAgIGNhc2UgT3V0T2ZCb3VuZHM6Ci0gICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiOwor
ICAgICAgICByZXR1cm4gIk91dE9mQm91bmRzIl9zOwogICAgIGNhc2UgSW5hZGVxdWF0ZUNvdmVy
YWdlOgotICAgICAgICByZXR1cm4gIkluYWRlcXVhdGVDb3ZlcmFnZSI7CisgICAgICAgIHJldHVy
biAiSW5hZGVxdWF0ZUNvdmVyYWdlIl9zOwogICAgIGNhc2UgQXJndW1lbnRzRXNjYXBlZDoKLSAg
ICAgICAgcmV0dXJuICJBcmd1bWVudHNFc2NhcGVkIjsKKyAgICAgICAgcmV0dXJuICJBcmd1bWVu
dHNFc2NhcGVkIl9zOwogICAgIGNhc2UgRXhvdGljT2JqZWN0TW9kZToKLSAgICAgICAgcmV0dXJu
ICJFeG90aWNPYmplY3RNb2RlIjsKKyAgICAgICAgcmV0dXJuICJFeG90aWNPYmplY3RNb2RlIl9z
OwogICAgIGNhc2UgVmFyYXJnc092ZXJmbG93OgotICAgICAgICByZXR1cm4gIlZhcmFyZ3NPdmVy
ZmxvdyI7CisgICAgICAgIHJldHVybiAiVmFyYXJnc092ZXJmbG93Il9zOwogICAgIGNhc2UgVERa
RmFpbHVyZToKLSAgICAgICAgcmV0dXJuICJURFpGYWlsdXJlIjsKKyAgICAgICAgcmV0dXJuICJU
RFpGYWlsdXJlIl9zOwogICAgIGNhc2UgSG9pc3RpbmdGYWlsZWQ6Ci0gICAgICAgIHJldHVybiAi
SG9pc3RpbmdGYWlsZWQiOworICAgICAgICByZXR1cm4gIkhvaXN0aW5nRmFpbGVkIl9zOwogICAg
IGNhc2UgVW5jb3VudGFibGU6Ci0gICAgICAgIHJldHVybiAiVW5jb3VudGFibGUiOworICAgICAg
ICByZXR1cm4gIlVuY291bnRhYmxlIl9zOwogICAgIGNhc2UgVW5jb3VudGFibGVJbnZhbGlkYXRp
b246Ci0gICAgICAgIHJldHVybiAiVW5jb3VudGFibGVJbnZhbGlkYXRpb24iOworICAgICAgICBy
ZXR1cm4gIlVuY291bnRhYmxlSW52YWxpZGF0aW9uIl9zOwogICAgIGNhc2UgV2F0Y2hkb2dUaW1l
ckZpcmVkOgotICAgICAgICByZXR1cm4gIldhdGNoZG9nVGltZXJGaXJlZCI7CisgICAgICAgIHJl
dHVybiAiV2F0Y2hkb2dUaW1lckZpcmVkIl9zOwogICAgIGNhc2UgRGVidWdnZXJFdmVudDoKLSAg
ICAgICAgcmV0dXJuICJEZWJ1Z2dlckV2ZW50IjsKKyAgICAgICAgcmV0dXJuICJEZWJ1Z2dlckV2
ZW50Il9zOwogICAgIGNhc2UgRXhjZXB0aW9uQ2hlY2s6Ci0gICAgICAgIHJldHVybiAiRXhjZXB0
aW9uQ2hlY2siOworICAgICAgICByZXR1cm4gIkV4Y2VwdGlvbkNoZWNrIl9zOwogICAgIGNhc2Ug
R2VuZXJpY1Vud2luZDoKLSAgICAgICAgcmV0dXJuICJHZW5lcmljVW53aW5kIjsKKyAgICAgICAg
cmV0dXJuICJHZW5lcmljVW53aW5kIl9zOwogICAgIGNhc2UgQmlnSW50MzJPdmVyZmxvdzoKLSAg
ICAgICAgcmV0dXJuICJCaWdJbnQzMk92ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJCaWdJbnQz
Mk92ZXJmbG93Il9zOwogICAgIH0KICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgIHJldHVybiAiVW5rbm93biI7CisgICAgcmV0dXJuICJVbmtub3duIl9zOwogfQogCiBib29s
IGV4aXRLaW5kTWF5SmV0dGlzb24oRXhpdEtpbmQga2luZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FeGl0S2luZC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0V4aXRLaW5kLmgKaW5kZXggYjhlYjMxMDQ4MDVmY2I1ZThmMzYzMGI2ZGE5MTVk
YzIwYjg0YmI4YS4uZDg0MDM2MjBlYzI5MmM4MTc0NGVmYzYzNzczN2EzNmVjZDhmNjU4NiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmgKQEAgLTU5LDcgKzU5LDcg
QEAgZW51bSBFeGl0S2luZCA6IHVpbnQ4X3QgewogICAgIEJpZ0ludDMyT3ZlcmZsb3csIC8vIFdl
IGV4aXRlZCBiZWNhdXNlIG9mIGFuIEJpZ0ludDMyIG92ZXJmbG93LgogfTsKIAotY29uc3QgY2hh
ciogZXhpdEtpbmRUb1N0cmluZyhFeGl0S2luZCk7CitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0
cmluZyhFeGl0S2luZCk7CiBib29sIGV4aXRLaW5kTWF5SmV0dGlzb24oRXhpdEtpbmQpOwogCiB9
IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvRnVuY3Rpb25Db2RlQmxvY2suY3BwCmluZGV4IDNkZTBkYWNjYWEzZmFkMmQwNzAxOTA2ZjBj
NDMzMTAzMDIzZWFjMGIuLjg3MDllYzZhZDk1ZmI5MzZkYzcxNjhlYzlkNmNkZDFmMmRlYWRkMGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9GdW5jdGlvbkNvZGVC
bG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9uQ29k
ZUJsb2NrLmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENs
YXNzSW5mbyBGdW5jdGlvbkNvZGVCbG9jazo6c19pbmZvID0gewotICAgICJGdW5jdGlvbkNvZGVC
bG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uQ29k
ZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9N
RVRIT0RfVEFCTEUoRnVuY3Rpb25Db2RlQmxvY2spCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5k
ZXggNjUzZGQ3YTRkMzMxNDgzNjY4YjUyYTI2MTllMTdhYzEyMmVhNDVlNy4uMTBhMDdkMGUwNzA3
MDhjOWM3MWU5NWQzZmI5Yzg3NzJkYTJlMWNlZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2J5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Nb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzUs
NyArMzUsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENsYXNzSW5mbyBNb2R1bGVQcm9n
cmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIk1vZHVsZVByb2dyYW1Db2RlQmxvY2siLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAorICAgICJNb2R1bGVQcm9ncmFtQ29kZUJs
b2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRI
T0RfVEFCTEUoTW9kdWxlUHJvZ3JhbUNvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCBhNTA4YjQ2
NjBhMDQ4MWE4OTE0ZGIyYTYwNjA3ZjQxMDQ1NzM5N2NlLi44MDViM2Y3OTdhMDE2YTBiZDY5YTEw
YmM5YjAxNWYwODQxNmE3N2VmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2Ug
SlNDIHsKIAogY29uc3QgQ2xhc3NJbmZvIFByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAg
ICAiUHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisg
ICAgIlByb2dyYW1Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
CiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAK
aW5kZXggMTY1MzU1NzE3MTVhZWQxMzU2NmJjNzc1MDljYmNlYjk2YzE1ZTVhNi4uMWQ1ZDIxMGM5
MTJlYjZlZWIwM2JhYmExODk4YTRjOTE2MjA2YzI3NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCkBAIC0zOSw3ICszOSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVW5saW5rZWRDb2RlQmxv
Y2s6OnNfaW5mbyA9IHsgIlVubGlua2VkQ29kZUJsb2NrIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZENvZGVCbG9jaykgfTsKK2NvbnN0IENs
YXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2si
X3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5r
ZWRDb2RlQmxvY2spIH07CiAKIFVubGlua2VkQ29kZUJsb2NrOjpVbmxpbmtlZENvZGVCbG9jayhW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBDb2RlVHlwZSBjb2RlVHlwZSwgY29uc3QgRXhl
Y3V0YWJsZUluZm8mIGluZm8sIE9wdGlvblNldDxDb2RlR2VuZXJhdGlvbk1vZGU+IGNvZGVHZW5l
cmF0aW9uTW9kZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEV2YWxDb2RlQmxvY2suY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAKaW5k
ZXggZTQ3MTJkODY4ZGViY2VmZTc0NjM0NTY2NDQ2MjM4MGY4NjBmMWNhOC4uZjU3Y2EzN2YyMzcz
NjJlODYzYTMyZTY2YTJiNGM5NzhhMWNmYTUxZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAKQEAgLTMwLDcg
KzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZEV2
YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFs
Q29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRXZhbENvZGVCbG9jazo6c19p
bmZvID0geyAiVW5saW5rZWRFdmFsQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRXZhbENvZGVCbG9jaykgfTsK
IAogdm9pZCBVbmxpbmtlZEV2YWxDb2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rp
b25Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2Vk
RnVuY3Rpb25Db2RlQmxvY2suY3BwCmluZGV4IDNkYWVmMDNmYTY3YWViN2NiMTY3MTQxMmFjZmRk
YzI5NGRmNjAxOGIuLmNmYWM4YmM3M2E1ZmQxN2Y5OWViNDA3YjU2NjRjODBmMzYxMjc1NGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9u
Q29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5r
ZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8g
PSB7ICJVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKSB9
OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5mbyA9IHsg
IlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaykgfTsK
IAogdm9pZCBVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUuY3BwCmluZGV4IGNiZmVkZjUyYzgwMjQwMzUwODIxNGNk
ZDU3NTBmODk3NGUyNjZkZTkuLjE3NWU1ZDU4MDNlYjM4ZDRjYmZmM2NkNjZmYjI0N2YwMzQ3YjYw
NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogc3RhdGljX2Fzc2VydChzaXplb2YoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFi
bGUpIDw9IDEyOCwgIlVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlIHNob3VsZCBmaXQgaW4gYSAx
MjgtYnl0ZSBjZWxsIHRvIGtlZXAgYWxsb2NhdGVkIGJsb2NrcyBjb3VudCB0byBvbmx5IG9uZSBh
ZnRlciBpbml0aWFsaXppbmcgSlNHbG9iYWxPYmplY3QuIik7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6c19pbmZvID0geyAiVW5saW5rZWRGdW5jdGlvbkV4
ZWN1dGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2Vk
RnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJs
ZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxp
bmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKIAogc3RhdGljIFVubGlua2VkRnVuY3Rpb25Db2Rl
QmxvY2sqIGdlbmVyYXRlVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaygKICAgICBWTSYgdm0sIFVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXRhYmxlLCBjb25zdCBTb3VyY2VDb2RlJiBz
b3VyY2UsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5r
ZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCmluZGV4IGM5ZDRiYzQ2MTM1
NWViN2NiMWFhZmQ3MmVmNzIyZmExMDRlOTMwZTIuLjNjYzgxYTgzNjM1MTU0MmMwZDFjZmQ1Zjg4
MzM2MGIxMjhjYWZmOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBAIC0z
MCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVW5saW5r
ZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZE1vZHVsZVByb2dy
YW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNz
SW5mbyBVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2Vk
TW9kdWxlUHJvZ3JhbUNvZGVCbG9jayJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2spIH07
CiAKIHZvaWQgVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCog
Y2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Vbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggMjllYzlkYjBkOGY5Y2JlOGVkZjlh
NDhjYmNkMmE3ZGY5NmJjMTE4Zi4uNGUxOWY2MjE0NjZiMWEyODI0ZjZiYThjYjE3M2Q3NjdiOTA1
NTc0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2Vk
UHJvZ3JhbUNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2s6OnNf
aW5mbyA9IHsgIlVubGlua2VkUHJvZ3JhbUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2Nr
KSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0g
eyAiVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsK
IAogdm9pZCBVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29k
ZUdlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVj
b2RlR2VuZXJhdG9yLmNwcAppbmRleCA3OTNlMDlmMjYzMDViMzc4ZmQwZWE0YjI5ODNjMjcwZWJm
NDhhYjQ4Li4zYTAzNzBkNTZlNTNjMzMwNGVmZDhmNDA4MmNiNzQyMzdlNzVjM2QwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9y
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2Vu
ZXJhdG9yLmNwcApAQCAtNDUwLDE0ICs0NTAsMTQgQEAgQnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVj
b2RlR2VuZXJhdG9yKFZNJiB2bSwgRnVuY3Rpb25Ob2RlKiBmdW5jdGlvbk5vZGUsIFVubGlua2UK
ICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDb25zdHJ1Y3RvcktpbmQ6Ok5ha2VkOgogICAgICAg
ICBpZiAoIWlzQ29uc3RydWN0b3IoKSkgewotICAgICAgICAgICAgZW1pdFRocm93VHlwZUVycm9y
KCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVjdG9yIHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAg
IGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjb25zdHJ1Y3RvciB3aXRob3V0IHxu
ZXd8Il9zKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsK
ICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6QmFzZToKICAgICBjYXNlIENvbnN0cnVjdG9yS2lu
ZDo6RXh0ZW5kczoKICAgICAgICAgaWYgKCFpc0NvbnN0cnVjdG9yKCkpIHsKLSAgICAgICAgICAg
IGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRo
b3V0IHxuZXd8Iik7CisgICAgICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBjYWxs
IGEgY2xhc3MgY29uc3RydWN0b3Igd2l0aG91dCB8bmV3fCJfcyk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CkBAIC0yODcxLDcgKzI4NzEsNyBAQCBSZWdp
c3RlcklEKiBCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdEhhc1ByaXZhdGVCcmFuZChSZWdpc3RlcklE
KiBkc3QsIFJlZ2lzdGVySUQqCiAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJl
bD4gaXNPYmplY3RMYWJlbCA9IG5ld0xhYmVsKCk7CiAgICAgICAgIGVtaXRKdW1wSWZUcnVlKGVt
aXRJc09iamVjdChuZXdUZW1wb3JhcnkoKSwgYmFzZSksIGlzT2JqZWN0TGFiZWwuZ2V0KCkpOwot
ICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBhY2Nlc3Mgc3RhdGljIHByaXZhdGUg
bWV0aG9kIG9yIGFjY2Vzc29yIG9mIGEgbm9uLU9iamVjdCIpOworICAgICAgICBlbWl0VGhyb3dU
eXBlRXJyb3IoIkNhbm5vdCBhY2Nlc3Mgc3RhdGljIHByaXZhdGUgbWV0aG9kIG9yIGFjY2Vzc29y
IG9mIGEgbm9uLU9iamVjdCJfcyk7CiAgICAgICAgIGVtaXRMYWJlbChpc09iamVjdExhYmVsLmdl
dCgpKTsKICAgICAgICAgZW1pdEVxdWFsaXR5T3A8T3BTdHJpY3RlcT4oZHN0LCBiYXNlLCBicmFu
ZCk7CiAgICAgfSBlbHNlCkBAIC0yODg0LDcgKzI4ODQsNyBAQCB2b2lkIEJ5dGVjb2RlR2VuZXJh
dG9yOjplbWl0Q2hlY2tQcml2YXRlQnJhbmQoUmVnaXN0ZXJJRCogYmFzZSwgUmVnaXN0ZXJJRCog
YnJhbgogICAgIGlmIChpc1N0YXRpYykgewogICAgICAgICBSZWY8TGFiZWw+IGJyYW5kQ2hlY2tP
a0xhYmVsID0gbmV3TGFiZWwoKTsKICAgICAgICAgZW1pdEp1bXBJZlRydWUoZW1pdEVxdWFsaXR5
T3A8T3BTdHJpY3RlcT4obmV3VGVtcG9yYXJ5KCksIGJhc2UsIGJyYW5kKSwgYnJhbmRDaGVja09r
TGFiZWwuZ2V0KCkpOwotICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBhY2Nlc3Mg
c3RhdGljIHByaXZhdGUgbWV0aG9kIG9yIGFjY2Vzc29yIik7CisgICAgICAgIGVtaXRUaHJvd1R5
cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBzdGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3Ii
X3MpOwogICAgICAgICBlbWl0TGFiZWwoYnJhbmRDaGVja09rTGFiZWwuZ2V0KCkpOwogICAgICAg
ICByZXR1cm47CiAgICAgCkBAIC0zNjU2LDcgKzM2NTYsNyBAQCBSZWdpc3RlcklEKiBCeXRlY29k
ZUdlbmVyYXRvcjo6ZW1pdFJldHVybihSZWdpc3RlcklEKiBzcmMsIFJldHVybkZyb20gZnJvbSkK
ICAgICAgICAgICAgIGlmIChpc0Rlcml2ZWQpIHsKICAgICAgICAgICAgICAgICBSZWY8TGFiZWw+
IGlzVW5kZWZpbmVkTGFiZWwgPSBuZXdMYWJlbCgpOwogICAgICAgICAgICAgICAgIGVtaXRKdW1w
SWZUcnVlKGVtaXRJc1VuZGVmaW5lZChuZXdUZW1wb3JhcnkoKSwgc3JjKSwgaXNVbmRlZmluZWRM
YWJlbC5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3Qg
cmV0dXJuIGEgbm9uLW9iamVjdCB0eXBlIGluIHRoZSBjb25zdHJ1Y3RvciBvZiBhIGRlcml2ZWQg
Y2xhc3MuIik7CisgICAgICAgICAgICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgcmV0
dXJuIGEgbm9uLW9iamVjdCB0eXBlIGluIHRoZSBjb25zdHJ1Y3RvciBvZiBhIGRlcml2ZWQgY2xh
c3MuIl9zKTsKICAgICAgICAgICAgICAgICBlbWl0TGFiZWwoaXNVbmRlZmluZWRMYWJlbC5nZXQo
KSk7CiAgICAgICAgICAgICAgICAgZW1pdFREWkNoZWNrKCZtX3RoaXNSZWdpc3Rlcik7CiAgICAg
ICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVy
L05vZGVzQ29kZWdlbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05v
ZGVzQ29kZWdlbi5jcHAKaW5kZXggZjZlNDNlYzhjYmJhOGYyNTU5MGM2ZjgwOGEyNDQ3NWRjMmI2
ZWFlMS4uN2FjNzU4NjY1ZDlmYzJhYzkwODZlOTdlZDFjYzQ0ZTA2NmRiZTNkNSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcApA
QCAtODk2LDcgKzg5Niw3IEBAIHZvaWQgUHJvcGVydHlMaXN0Tm9kZTo6ZW1pdFNhdmVDb21wdXRl
ZEZpZWxkTmFtZShCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBQCiAgICAgICAgIFJlZjxM
YWJlbD4gdmFsaWRQcm9wZXJ0eU5hbWVMYWJlbCA9IGdlbmVyYXRvci5uZXdMYWJlbCgpOwogICAg
ICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJvdG90eXBlU3RyaW5nID0gZ2VuZXJhdG9yLmVtaXRM
b2FkKG51bGxwdHIsIEpTVmFsdWUoZ2VuZXJhdG9yLmFkZFN0cmluZ0NvbnN0YW50KGdlbmVyYXRv
ci5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlKSkpOwogICAgICAgICBnZW5lcmF0b3IuZW1pdEp1
bXBJZkZhbHNlKGdlbmVyYXRvci5lbWl0QmluYXJ5T3A8T3BTdHJpY3RlcT4oZ2VuZXJhdG9yLm5l
d1RlbXBvcmFyeSgpLCBwcm90b3R5cGVTdHJpbmcuZ2V0KCksIHByb3BlcnR5TmFtZS5nZXQoKSwg
T3BlcmFuZFR5cGVzKFJlc3VsdFR5cGU6OnN0cmluZ1R5cGUoKSwgUmVzdWx0VHlwZTo6c3RyaW5n
VHlwZSgpKSksIHZhbGlkUHJvcGVydHlOYW1lTGFiZWwuZ2V0KCkpOwotICAgICAgICBnZW5lcmF0
b3IuZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgZGVjbGFyZSBhIHN0YXRpYyBmaWVsZCBuYW1l
ZCAncHJvdG90eXBlJyIpOworICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJD
YW5ub3QgZGVjbGFyZSBhIHN0YXRpYyBmaWVsZCBuYW1lZCAncHJvdG90eXBlJyJfcyk7CiAgICAg
ICAgIGdlbmVyYXRvci5lbWl0TGFiZWwodmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7CiAg
ICAgfQogCkBAIC0xMDE1LDcgKzEwMTUsNyBAQCBSZWdpc3RlcklEKiBCYXNlRG90Tm9kZTo6ZW1p
dEdldFByb3BlcnR5VmFsdWUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaQogICAg
ICAgICAgICAgQVNTRVJUKHNjb3BlKTsgLy8gUHJpdmF0ZSBuYW1lcyBhcmUgYWx3YXlzIGNhcHR1
cmVkLgogICAgICAgICAgICAgUmVmUHRyPFJlZ2lzdGVySUQ+IHByaXZhdGVCcmFuZFN5bWJvbCA9
IGdlbmVyYXRvci5lbWl0R2V0UHJpdmF0ZUJyYW5kKGdlbmVyYXRvci5uZXdUZW1wb3JhcnkoKSwg
c2NvcGUuZ2V0KCksIHByaXZhdGVUcmFpdHMuaXNTdGF0aWMoKSk7CiAgICAgICAgICAgICBnZW5l
cmF0b3IuZW1pdENoZWNrUHJpdmF0ZUJyYW5kKGJhc2UsIHByaXZhdGVCcmFuZFN5bWJvbC5nZXQo
KSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0
VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0
dGVyIik7CisgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcg
dG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICBy
ZXR1cm4gZHN0OwogICAgICAgICB9CiAKQEAgLTEwNzQsNyArMTA3NCw3IEBAIFJlZ2lzdGVySUQq
IEJhc2VEb3ROb2RlOjplbWl0UHV0UHJvcGVydHkoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRv
ciwgUmVnaXN0ZXJJCiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5k
U3ltYm9sID0gZ2VuZXJhdG9yLmVtaXRHZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBv
cmFyeSgpLCBzY29wZS5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3lt
Ym9sLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogCi0gICAgICAgICAgICBnZW5l
cmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBw
cml2YXRlIHNldHRlciIpOworICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJv
cigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwogICAg
ICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgICB9CiAKQEAgLTI0NTQsNyArMjQ1NCw3IEBA
IFJlZ2lzdGVySUQqIFBvc3RmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5l
cmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQ
cml2YXRlQnJhbmQoYmFzZS5nZXQoKSwgcHJpdmF0ZUJyYW5kU3ltYm9sLmdldCgpLCBwcml2YXRl
VHJhaXRzLmlzU3RhdGljKCkpOwogCiAgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdEV4cHJlc3Np
b25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RFbmQoKSk7Ci0gICAgICAgICAgICBn
ZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5l
ZCBwcml2YXRlIHNldHRlciIpOworICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVF
cnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwog
ICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci50ZW1wRGVzdGluYXRpb24oZHN0KTsKICAgICAg
ICAgfQogCkBAIC0yNDcyLDcgKzI0NzIsNyBAQCBSZWdpc3RlcklEKiBQb3N0Zml4Tm9kZTo6ZW1p
dERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlcklEKiBkc3QpCiAgICAg
ICAgICAgICBnZW5lcmF0b3IubW92ZShhcmdzLnRoaXNSZWdpc3RlcigpLCBiYXNlLmdldCgpKTsK
ICAgICAgICAgICAgIHZhbHVlID0gZ2VuZXJhdG9yLmVtaXRDYWxsKGdlbmVyYXRvci5uZXdUZW1w
b3JhcnkoKSwgZ2V0dGVyRnVuY3Rpb24uZ2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywg
bV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7
CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVy
cm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBh
biB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVy
YXRvci50ZW1wRGVzdGluYXRpb24oZHN0KTsKICAgICAgICAgfQogCkBAIC0yNDkwLDcgKzI0OTAs
NyBAQCBSZWdpc3RlcklEKiBQb3N0Zml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYg
Z2VuZXJhdG9yLCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9y
Lm1vdmUoZHN0LCBvbGRWYWx1ZS5nZXQoKSk7CiAgICAgICAgIH0gCiAKLSAgICAgICAgZ2VuZXJh
dG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJp
dmF0ZSBnZXR0ZXIiKTsKKyAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5
aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICBy
ZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBvbGRWYWx1ZS5nZXQoKSk7CiAgICAgfQogCkBAIC0y
NTU4LDcgKzI1NTgsNyBAQCBSZWdpc3RlcklEKiBEZWxldGVCcmFja2V0Tm9kZTo6ZW1pdEJ5dGVj
b2RlKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdAogICAgIFJlZlB0cjxSZWdp
c3RlcklEPiByMSA9IGdlbmVyYXRvci5lbWl0Tm9kZShtX3N1YnNjcmlwdCk7CiAgICAgZ2VuZXJh
dG9yLmVtaXRFeHByZXNzaW9uSW5mbyhkaXZvdCgpLCBkaXZvdFN0YXJ0KCksIGRpdm90RW5kKCkp
OwogICAgIGlmIChtX2Jhc2UtPmlzU3VwZXJOb2RlKCkpCi0gICAgICAgIHJldHVybiBlbWl0VGhy
b3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVy
dHkiLCBkc3QpOworICAgICAgICByZXR1cm4gZW1pdFRocm93UmVmZXJlbmNlRXJyb3IoZ2VuZXJh
dG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5Il9zLCBkc3QpOwogICAgIHJldHVy
biBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5VmFsKGZpbmFsRGVzdC5nZXQoKSwgcjAuZ2V0KCksIHIx
LmdldCgpKTsKIH0KIApAQCAtMjU3NCw3ICsyNTc0LDcgQEAgUmVnaXN0ZXJJRCogRGVsZXRlRG90
Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVy
SUQKIAogICAgIGdlbmVyYXRvci5lbWl0RXhwcmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFy
dCgpLCBkaXZvdEVuZCgpKTsKICAgICBpZiAobV9iYXNlLT5pc1N1cGVyTm9kZSgpKQotICAgICAg
ICByZXR1cm4gZW1pdFRocm93UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0
ZSBhIHN1cGVyIHByb3BlcnR5IiwgZHN0KTsKKyAgICAgICAgcmV0dXJuIGVtaXRUaHJvd1JlZmVy
ZW5jZUVycm9yKGdlbmVyYXRvciwgIkNhbm5vdCBkZWxldGUgYSBzdXBlciBwcm9wZXJ0eSJfcywg
ZHN0KTsKICAgICByZXR1cm4gZ2VuZXJhdG9yLmVtaXREZWxldGVCeUlkKGZpbmFsRGVzdC5nZXQo
KSwgcjAuZ2V0KCksIG1faWRlbnQpOwogfQogCkBAIC0yNzQzLDcgKzI3NDMsNyBAQCBSZWdpc3Rl
cklEKiBQcmVmaXhOb2RlOjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJl
Z2lzdGVySUQqIGRzdCkKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJh
bmQoYmFzZS5nZXQoKSwgcHJpdmF0ZUJyYW5kU3ltYm9sLmdldCgpLCBwcml2YXRlVHJhaXRzLmlz
U3RhdGljKCkpOwogCiAgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRp
dm90KCksIGRpdm90U3RhcnQoKSwgZGl2b3RFbmQoKSk7Ci0gICAgICAgICAgICBnZW5lcmF0b3Iu
ZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRl
IHNldHRlciIpOworICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5
aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwogICAgICAgICAg
ICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRzdCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0K
IApAQCAtMjc2MCw3ICsyNzYwLDcgQEAgUmVnaXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChC
eXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAg
ICBnZW5lcmF0b3IubW92ZShhcmdzLnRoaXNSZWdpc3RlcigpLCBiYXNlLmdldCgpKTsKICAgICAg
ICAgICAgIHZhbHVlID0gZ2VuZXJhdG9yLmVtaXRDYWxsKHByb3BEc3QuZ2V0KCksIGdldHRlckZ1
bmN0aW9uLmdldCgpLCBOb0V4cGVjdGVkRnVuY3Rpb24sIGFyZ3MsIG1fcG9zaXRpb24sIG1fcG9z
aXRpb24sIG1fcG9zaXRpb24sIERlYnVnZ2FibGVDYWxsOjpZZXMpOwogICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFj
Y2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRv
ci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZh
dGUgZ2V0dGVyIl9zKTsKICAgICAgICAgICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIHBy
b3BEc3QuZ2V0KCkpOwogICAgICAgICB9CiAKQEAgLTI3NzgsNyArMjc3OCw3IEBAIFJlZ2lzdGVy
SUQqIFByZWZpeE5vZGU6OmVtaXREb3QoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVn
aXN0ZXJJRCogZHN0KQogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRzdCwgcHJv
cERzdC5nZXQoKSk7CiAgICAgICAgIH0gCiAKLSAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5
cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiKTsK
KyAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBh
biB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICByZXR1cm4gZ2VuZXJhdG9y
Lm1vdmUoZHN0LCBwcm9wRHN0LmdldCgpKTsKICAgICB9CiAKQEAgLTMyMDgsNyArMzIwOCw3IEBA
IFJlZ2lzdGVySUQqIEluc3RhbmNlT2ZOb2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0
b3ImIGdlbmVyYXRvciwgUmVnaXN0ZXJJCiAgICAgZ2VuZXJhdG9yLmVtaXRKdW1wKGRvbmUuZ2V0
KCkpOwogCiAgICAgZ2VuZXJhdG9yLmVtaXRMYWJlbCh0eXBlRXJyb3IuZ2V0KCkpOwotICAgIGdl
bmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9m
IGlzIG5vdCBhbiBvYmplY3QiKTsKKyAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJS
aWdodCBoYW5kIHNpZGUgb2YgaW5zdGFuY2VvZiBpcyBub3QgYW4gb2JqZWN0Il9zKTsKIAogICAg
IGdlbmVyYXRvci5lbWl0TGFiZWwoY3VzdG9tLmdldCgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHAKaW5kZXggYTMxZmMx
ZjE1ZDRiODM4OTQ4ZjQyYjRjZjFjMDljNDdkMzk5NTA3YS4uZTAyZmI4MTdkM2ZmYjYxMDYwODBj
YTkwN2YxMTJmYzY5ZDQ0NjBhZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rl
YnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGVidWdnZXIvRGVidWdnZXJDYWxsRnJhbWUuY3BwCkBAIC0xNDUsNyArMTQ1LDcgQEAgU3RyaW5n
IERlYnVnZ2VyQ2FsbEZyYW1lOjpmdW5jdGlvbk5hbWUoKSBjb25zdAogICAgIGlmIChpc1RhaWxE
ZWxldGVkKCkpIHsKICAgICAgICAgaWYgKEpTRnVuY3Rpb24qIGZ1bmMgPSBqc0R5bmFtaWNDYXN0
PEpTRnVuY3Rpb24qPih2bSwgbV9zaGFkb3dDaGlja2VuRnJhbWUuY2FsbGVlKSkKICAgICAgICAg
ICAgIHJldHVybiBmdW5jLT5jYWxjdWxhdGVkRGlzcGxheU5hbWUodm0pOwotICAgICAgICByZXR1
cm4gbV9zaGFkb3dDaGlja2VuRnJhbWUuY29kZUJsb2NrLT5pbmZlcnJlZE5hbWUoKS5kYXRhKCk7
CisgICAgICAgIHJldHVybiBTdHJpbmcgeyBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2st
PmluZmVycmVkTmFtZSgpLmRhdGEoKSB9OwogICAgIH0KIAogICAgIHJldHVybiBtX3ZhbGlkTWFj
aGluZUZyYW1lLT5mcmllbmRseUZ1bmN0aW9uTmFtZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyU2NvcGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyU2NvcGUuY3BwCmluZGV4IDA0Yjk0ZjVlNWNhY2NjOWZk
NTMxNGVhODBiOTJkODQzYWIzMWZhYjIuLmU3NmE0MWYzYWM2ODdjOGY1ZWQ0ZGVhYWVlOTgxYWQ5
MjNiOTVhOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1
Z2dlclNjb3BlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdn
ZXJTY29wZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShEZWJ1Z2dlclNjb3BlKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIERlYnVnZ2VyU2NvcGU6OnNfaW5mbyA9IHsgIkRlYnVnZ2VyU2NvcGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERlYnVnZ2Vy
U2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVi
dWdnZXJTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShEZWJ1Z2dlclNjb3BlKSB9OwogCiBEZWJ1Z2dlclNjb3BlKiBEZWJ1Z2dlclNj
b3BlOjpjcmVhdGUoVk0mIHZtLCBKU1Njb3BlKiBzY29wZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBTbmFwc2hvdEJ1aWxkZXIuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAKaW5kZXggYThjZGU4ODE1
MTc1N2NkN2RkYTQ5MGQ0NDQ1ODI3OGVhM2FmOGUxOS4uZjBhODE5MzI0OWYwNjNjNjUwM2NiNzdl
NzJiZTJjNzg3MTc2YjM5YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFNuYXBzaG90QnVpbGRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFNuYXBzaG90QnVpbGRlci5jcHAKQEAgLTU3NSw3ICs1NzUsNyBAQCBTdHJpbmcgSGVhcFNu
YXBzaG90QnVpbGRlcjo6anNvbihGdW5jdGlvbjxib29sIChjb25zdCBIZWFwU25hcHNob3ROb2Rl
Jik+IGFsbG93TgogICAgICAgICAgICAganNvbi5hcHBlbmQoc25hcHNob3ROb2RlLnZhbHVlKCku
aWRlbnRpZmllcik7CiAKICAgICAgICAgICAgIC8vIE1heWJlIHdlIHNob3VsZCBqdXN0IGFsd2F5
cyBlbmNvZGUgdGhlIHJvb3QgbmFtZXMuCi0gICAgICAgICAgICBjb25zdCBjaGFyKiByb290TmFt
ZSA9IHJvb3RNYXJrUmVhc29uRGVzY3JpcHRpb24oaXQudmFsdWUubWFya1JlYXNvbik7CisgICAg
ICAgICAgICBhdXRvIHJvb3ROYW1lID0gcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1
ZS5tYXJrUmVhc29uKTsKICAgICAgICAgICAgIGF1dG8gcmVzdWx0ID0gbGFiZWxJbmRleGVzLmFk
ZChyb290TmFtZSwgbmV4dExhYmVsSW5kZXgpOwogICAgICAgICAgICAgaWYgKHJlc3VsdC5pc05l
d0VudHJ5KQogICAgICAgICAgICAgICAgIG5leHRMYWJlbEluZGV4Kys7CkBAIC01ODMsNyArNTgz
LDcgQEAgU3RyaW5nIEhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24oRnVuY3Rpb248Ym9vbCAoY29u
c3QgSGVhcFNuYXBzaG90Tm9kZSYpPiBhbGxvd04KIAogICAgICAgICAgICAgdW5zaWduZWQgcmVh
Y2hhYmlsaXR5UmVhc29uSW5kZXggPSAwOwogICAgICAgICAgICAgaWYgKGl0LnZhbHVlLnJlYWNo
YWJpbGl0eUZyb21PcGFxdWVSb290UmVhc29ucykgewotICAgICAgICAgICAgICAgIGF1dG8gcmVz
dWx0ID0gbGFiZWxJbmRleGVzLmFkZChpdC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9tT3BhcXVlUm9v
dFJlYXNvbnMsIG5leHRMYWJlbEluZGV4KTsKKyAgICAgICAgICAgICAgICBhdXRvIHJlc3VsdCA9
IGxhYmVsSW5kZXhlcy5hZGQoU3RyaW5nIHsgaXQudmFsdWUucmVhY2hhYmlsaXR5RnJvbU9wYXF1
ZVJvb3RSZWFzb25zIH0sIG5leHRMYWJlbEluZGV4KTsKICAgICAgICAgICAgICAgICBpZiAocmVz
dWx0LmlzTmV3RW50cnkpCiAgICAgICAgICAgICAgICAgICAgIG5leHRMYWJlbEluZGV4Kys7CiAg
ICAgICAgICAgICAgICAgcmVhY2hhYmlsaXR5UmVhc29uSW5kZXggPSByZXN1bHQuaXRlcmF0b3It
PnZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtS
ZWFzb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3Bw
CmluZGV4IDk0MzkzOWNjZTc5YTE3YmRiZGZlMWJhYTE2NzFkZDcyM2YyY2NkOWEuLjY1MjI0Yjli
M2ViNzIyMWUxNTM5Nzk1Yzg3ODFmNmE0NDg1NDQ3NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9Sb290TWFya1JlYXNvbi5jcHAKQEAgLTMwLDExICszMCwxMSBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgY2hhciogcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihSb290
TWFya1JlYXNvbiByZWFzb24pCitBU0NJSUxpdGVyYWwgcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlv
bihSb290TWFya1JlYXNvbiByZWFzb24pCiB7CiAjZGVmaW5lIENBU0VfUk9PVF9NQVJLX1JFQVNP
TihyZWFzb24pIFwKICAgICBjYXNlIEpTQzo6Um9vdE1hcmtSZWFzb246OnJlYXNvbjogXAotICAg
ICAgICByZXR1cm4gI3JlYXNvbjsgXAorICAgICAgICByZXR1cm4gI3JlYXNvbiIiX3M7IFwKIAog
ICAgIHN3aXRjaCAocmVhc29uKSB7CiAgICAgICAgIEZPUl9FQUNIX1JPT1RfTUFSS19SRUFTT04o
Q0FTRV9ST09UX01BUktfUkVBU09OKQpAQCAtNDIsNyArNDIsNyBAQCBjb25zdCBjaGFyKiByb290
TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJvb3RNYXJrUmVhc29uIHJlYXNvbikKICN1bmRlZiBDQVNF
X1JPT1RfTUFSS19SRUFTT04KIAogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVy
biAiTm9uZSI7CisgICAgcmV0dXJuICJOb25lIl9zOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNvbi5oCmluZGV4IGYyMDk2
MzM2YTJkMmEzNjE1MzMwMTJiNDFlMjgyZjUwNTAzZTU1ZjQuLmE4NmY5YzRiOTk2MzI3ZjYyMjRi
YTgyNTUyMmFlOGI2ZDc4NTFkNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL1Jvb3RNYXJrUmVhc29uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9v
dE1hcmtSZWFzb24uaApAQCAtNTUsNyArNTUsNyBAQCBlbnVtIGNsYXNzIFJvb3RNYXJrUmVhc29u
IDogdWludDhfdCB7CiAKICN1bmRlZiBERUNMQVJFX1JPT1RfTUFSS19SRUFTT04KIAotY29uc3Qg
Y2hhciogcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihSb290TWFya1JlYXNvbik7CitBU0NJSUxp
dGVyYWwgcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihSb290TWFya1JlYXNvbik7CiAKIH0gLy8g
bmFtZXNwYWNlIEpTQwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVj
dG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHAK
aW5kZXggNmFlMTc5MzlmNDg4NThkNjA0NmM5NTkyOTJkMzZjZmJjNjM0NzFmMS4uMjUxZGJlM2E1
ZGU5MDZhNTZlMGQ3ODMwM2MyYmU0YjQ0NTMxMTFkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9KU0dsb2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNw
ZWN0b3JDb250cm9sbGVyLmNwcApAQCAtMTYzLDcgKzE2Myw3IEBAIHZvaWQgSlNHbG9iYWxPYmpl
Y3RJbnNwZWN0b3JDb250cm9sbGVyOjphcHBlbmRBUElCYWNrdHJhY2UoU2NyaXB0Q2FsbFN0YWNr
JiBjYWxsCiAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKICAgICAgICAgYXV0
byBkZW1hbmdsZWQgPSBTdGFja1RyYWNlOjpkZW1hbmdsZShzdGFja1tpXSk7CiAgICAgICAgIGlm
IChkZW1hbmdsZWQpCi0gICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxGcmFt
ZShkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA/IGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgp
IDogZGVtYW5nbGVkLT5tYW5nbGVkTmFtZSgpLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9Tb3VyY2VJ
RCwgMCwgMCkpOworICAgICAgICAgICAgY2FsbFN0YWNrLmFwcGVuZChTY3JpcHRDYWxsRnJhbWUo
U3RyaW5nIHsgZGVtYW5nbGVkLT5kZW1hbmdsZWROYW1lKCkgPyBkZW1hbmdsZWQtPmRlbWFuZ2xl
ZE5hbWUoKSA6IGRlbWFuZ2xlZC0+bWFuZ2xlZE5hbWUoKSB9LCAiW25hdGl2ZSBjb2RlXSJfcywg
bm9Tb3VyY2VJRCwgMCwgMCkpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBjYWxsU3RhY2su
YXBwZW5kKFNjcmlwdENhbGxGcmFtZSgiPyJfcywgIltuYXRpdmUgY29kZV0iX3MsIG5vU291cmNl
SUQsIDAsIDApKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
bnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwCmluZGV4IDc4ZTc3MzRlMjYzOWI3ZTk4
OGJkOTQ1OWIwNzZiZjdiY2U0YzA3MWUuLjMwYTJiMDFlYTgwYjNlZTQ5YWVjMzlkNzMxZDZjNDQ5
MDM3MDllMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJ
bmplY3RlZFNjcmlwdEhvc3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0
b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwCkBAIC03Miw3ICs3Miw3IEBAIG5hbWVzcGFjZSBJ
bnNwZWN0b3IgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNJ
bmplY3RlZFNjcmlwdEhvc3Q6OnNfaW5mbyA9IHsgIkluamVjdGVkU2NyaXB0SG9zdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3Rl
ZFNjcmlwdEhvc3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNJbmplY3RlZFNjcmlwdEhvc3Q6OnNf
aW5mbyA9IHsgIkluamVjdGVkU2NyaXB0SG9zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2NyaXB0SG9zdCkgfTsKIAog
SlNJbmplY3RlZFNjcmlwdEhvc3Q6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0KFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIFJlZjxJbmplY3RlZFNjcmlwdEhvc3Q+JiYgaW1wbCkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKQEAgLTMzNiwxMyArMzM2LDEzIEBAIEpTVmFsdWUgSlNJbmplY3Rl
ZFNjcmlwdEhvc3Q6OmdldEludGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0CiAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAgSlNBcnJheSogYXJy
YXkgPSBjb25zdHJ1Y3RFbXB0eUFycmF5KGdsb2JhbE9iamVjdCwgbnVsbHB0cik7CiAgICAgICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7Ci0gICAgICAgIGFycmF5LT5w
dXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJv
cGVydHkoZ2xvYmFsT2JqZWN0LCAidGFyZ2V0RnVuY3Rpb24iLCBib3VuZEZ1bmN0aW9uLT50YXJn
ZXRGdW5jdGlvbigpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmpl
Y3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAidGFy
Z2V0RnVuY3Rpb24iX3MsIGJvdW5kRnVuY3Rpb24tPnRhcmdldEZ1bmN0aW9uKCkpKTsKICAgICAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJyYXkt
PnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQ
cm9wZXJ0eShnbG9iYWxPYmplY3QsICJib3VuZFRoaXMiLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRo
aXMoKSkpOworICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRl
eCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyJf
cywgYm91bmRGdW5jdGlvbi0+Ym91bmRUaGlzKCkpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKGJvdW5kRnVuY3Rpb24tPmJvdW5k
QXJncygpKSB7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBhcnJh
eS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5h
bFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kQXJncyIsIGJvdW5kRnVuY3Rpb24tPmJvdW5k
QXJnc0NvcHkoZ2xvYmFsT2JqZWN0KSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdElu
ZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9i
YWxPYmplY3QsICJib3VuZEFyZ3MiX3MsIGJvdW5kRnVuY3Rpb24tPmJvdW5kQXJnc0NvcHkoZ2xv
YmFsT2JqZWN0KSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAg
ICAgIHJldHVybiBhcnJheTsKQEAgLTM4OCwxMCArMzg4LDEwIEBAIEpTVmFsdWUgSlNJbmplY3Rl
ZFNjcmlwdEhvc3Q6OmdldEludGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0CiAgICAgICAgICAgICB1bnNpZ25lZCBpbmRleCA9IDA7CiAgICAgICAgICAgICBKU0Fy
cmF5KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCAy
KTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7Ci0g
ICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBj
b25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImFycmF5IiwgaXRlcmF0ZWRW
YWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwg
aW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJhcnJheSJf
cywgaXRlcmF0ZWRWYWx1ZSkpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgSlNWYWx1ZSgpKTsKICAgICAgICAgICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7Cisg
ICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBj
b25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5n
KGtpbmQpKSk7CiAgICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDAy
LDEwICs0MDIsMTAgQEAgSlNWYWx1ZSBKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQ
cm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2ln
bmVkIGluZGV4ID0gMDsKICAgICAgICAgICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1w
dHlBcnJheShnbG9iYWxPYmplY3QsIG51bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJl
Y3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHko
Z2xvYmFsT2JqZWN0LCAibWFwIiwgaXRlcmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXkt
PnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQ
cm9wZXJ0eShnbG9iYWxPYmplY3QsICJtYXAiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAg
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBz
Y29wZS5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFs
T2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwg
ImtpbmQiLCB0b1N0cmluZyhraW5kKSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdElu
ZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9i
YWxPYmplY3QsICJraW5kIl9zLCB0b1N0cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJu
IGFycmF5OwogICAgICAgICB9CiAKQEAgLTQxNiwxMCArNDE2LDEwIEBAIEpTVmFsdWUgSlNJbmpl
Y3RlZFNjcmlwdEhvc3Q6OmdldEludGVybmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0CiAgICAgICAgICAgICB1bnNpZ25lZCBpbmRleCA9IDA7CiAgICAgICAgICAgICBK
U0FycmF5KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRy
LCAyKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7
Ci0gICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsr
LCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgInNldCIsIGl0ZXJhdGVk
VmFsdWUpKTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3Qs
IGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0Il9z
LCBpdGVyYXRlZFZhbHVlKSk7CiAgICAgICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCBKU1ZhbHVlKCkpOwogICAgICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICAgICAg
YXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50
ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkpKTsKKyAg
ICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNv
bnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9TdHJpbmco
a2luZCkpKTsKICAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICAgfQogICAgIH0KQEAg
LTQyOSw3ICs0MjksNyBAQCBKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRlcm5h
bFByb3BlcnRpZXMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgICAgICBKU0FycmF5
KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCAxKTsK
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
c2NvcGUucmVsZWFzZSgpOwotICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2Jq
ZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgInN0
cmluZyIsIHN0cmluZ0l0ZXJhdG9yLT5pdGVyYXRlZFN0cmluZygpKSk7CisgICAgICAgIGFycmF5
LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFs
UHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic3RyaW5nIl9zLCBzdHJpbmdJdGVyYXRvci0+aXRlcmF0
ZWRTdHJpbmcoKSkpOwogICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0UHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNj
cmlwdEhvc3RQcm90b3R5cGUuY3BwCmluZGV4IGFkYmI1ZTU3YzM0NTFjM2QzYTg4ZjgxOGY3ZWMw
NTdjZWI1OTg4MjQuLjk4YjUyZWMyZTg0ODVjZjdhYjFkMGEyMWE0ZDZhNzY2ZDVlZTllOTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlw
dEhvc3RQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
SlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHN0YXRp
YyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBl
RnVuY3Rpb25FdmFsdWF0ZVdpCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0lu
amVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZUF0dHJpYnV0ZUV2YWx1YXRlKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmli
dXRlU2F2ZWRSZXN1bHRBbGlhcyk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0
SG9zdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2Ny
aXB0SG9zdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dFByb3RvdHlwZTo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlw
dENhbGxGcmFtZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNj
cmlwdENhbGxGcmFtZS5jcHAKaW5kZXggMjg5OGNkZmViOTllZWFhYzkzZTI2ZWEwNjkyY2Q3MTIx
ZWM3ODYxMi4uOTU1NjllMGJjYmQ0MjU5NTNmNWI2MmNkY2QxOTJhYTJkZDcxMGM5YiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJh
bWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0
Q2FsbEZyYW1lLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAog
dXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxG
cmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1l
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAi
SmF2YVNjcmlwdENhbGxGcmFtZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0phdmFTY3JpcHRDYWxsRnJhbWUpIH07CiAKIEpTSmF2YVNj
cmlwdENhbGxGcmFtZTo6SlNKYXZhU2NyaXB0Q2FsbEZyYW1lKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFJlZjxKYXZhU2NyaXB0Q2FsbEZyYW1lPiYmIGltcGwpCiAgICAgOiBCYXNlKHZt
LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZS5jcHAKaW5kZXggYWI1
YThhY2QwMzJmYjgyMTU5MzRjN2U0MGEwMzMyZjg2YTBiOGIxMi4uMTcwODhkODU5MzZkNTY3Zjll
MDcxYzI2N2U1N2NjNmE2NGNiMWU4NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBl
LmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihq
c0phdmFTY3JpcHRDYWxsRnJhbWVBdHRyaWJ1dGVUaGlzT2JqZWN0KTsKIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKGpzSmF2YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVR5cGUpOwog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lSXNU
YWlsRGVsZXRlZCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZy
YW1lUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yQXVkaXRBZ2VudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JBdWRpdEFnZW50LmNwcAppbmRleCAzMGFjYWYzMzQ1ODA1Mzc0ZDgxZGJiMGIx
YzVkNDlmZjdhZjBhNmUxLi5jMjg3NzM2ZDcxZTdlYjllODg1NThmZmNkMGI3MDQ1MjViZmZjZjk3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNw
ZWN0b3JBdWRpdEFnZW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JBdWRpdEFnZW50LmNwcApAQCAtOTIsNyArOTIsNyBAQCBQcm90b2Nv
bDo6RXJyb3JTdHJpbmdPcjxzdGQ6OnR1cGxlPFJlZjxQcm90b2NvbDo6UnVudGltZTo6UmVtb3Rl
T2JqZWN0Piwgc3RkOjpvcAogICAgIGlmIChpbmplY3RlZFNjcmlwdC5oYXNOb1ZhbHVlKCkpCiAg
ICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChlcnJvclN0cmluZyk7CiAKLSAgICBhdXRvIGZ1
bmN0aW9uU3RyaW5nID0gbWFrZVN0cmluZygiKGZ1bmN0aW9uKFdlYkluc3BlY3RvckF1ZGl0KSB7
IFwidXNlIHN0cmljdFwiOyByZXR1cm4gZXZhbChgKCIsIFN0cmluZyB7IHRlc3QgfS5yZXBsYWNl
KCdgJywgIlxcYCIpLCAiKWApKFdlYkluc3BlY3RvckF1ZGl0KTsgfSkiKTsKKyAgICBhdXRvIGZ1
bmN0aW9uU3RyaW5nID0gbWFrZVN0cmluZygiKGZ1bmN0aW9uKFdlYkluc3BlY3RvckF1ZGl0KSB7
IFwidXNlIHN0cmljdFwiOyByZXR1cm4gZXZhbChgKCIsIFN0cmluZyB7IHRlc3QgfS5yZXBsYWNl
KCdgJywgIlxcYCJfcyksICIpYCkoV2ViSW5zcGVjdG9yQXVkaXQpOyB9KSIpOwogCiAgICAgSW5q
ZWN0ZWRTY3JpcHQ6OkV4ZWN1dGVPcHRpb25zIG9wdGlvbnM7CiAgICAgb3B0aW9ucy5vYmplY3RH
cm91cCA9ICJhdWRpdCJfczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNw
ZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKaW5kZXgg
ZWYwZmY2MmE3OGEzYTFmNjBkNTUzMjlhNTUzNzhiNGY1NTEyZmQ3ZC4uMGE2N2M4ZWFmNzhjMzJm
YzkyYWNkZDYxYjdjMzljNjZjNThmZDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2Vu
dC5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNvbnN0
IGNoYXIqIGNvbnN0IEluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmJhY2t0cmFjZU9iamVjdEdyb3Vw
ID0gImJhY2t0cmFjZSI7Citjb25zdCBBU0NJSUxpdGVyYWwgSW5zcGVjdG9yRGVidWdnZXJBZ2Vu
dDo6YmFja3RyYWNlT2JqZWN0R3JvdXAgPSAiYmFja3RyYWNlIl9zOwogCiAvLyBPYmplY3RzIGNy
ZWF0ZWQgYW5kIHJldGFpbmVkIGJ5IGV2YWx1YXRpbmcgYnJlYWtwb2ludCBhY3Rpb25zIGFyZSBw
dXQgaW50byBvYmplY3QgZ3JvdXBzCiAvLyBhY2NvcmRpbmcgdG8gdGhlIGJyZWFrcG9pbnQgYWN0
aW9uIGlkZW50aWZpZXIgYXNzaWduZWQgYnkgdGhlIGZyb250ZW5kLiBBIGJyZWFrcG9pbnQgbWF5
CkBAIC03NDEsNyArNzQxLDcgQEAgUHJvdG9jb2w6OkVycm9yU3RyaW5nT3I8U3RyaW5nPiBJbnNw
ZWN0b3JEZWJ1Z2dlckFnZW50OjpnZXRTY3JpcHRTb3VyY2UoY29uc3QgUHIKIHsKICAgICBhdXRv
IGl0ID0gbV9zY3JpcHRzLmZpbmQocGFyc2VJbnRlZ2VyQWxsb3dpbmdUcmFpbGluZ0p1bms8SlND
OjpTb3VyY2VJRD4oc2NyaXB0SWQpLnZhbHVlX29yKDApKTsKICAgICBpZiAoaXQgPT0gbV9zY3Jp
cHRzLmVuZCgpKQotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIk1pc3Npbmcgc2NyaXB0
IGZvciBnaXZlbiBzY3JpcHRJZCIpOworICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIk1p
c3Npbmcgc2NyaXB0IGZvciBnaXZlbiBzY3JpcHRJZCJfcyk7CiAKICAgICByZXR1cm4gaXQtPnZh
bHVlLnNvdXJjZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaAppbmRleCBlMGNlNzY1
YTQyY2FhNWZkMDYzNzAxNWRlYWRkNTI1NGFhMzk3YTE4Li40ZmFlMWE5OWRiYTJjZmVjMjljOTM3
Njg3YzQ0Y2U1ZTEzZjkwMDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCkBAIC02
MCw3ICs2MCw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBSZWZQdHI8SlNDOjpCcmVha3BvaW50
PiBkZWJ1Z2dlckJyZWFrcG9pbnRGcm9tUGF5bG9hZChQcm90b2NvbDo6RXJyb3JTdHJpbmcmLCBS
ZWZQdHI8SlNPTjo6T2JqZWN0PiYmIG9wdGlvbnMpOwogCi0gICAgc3RhdGljIGNvbnN0IGNoYXIq
IGNvbnN0IGJhY2t0cmFjZU9iamVjdEdyb3VwOworICAgIHN0YXRpYyBjb25zdCBBU0NJSUxpdGVy
YWwgYmFja3RyYWNlT2JqZWN0R3JvdXA7CiAKICAgICAvLyBJbnNwZWN0b3JBZ2VudEJhc2UKICAg
ICB2b2lkIGRpZENyZWF0ZUZyb250ZW5kQW5kQmFja2VuZChGcm9udGVuZFJvdXRlciosIEJhY2tl
bmREaXNwYXRjaGVyKikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySGVhcEFnZW50LmNwcAppbmRleCAyNGIz
ZWZkN2MyYTE4OTE5ZWI1MjVhMTU2NzIzNGUzMDY3NTg2NmUwLi5iMDcxOGI5YzA1NjJiNTE3NDQy
YTgwN2NmZmVjYWIxZjQ4NmFmZDVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JIZWFwQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKQEAgLTI1
NCw3ICsyNTQsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxSZWY8UHJvdG9jb2w6OlJ1bnRp
bWU6OlJlbW90ZU9iamVjdD4+IEluc3BlY3RvckhlYXBBZ2VudAogCiAgICAgYXV0byBvYmplY3Qg
PSBpbmplY3RlZFNjcmlwdC53cmFwT2JqZWN0KGNlbGwsIG9iamVjdEdyb3VwLCB0cnVlKTsKICAg
ICBpZiAoIW9iamVjdCkKLSAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKCJJbnRlcm5hbCBl
cnJvcjogdW5hYmxlIHRvIGNhc3QgT2JqZWN0Iik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZCgiSW50ZXJuYWwgZXJyb3I6IHVuYWJsZSB0byBjYXN0IE9iamVjdCJfcyk7CiAKICAgICBy
ZXR1cm4gb2JqZWN0LnJlbGVhc2VOb25OdWxsKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9FeGVjdXRhYmxlQWxsb2NhdG9yLmNwcAppbmRleCBhMTczMTVjYzY4NDk5NmEw
NWM1YTViYTYxNTY0NDFlOGE5YmVkODVlLi5jODY3ZWVkMjVhOWY1ODM3Yjk3ZmMzN2VhMTE0ZGRk
YzJjYjY0YmYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFi
bGVBbGxvY2F0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJs
ZUFsbG9jYXRvci5jcHAKQEAgLTExNTIsOCArMTE1Miw4IEBAIHZvaWQgZHVtcEpJVE1lbW9yeShj
b25zdCB2b2lkKiBkc3QsIGNvbnN0IHZvaWQqIHNyYywgc2l6ZV90IHNpemUpCiAgICAgICAgIHN0
YXRpYyB2b2lkIGZsdXNoKCkgV1RGX1JFUVVJUkVTX0xPQ0soZHVtcEpJVE1lbW9yeUxvY2spCiAg
ICAgICAgIHsKICAgICAgICAgICAgIGlmIChmZCA9PSAtMSkgewotICAgICAgICAgICAgICAgIFN0
cmluZyBwYXRoID0gT3B0aW9uczo6ZHVtcEpJVE1lbW9yeVBhdGgoKTsKLSAgICAgICAgICAgICAg
ICBwYXRoID0gcGF0aC5yZXBsYWNlKCIlcGlkIiwgU3RyaW5nOjpudW1iZXIoZ2V0Q3VycmVudFBy
b2Nlc3NJRCgpKSk7CisgICAgICAgICAgICAgICAgU3RyaW5nIHBhdGggeyBPcHRpb25zOjpkdW1w
SklUTWVtb3J5UGF0aCgpIH07CisgICAgICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgi
JXBpZCJfcywgU3RyaW5nOjpudW1iZXIoZ2V0Q3VycmVudFByb2Nlc3NJRCgpKSk7CiAgICAgICAg
ICAgICAgICAgZmQgPSBvcGVuKEZpbGVTeXN0ZW06OmZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihw
YXRoKS5kYXRhKCksIE9fQ1JFQVQgfCBPX1RSVU5DIHwgT19BUFBFTkQgfCBPX1dST05MWSB8IE9f
RVhMT0NLIHwgT19OT05CTE9DSywgMDY2Nik7CiAgICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NF
UlQoZmQgIT0gLTEpOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ29k
ZS5jcHAKaW5kZXggNmJmNWExYzM2Mjg1ZWQ3YjIwMDE2N2M0ODg3MjNkMDRkNjUwYmUwYy4uOTgz
NmVhNWYzOWY3MGIwYTQ3YTc2ZTUyMzQ2NmE5MzQ4NmZjMWNmOCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVENvZGUuY3BwCkBAIC00NCwyNCArNDQsMjQgQEAgSklUQ29kZTo6fkpJVENvZGUo
KQogewogfQogCi1jb25zdCBjaGFyKiBKSVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUp
CitBU0NJSUxpdGVyYWwgSklUQ29kZTo6dHlwZU5hbWUoSklUVHlwZSBqaXRUeXBlKQogewogICAg
IHN3aXRjaCAoaml0VHlwZSkgewogICAgIGNhc2UgSklUVHlwZTo6Tm9uZToKLSAgICAgICAgcmV0
dXJuICJOb25lIjsKKyAgICAgICAgcmV0dXJuICJOb25lIl9zOwogICAgIGNhc2UgSklUVHlwZTo6
SG9zdENhbGxUaHVuazoKLSAgICAgICAgcmV0dXJuICJIb3N0IjsKKyAgICAgICAgcmV0dXJuICJI
b3N0Il9zOwogICAgIGNhc2UgSklUVHlwZTo6SW50ZXJwcmV0ZXJUaHVuazoKLSAgICAgICAgcmV0
dXJuICJMTEludCI7CisgICAgICAgIHJldHVybiAiTExJbnQiX3M7CiAgICAgY2FzZSBKSVRUeXBl
OjpCYXNlbGluZUpJVDoKLSAgICAgICAgcmV0dXJuICJCYXNlbGluZSI7CisgICAgICAgIHJldHVy
biAiQmFzZWxpbmUiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpERkdKSVQ6Ci0gICAgICAgIHJldHVy
biAiREZHIjsKKyAgICAgICAgcmV0dXJuICJERkciX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpGVExK
SVQ6Ci0gICAgICAgIHJldHVybiAiRlRMIjsKKyAgICAgICAgcmV0dXJuICJGVEwiX3M7CiAgICAg
ZGVmYXVsdDoKICAgICAgICAgQ1JBU0goKTsKLSAgICAgICAgcmV0dXJuICIiOworICAgICAgICBy
ZXR1cm4gIiJfczsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvSklUQ29kZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmgKaW5k
ZXggN2UzODMzODJiM2Y1MWNlNzQxODUzMzhkNjBkZDYwMDVjM2E1YmNjNy4uZmIxMDZkZWZkMzA5
ZjE3YjFiZDRkNmRjYTAxOTAyN2Y1OTBiM2FiYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRDb2RlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRD
b2RlLmgKQEAgLTcwLDcgKzcwLDcgQEAgcHVibGljOgogICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+
IHVzaW5nIENvZGVQdHIgPSBNYWNyb0Fzc2VtYmxlckNvZGVQdHI8dGFnPjsKICAgICB0ZW1wbGF0
ZTxQdHJUYWcgdGFnPiB1c2luZyBDb2RlUmVmID0gTWFjcm9Bc3NlbWJsZXJDb2RlUmVmPHRhZz47
CiAKLSAgICBzdGF0aWMgY29uc3QgY2hhciogdHlwZU5hbWUoSklUVHlwZSk7CisgICAgc3RhdGlj
IEFTQ0lJTGl0ZXJhbCB0eXBlTmFtZShKSVRUeXBlKTsKIAogICAgIHN0YXRpYyBKSVRUeXBlIGJv
dHRvbVRpZXJKSVQoKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvSklUT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJh
dGlvbnMuY3BwCmluZGV4IGVmYzlhMGU4YmIwMmUyMjU4MTE4NDYyM2QxMDYwYTg5MzVjZGYyYTEu
LmFiNjZlYTQyOWQ0ODUwZWI3YzFiYmRlNjZmYzkxZDJiZGQzY2VlMzYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcApAQCAtMTI3LDcgKzEyNyw3IEBAIHN0
YXRpYyBKU1ZhbHVlIGdldFdyYXBwZWRWYWx1ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0dsb2JhbE9iamVjdCogdGFyCiAgICAgaWYgKHZhbHVlLmlzQ2FsbGFibGUodm0pKQogICAg
ICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTUmVtb3RlRnVuY3Rpb246OnRyeUNyZWF0
ZSh0YXJnZXRHbG9iYWxPYmplY3QsIHZtLCBzdGF0aWNfY2FzdDxKU09iamVjdCo+KHZhbHVlLmFz
Q2VsbCgpKSkpOwogCi0gICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZh
bHVlIHBhc3NpbmcgYmV0d2VlbiByZWFsbXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUi
KTsKKyAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAidmFsdWUgcGFzc2lu
ZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJlIGNhbGxhYmxlIG9yIHByaW1pdGl2ZSJfcyk7CiAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggZTdkM2Nl
OTQyMWU1ZGMxMmUwOWJhZjAyYmU1NTA0MmFmYWQ2MDdkOC4uYmQyZWI4MTJjNmMzN2VkNTJlZGM2
M2I5MjY3ZmNiY2E5ODE1OTRhMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pz
Yy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTc0MSw3ICs3NDEs
NyBAQCBzdGF0aWMgYm9vbCBzaGVsbFN1cHBvcnRzUmljaFNvdXJjZUluZm8oY29uc3QgSlNHbG9i
YWxPYmplY3QqKQogICAgIHJldHVybiBzdXBwb3J0c1JpY2hTb3VyY2VJbmZvOwogfQogCi1jb25z
dCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJnbG9iYWwiLCAmSlNHbG9iYWxP
YmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9i
YWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJn
bG9iYWwiX3MsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhv
ZFRhYmxlIEdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAm
c2hlbGxTdXBwb3J0c1JpY2hTb3VyY2VJbmZvLAogICAgICZzaG91bGRJbnRlcnJ1cHRTY3JpcHQs
CkBAIC0xMDkzLDEwICsxMDkzLDEwIEBAIHByaXZhdGU6CiAgICAgU3RyaW5nIGNhY2hlUGF0aCgp
IGNvbnN0CiAgICAgewogICAgICAgICBpZiAoIWNhY2hlRW5hYmxlZCgpKQotICAgICAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IGNoYXIqPihudWxscHRyKTsKKyAgICAgICAgICAgIHJl
dHVybiB7IH07CiAgICAgICAgIGNvbnN0IGNoYXIqIGNhY2hlUGF0aCA9IE9wdGlvbnM6OmRpc2tD
YWNoZVBhdGgoKTsKICAgICAgICAgU3RyaW5nIGZpbGVuYW1lID0gRmlsZVN5c3RlbTo6ZW5jb2Rl
Rm9yRmlsZU5hbWUoRmlsZVN5c3RlbTo6bGFzdENvbXBvbmVudE9mUGF0aElnbm9yaW5nVHJhaWxp
bmdTbGFzaChzb3VyY2VPcmlnaW4oKS51cmwoKS5maWxlU3lzdGVtUGF0aCgpKSk7Ci0gICAgICAg
IHJldHVybiBGaWxlU3lzdGVtOjpwYXRoQnlBcHBlbmRpbmdDb21wb25lbnQoY2FjaGVQYXRoLCBt
YWtlU3RyaW5nKHNvdXJjZSgpLnRvU3RyaW5nKCkuaGFzaCgpLCAnLScsIGZpbGVuYW1lLCAiLmJ5
dGVjb2RlLWNhY2hlIikpOworICAgICAgICByZXR1cm4gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5k
aW5nQ29tcG9uZW50KFN0cmluZyB7IGNhY2hlUGF0aCB9LCBtYWtlU3RyaW5nKHNvdXJjZSgpLnRv
U3RyaW5nKCkuaGFzaCgpLCAnLScsIGZpbGVuYW1lLCAiLmJ5dGVjb2RlLWNhY2hlIikpOwogICAg
IH0KIAogICAgIHZvaWQgbG9hZEJ5dGVjb2RlKCkgY29uc3QKQEAgLTEyNTksMTAgKzEyNTksMTAg
QEAgc3RhdGljIENTdHJpbmcgdG9DU3RyaW5nKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFRocm93U2NvcGUmIHNjb3BlLCBUJiBzdHIKICAgICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFVURjhDb252
ZXJzaW9uRXJyb3I6OklsbGVnYWxTb3VyY2U6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9u
KGdsb2JhbE9iamVjdCwgY3JlYXRlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiSWxsZWdhbCBzb3VyY2Ug
ZW5jb3VudGVyZWQgZHVyaW5nIFVURjggY29udmVyc2lvbiIpKTsKKyAgICAgICAgc2NvcGUudGhy
b3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxl
Z2FsIHNvdXJjZSBlbmNvdW50ZXJlZCBkdXJpbmcgVVRGOCBjb252ZXJzaW9uIl9zKSk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgVVRGOENvbnZlcnNpb25FcnJvcjo6U291cmNlRXhoYXVzdGVk
OgotICAgICAgICBzY29wZS50aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9y
KGdsb2JhbE9iamVjdCwgIlNvdXJjZSBleGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVyc2lvbiIp
KTsKKyAgICAgICAgc2NvcGUudGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJv
cihnbG9iYWxPYmplY3QsICJTb3VyY2UgZXhoYXVzdGVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24i
X3MpKTsKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgUkVMRUFTRV9BU1NF
UlRfTk9UX1JFQUNIRUQoKTsKQEAgLTE0NzcsNyArMTQ3Nyw3IEBAIHByaXZhdGU6CiAgICAgfQog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ01lbW9yeUZvb3RwcmludDo6c19pbmZvID0geyAiTWVt
b3J5Rm9vdHByaW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0NNZW1vcnlGb290cHJpbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNDTWVt
b3J5Rm9vdHByaW50OjpzX2luZm8gPSB7ICJNZW1vcnlGb290cHJpbnQiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDTWVtb3J5Rm9vdHBy
aW50KSB9OwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25NZW1vcnlVc2FnZVN0
YXRpc3RpY3MsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqKSkKIHsK
QEAgLTE2NjIsMTMgKzE2NjIsMTMgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9u
UmVhZEZpbGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnIKICAgICAgICAg
U3RyaW5nIHR5cGUgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDEpLnRvV1RGU3RyaW5nKGdsb2JhbE9i
amVjdCk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVl
KCkpOwogICAgICAgICBpZiAodHlwZSAhPSAiYmluYXJ5IikKLSAgICAgICAgICAgIHJldHVybiB0
aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkV4cGVjdGVkICdiaW5hcnknIGFzIHNl
Y29uZCBhcmd1bWVudC4iKTsKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgIkV4cGVjdGVkICdiaW5hcnknIGFzIHNlY29uZCBhcmd1bWVudC4iX3Mp
OwogICAgICAgICBpc0JpbmFyeSA9IHRydWU7CiAgICAgfQogCiAgICAgUmVmUHRyPFVpbnQ4QXJy
YXk+IGNvbnRlbnQgPSBmaWxsQnVmZmVyV2l0aENvbnRlbnRzT2ZGaWxlKGZpbGVOYW1lKTsKICAg
ICBpZiAoIWNvbnRlbnQpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkNvdWxkIG5vdCBvcGVuIGZpbGUuIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZN
RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkNvdWxkIG5vdCBvcGVuIGZpbGUuIl9zKTsKIAog
ICAgIGlmICghaXNCaW5hcnkpCiAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJp
bmcodm0sIFN0cmluZzo6ZnJvbVVURjhXaXRoTGF0aW4xRmFsbGJhY2soY29udGVudC0+ZGF0YSgp
LCBjb250ZW50LT5sZW5ndGgoKSkpKTsKQEAgLTE4MTIsNyArMTgxMiw3IEBAIHByaXZhdGU6CiAg
ICAgRklMRSogbV9kZXNjcmlwdG9yOwogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmlsZURlc2Ny
aXB0b3I6OnNfaW5mbyA9IHsgIkZpbGVEZXNjcmlwdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbGVEZXNjcmlwdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTRmlsZURlc2NyaXB0b3I6OnNfaW5mbyA9IHsgIkZpbGVEZXNjcmlwdG9y
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTRmlsZURlc2NyaXB0b3IpIH07CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlv
bk9wZW5GaWxlLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxs
RnJhbWUpKQogewpAQCAtMTg0Nyw3ICsxODQ3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9O
KGZ1bmN0aW9uUmVhZGxpbmUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnIK
ICAgICAgICAgbGluZS5hcHBlbmQoYyk7CiAgICAgfQogICAgIGxpbmUuYXBwZW5kKCdcMCcpOwot
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcoZ2xvYmFsT2JqZWN0LT52bSgpLCBs
aW5lLmRhdGEoKSkpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcoZ2xvYmFs
T2JqZWN0LT52bSgpLCBTdHJpbmcgeyBsaW5lLmRhdGEoKSB9KSk7CiB9CiAKIEpTQ19ERUZJTkVf
SE9TVF9GVU5DVElPTihmdW5jdGlvblByZWNpc2VUaW1lLCAoSlNHbG9iYWxPYmplY3QqLCBDYWxs
RnJhbWUqKSkKQEAgLTE5MDEsNyArMTkwMSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihm
dW5jdGlvbkNhbGxlcklzQkJRT3JPTUdDb21waWxlZCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iCiAg
ICAgQ2FsbGVyRnVuY3RvciB3YXNtVG9KU0ZyYW1lOwogICAgIFN0YWNrVmlzaXRvcjo6dmlzaXQo
Y2FsbEZyYW1lLCB2bSwgd2FzbVRvSlNGcmFtZSk7CiAgICAgaWYgKCF3YXNtVG9KU0ZyYW1lLmNh
bGxlckZyYW1lKCkgfHwgIXdhc21Ub0pTRnJhbWUuY2FsbGVyRnJhbWUoKS0+aXNBbnlXYXNtQ2Fs
bGVlKCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
ImNhbGxlciBpcyBub3QgYSB3YXNtLT5qcyBpbXBvcnQgZnVuY3Rpb24iKTsKKyAgICAgICAgcmV0
dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdh
c20tPmpzIGltcG9ydCBmdW5jdGlvbiJfcyk7CiAKICAgICAvLyBXZSBoYXZlIGEgd3JhcHBlciBm
cmFtZSB0aGF0IHdlIGdlbmVyYXRlIGZvciBpbXBvcnRzLiBJZiB3ZSBldmVyIGNhbiBkaXJlY3Qg
Y2FsbCBmcm9tIHdhc20gd2Ugd291bGQgbmVlZCB0byBjaGFuZ2UgdGhpcy4KICAgICBBU1NFUlQo
IXdhc21Ub0pTRnJhbWUuY2FsbGVyRnJhbWUoKS0+Y2FsbGVlKCkuaXNXYXNtKCkpOwpAQCAtMjUy
NCw3ICsyNTI0LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uU2V0VGltZW91
dCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGwKICAgICB2bS5kZWZlcnJlZFdv
cmtUaW1lci0+c2NoZWR1bGVXb3JrU29vbih0aWNrZXQsIFtjYWxsYmFja10oRGVmZXJyZWRXb3Jr
VGltZXI6OlRpY2tldCkgewogICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0g
Y2FsbGJhY2stPmdsb2JhbE9iamVjdCgpOwogICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBh
cmdzOwotICAgICAgICBjYWxsKGdsb2JhbE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCks
IGFyZ3MsICJZb3Ugc2hvdWxkbid0IHNlZSB0aGlzLi4uIik7CisgICAgICAgIGNhbGwoZ2xvYmFs
T2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmluZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2Vl
IHRoaXMuLi4iX3MpOwogICAgIH0pOwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRl
ZmluZWQoKSk7CiB9CkBAIC0yODEzLDkgKzI4MTMsOSBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJ
T04oZnVuY3Rpb25XZWJBc3NlbWJseU1lbW9yeU1vZGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFs
TwogCiAgICAgaWYgKEpTT2JqZWN0KiBvYmplY3QgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmdl
dE9iamVjdCgpKSB7CiAgICAgICAgIGlmIChhdXRvKiBtZW1vcnkgPSBqc0R5bmFtaWNDYXN0PEpT
V2ViQXNzZW1ibHlNZW1vcnkqPih2bSwgb2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoanNTdHJpbmcodm0sIG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2Rl
KCkpKSk7CisgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBT
dHJpbmcgeyBtYWtlU3RyaW5nKG1lbW9yeS0+bWVtb3J5KCkubW9kZSgpKSB9KSk7CiAgICAgICAg
IGlmIChhdXRvKiBpbnN0YW5jZSA9IGpzRHluYW1pY0Nhc3Q8SlNXZWJBc3NlbWJseUluc3RhbmNl
Kj4odm0sIG9iamVjdCkpCi0gICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3Ry
aW5nKHZtLCBtYWtlU3RyaW5nKGluc3RhbmNlLT5tZW1vcnlNb2RlKCkpKSk7CisgICAgICAgICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBTdHJpbmcgeyBtYWtlU3RyaW5n
KGluc3RhbmNlLT5tZW1vcnlNb2RlKCkpIH0pKTsKICAgICB9CiAKICAgICByZXR1cm4gdGhyb3dW
TVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHlNZW1vcnlNb2RlIGV4
cGVjdHMgZWl0aGVyIGEgV2ViQXNzZW1ibHkuTWVtb3J5IG9yIFdlYkFzc2VtYmx5Lkluc3RhbmNl
Il9zKTsKQEAgLTMxODMsNyArMzE4Myw3IEBAIHN0YXRpYyB2b2lkIHJ1bldpdGhPcHRpb25zKEds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDb21tYW5kTGluZSYgb3B0aW9ucywgYm9vCiAgICAg
ICAgIEpTSW50ZXJuYWxQcm9taXNlKiBwcm9taXNlID0gbnVsbHB0cjsKICAgICAgICAgYm9vbCBp
c01vZHVsZSA9IG9wdGlvbnMubV9tb2R1bGUgfHwgc2NyaXB0c1tpXS5zY3JpcHRUeXBlID09IFNj
cmlwdDo6U2NyaXB0VHlwZTo6TW9kdWxlOwogICAgICAgICBpZiAoc2NyaXB0c1tpXS5jb2RlU291
cmNlID09IFNjcmlwdDo6Q29kZVNvdXJjZTo6RmlsZSkgewotICAgICAgICAgICAgZmlsZU5hbWUg
PSBzY3JpcHRzW2ldLmFyZ3VtZW50OworICAgICAgICAgICAgZmlsZU5hbWUgPSBTdHJpbmcgeyBz
Y3JpcHRzW2ldLmFyZ3VtZW50IH07CiAgICAgICAgICAgICBpZiAoc2NyaXB0c1tpXS5zdHJpY3RN
b2RlID09IFNjcmlwdDo6U3RyaWN0TW9kZTo6U3RyaWN0KQogICAgICAgICAgICAgICAgIHNjcmlw
dEJ1ZmZlci5hcHBlbmQoIlwidXNlIHN0cmljdFwiO1xuIiwgc3RybGVuKCJcInVzZSBzdHJpY3Rc
IjtcbiIpKTsKIApAQCAtMzQzMCw3ICszNDMwLDcgQEAgdm9pZCBDb21tYW5kTGluZTo6cGFyc2VB
cmd1bWVudHMoaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogICAgICAgICAgICAgaWYgKCsraSA9PSBh
cmdjKQogICAgICAgICAgICAgICAgIHByaW50VXNhZ2VTdGF0ZW1lbnQoKTsKICAgICAgICAgICAg
IE9wdGlvbnM6OnNldE9wdGlvbigidXNlUHJvZmlsZXI9MSIpOwotICAgICAgICAgICAgbV9wcm9m
aWxlck91dHB1dCA9IGFyZ3ZbaV07CisgICAgICAgICAgICBtX3Byb2ZpbGVyT3V0cHV0ID0gU3Ry
aW5nIHsgYXJndltpXSB9OwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KICAgICAg
ICAgaWYgKCFzdHJjbXAoYXJnLCAiLW0iKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9s
bGludC9MTEludFNsb3dQYXRocy5jcHAKaW5kZXggZGE2MDBlYTAwZjBjOGQ2NDNhNTdmNjZmYjVm
OWIwZTNhMzU2ODNhOC4uN2I0ODI3ZWYzYzIzNjcyMDVkYzhkMjM5ZWE0MmE4MTdhMzk4Mjc5NSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwCkBA
IC0yMzI4LDkgKzIzMjgsOSBAQCBzdGF0aWMgdm9pZCBoYW5kbGVWYXJhcmdzQ2hlY2twb2ludChW
TSYgdm0sIENhbGxGcmFtZSogY2FsbEZyYW1lLCBKU0dsb2JhbE9iamVjdAogCiAgICAgSlNWYWx1
ZSByZXN1bHQ7CiAgICAgaWYgKE9wY29kZTo6b3Bjb2RlSUQgIT0gb3BfY29uc3RydWN0X3ZhcmFy
Z3MpCi0gICAgICAgIHJlc3VsdCA9IGNhbGwoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxG
cmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUpLCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUu
bV90aGlzVmFsdWUpLCBhcmdzLCAiIik7CisgICAgICAgIHJlc3VsdCA9IGNhbGwoZ2xvYmFsT2Jq
ZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUpLCBnZXRPcGVyYW5k
KGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIl9zKTsKICAgICBlbHNl
Ci0gICAgICAgIHJlc3VsdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQoY2Fs
bEZyYW1lLCBieXRlY29kZS5tX2NhbGxlZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29k
ZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIiKTsKKyAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGds
b2JhbE9iamVjdCwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0
T3BlcmFuZChjYWxsRnJhbWUsIGJ5dGVjb2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiJfcyk7CiAK
ICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGNhbGxGcmFtZS0+
dW5jaGVja2VkUihieXRlY29kZS5tX2RzdCkgPSByZXN1bHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvTGV4ZXIuY3BwCmluZGV4IDhjZWU5ZjA5Y2E4YjEwMTkyY2NjMmE4YjliZDFjMGM3MDAy
ZWMyYzkuLmJlMTQwMzg5N2VhODdmODdjNWRiOThjOTAwZmI0ZWNkZWM0MDY5ZDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCkBAIC0yNjg1LDcgKzI2ODUsNyBAQCBKU1Rv
a2VuVHlwZSBMZXhlcjxUPjo6c2NhblJlZ0V4cChKU1Rva2VuKiB0b2tlblJlY29yZCwgVUNoYXIg
cGF0dGVyblByZWZpeCkKICAgICAgICAgbV9lcnJvciA9IHRydWU7CiAgICAgICAgIFN0cmluZyBj
b2RlUG9pbnQgPSBTdHJpbmc6OmZyb21Db2RlUG9pbnQoY3VycmVudENvZGVQb2ludCgpKTsKICAg
ICAgICAgaWYgKCFjb2RlUG9pbnQpCi0gICAgICAgICAgICBjb2RlUG9pbnQgPSAiYGludmFsaWQg
dW5pY29kZSBjaGFyYWN0ZXJgIjsKKyAgICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52YWxpZCB1
bmljb2RlIGNoYXJhY3RlcmAiX3M7CiAgICAgICAgIG1fbGV4RXJyb3JNZXNzYWdlID0gbWFrZVN0
cmluZygiSW52YWxpZCBub24tbGF0aW4gY2hhcmFjdGVyIGluIFJleEV4cCBsaXRlcmFsJ3MgZmxh
Z3MgJyIsIGdldFRva2VuKCp0b2tlblJlY29yZCksIGNvZGVQb2ludCwgIiciKTsKICAgICAgICAg
cmV0dXJuIHRva2VuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNw
cAppbmRleCA1NTI2ZjVjOWExMjUwMDgxMzNlOTE4ZTI2ZWYzMjQ3YTg1ZGUyMzg5Li44MmVjMjVh
OGJmZTNiNDU2ZjMwNjc1OTY2YjBmNDk2MTM1MWE2NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9QYXJzZXIuY3BwCkBAIC01MDA5LDcgKzUwMDksNyBAQCB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9uIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZVByaW1h
cnlFeHByZQogICAgICAgICBUcmVlRXhwcmVzc2lvbiByZSA9IGNvbnRleHQuY3JlYXRlUmVnRXhw
KGxvY2F0aW9uLCAqcGF0dGVybiwgKmZsYWdzLCBzdGFydCk7CiAgICAgICAgIGlmICghcmUpIHsK
ICAgICAgICAgICAgIFlhcnI6OkVycm9yQ29kZSBlcnJvckNvZGUgPSBZYXJyOjpjaGVja1N5bnRh
eChwYXR0ZXJuLT5zdHJpbmcoKSwgZmxhZ3MtPnN0cmluZygpKTsKLSAgICAgICAgICAgIHJlZ2V4
RmFpbChZYXJyOjplcnJvck1lc3NhZ2UoZXJyb3JDb2RlKSk7CisgICAgICAgICAgICByZWdleEZh
aWwoU3RyaW5nIHsgWWFycjo6ZXJyb3JNZXNzYWdlKGVycm9yQ29kZSkgfSk7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIHJlOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Fic3RyYWN0TW9kdWxlUmVjb3JkLmNwcAppbmRleCA0MjViOGZhZDEzODBl
NzNjNjhlODIxNmRlNDViZWQ0NmRiYWFkZTU4Li5lOTM4MmQ0OTQzMmM5MmVjODVlMzMxZGQ1YmUz
MzE1MGEzNmNmMTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
YnN0cmFjdE1vZHVsZVJlY29yZC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBB
YnN0cmFjdE1vZHVsZVJlY29yZEludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJi
b3NlID0gZmFsc2U7CiB9IC8vIG5hbWVzcGFjZSBBYnN0cmFjdE1vZHVsZVJlY29yZEludGVybmFs
CiAKLWNvbnN0IENsYXNzSW5mbyBBYnN0cmFjdE1vZHVsZVJlY29yZDo6c19pbmZvID0geyAiQWJz
dHJhY3RNb2R1bGVSZWNvcmQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFic3RyYWN0TW9kdWxlUmVjb3JkKSB9OworY29uc3QgQ2xhc3NJbmZv
IEFic3RyYWN0TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7ICJBYnN0cmFjdE1vZHVsZVJlY29yZCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShB
YnN0cmFjdE1vZHVsZVJlY29yZCkgfTsKIAogQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OkFic3RyYWN0
TW9kdWxlUmVjb3JkKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IElkZW50aWZp
ZXImIG1vZHVsZUtleSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggZTliZGI3Yzg1ZGFhZmU1NmNiZjgxYmU2YjRlNzVlZjdkZTNiZDI3ZS4uMGY0
OTViNjc4MzljMDNkZjQwZjA5ZjI5ZTE1OThlMmU2NmFhN2Y1MCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRf
SVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShBZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFnZ3Jl
Z2F0ZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9y
Q29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxB
Z2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcAppbmRleCAwODg2Zjkz
ZjY1Y2Y1YzYxMWM1M2I0ZDhiNTJkNjQ1YzNkNTMxZWJmLi5kN2IxMzg2NmEzMGJlZTIxOWQ3MTE0
YjliODZmOTJhZWQ2YzFiNWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQCBuYW1lc3BhY2UgSlND
IHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEFycmF5Q29uc3Ry
dWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmYXJyYXlDb25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5Q29uc3RydWN0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gQXJyYXlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVjdG9yVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNl
IGZvciBBcnJheUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gYXJyYXlDb25zdHJ1Y3RvclRhYmxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUl0ZXJhdG9y
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0
b3JQcm90b3R5cGUuY3BwCmluZGV4IGQzYWQyMWU1YmM5N2VhOTQ1MGM2Y2UwYjZmN2UwYzYyNTE3
YzkxOTkuLjNmOTY4ZDIxZDUzN2RlN2Y2YTJkOTEwYjgwMjM2YjM4ZGFjNzNiOTcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90
b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gQXJyYXlJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXJyYXkgSXRlcmF0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEFycmF5SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRv
clByb3RvdHlwZTo6c19pbmZvID0geyAiQXJyYXkgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9BcnJheVByb3RvdHlwZS5jcHAKaW5kZXggMTgxNWUxNDdiOTY1
ZWNjNjJhMmVlM2JlODhkOTQ4YTBjMGI0ZjBlZC4uNTczYTE3YjBkYzBkOTBkMzQxOWEwMzY1MTYw
YTQyYzQxNTAzZjNkYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
cmF5UHJvdG90eXBlLmNwcApAQCAtNTcsNyArNTcsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihhcnJheVByb3RvRnVuY0xhc3RJbmRleE9mKTsKIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIEFycmF5UHJvdG90eXBlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0KIAotY29uc3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7IkFycmF5
IiwgJkpTQXJyYXk6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShBcnJheVByb3RvdHlwZSl9OworY29uc3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJBcnJheSJfcywgJkpTQXJyYXk6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShBcnJheVByb3RvdHlwZSkgfTsKIAogQXJyYXlQcm90b3R5cGUqIEFy
cmF5UHJvdG90eXBlOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKQEAgLTI1NCw3ICsyNTQsNyBAQCBzdGF0aWMgQUxX
QVlTX0lOTElORSBzdGQ6OnBhaXI8U3BlY2llc0NvbnN0cnVjdFJlc3VsdCwgSlNPYmplY3QqPiBz
cGVjaWVzQ29uc3RydQogICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgYXJncy5h
cHBlbmQoanNOdW1iZXIobGVuZ3RoKSk7CiAgICAgQVNTRVJUKCFhcmdzLmhhc092ZXJmbG93ZWQo
KSk7Ci0gICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGNv
bnN0cnVjdG9yLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBnZXQgYSB2YWxp
ZCBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiBuZXdPYmplY3QgPSBjb25zdHJ1Y3QoZ2xv
YmFsT2JqZWN0LCBjb25zdHJ1Y3RvciwgYXJncywgIlNwZWNpZXMgY29uc3RydWN0aW9uIGRpZCBu
b3QgZ2V0IGEgdmFsaWQgY29uc3RydWN0b3IiX3MpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGV4Y2VwdGlvblJlc3VsdCk7CiAgICAgcmV0dXJuIHN0ZDo6cGFpciB7IFNwZWNpZXND
b25zdHJ1Y3RSZXN1bHQ6OkNyZWF0ZWRPYmplY3QsIG5ld09iamVjdCB9OwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnJvbVN5bmNJ
dGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMzIwOTU5YTk5MDQ3MTUzYWNlYjM5YWRiZGIwZjIx
NDEyNjFmYWY5ZS4uY2U4ZGFlZWU0ZmRkMmExODQxYjhjZmY4NGRiMzAzMWFkMGFmMTdhNyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJh
dG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3lu
Y0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJBc3luY0Zyb21TeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAm
YXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNGcm9t
U3luY0l0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGcm9tU3luY0l0
ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBBc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGU6OkFz
eW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZjdm
YWM1OGJjNDk4YmUwY2QyY2E0NGQ1ZTNmYTJiZDA2MTFjZjYwOS4uNGNmN2Q2ZmIzODAzYjU2MDIw
MGNkMjU2YjU0NmIwZTUzNmZmYzU4ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICsz
NCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNU
UlVDVElCTEUoQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEFz
eW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGdW5j
dGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3Ip
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxBc3luY0Z1bmN0aW9u
Q29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0
QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAKaW5kZXggNDUxZDEwOTM3
ZDY0MmM3ZDI2YWVlMDJlMzVmODVkNWVhOGIzN2QxZi4uNWZmMTUyY2FmNWMxODU1NWRmZTBmYzMw
ZjZjZDIwNzkzMzk5NmEwMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0Z1bmN0aW9uUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXN5bmNGdW5jdGlvblByb3RvdHlwZSkgfTsKIAogQXN5bmNGdW5jdGlvblByb3RvdHlw
ZTo6QXN5bmNGdW5jdGlvblByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ICAgIDogSlNDOjpKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3Ry
dWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JG
dW5jdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCAxMmM5YWJlNDU3NmM5ZWI5ZTNhYjQ3Yjg4MmIy
ZGI2NmM2ZTIxZDc1Li41N2FlOWIwM2ExYTUzOTM0NzgyNThlZTk1Y2E3MTYyMjg1MTlkZTY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8g
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0dlbmVy
YXRvckZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBD
bGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJB
c3luY0dlbmVyYXRvckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcikg
fTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jR2VuZXJhdG9y
RnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihj
b25zdHJ1Y3RBc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvblByb3Rv
dHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1
bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCA4YjQwNDg1NDdmOGZkYmNhNTU5N2IzOGE5N2Y4MDQ5
YjI5ZDQ3MTg3Li42ZjQ2M2NmZTNiNDU1MDk3OTY4OWRmNzE1Mjk4MjkyYzI4MWQzN2FlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0
aW9uUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3lu
Y0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVu
Y3Rpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVy
YXRvckZ1bmN0aW9uUHJvdG90eXBlKSB9OwogCiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlOjpBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiAgICAgOiBKU0M6OkpTTm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9y
UHJvdG90eXBlLmNwcAppbmRleCAwZTZkY2I1M2Q2MzgwOTU1NTUyZGQwYzdmM2QxMjYwZTcyM2Rm
NThjLi5jZjIyMThkZTVhYWI5ZmZmNTczODFmNTFkNzBhNDRhY2NiMWZiYTVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvclByb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JQcm90
b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gQXN5bmNHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJh
dG9yIiwgJkJhc2U6OnNfaW5mbywgJmFzeW5jR2VuZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jR2Vu
ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsK
IAogLyogU291cmNlIGZvciBBc3luY0dlbmVyYXRvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGFz
eW5jR2VuZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggY2M2OTg2MzIx
MDczMGZjZmY0MTBjN2U5ZmI5MmM0OTJkMGQwN2NkZS4uZmEzYTAzY2FiYWRhN2NhNzFlNTIwZWUw
MjdmNTg4MTVhN2M1ZjI4YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBc3luY0l0ZXJhdG9yUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJBc3luY0l0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRl
cmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQXN5bmNJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBBc3luY0l0ZXJhdG9yUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BdG9taWNz
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0b21pY3NPYmplY3Qu
Y3BwCmluZGV4IDllZTQ1ZGY0NzNhNDkxNTc1ZDk1NWJjZjc5OTBlZmQwNWI4MGFkODYuLmUyZjgx
NzU4MWNjMTgwNmU4Nzg0M2Q1ZDhmOTk1NDMxMGY2OTJmN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0b21pY3NPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0F0b21pY3NPYmplY3QuY3BwCkBAIC01NSw3ICs1NSw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBdG9taWNzT2JqZWN0KTsKIEZP
Ul9FQUNIX0FUT01JQ1NfRlVOQyhERUNMQVJFX0ZVTkNfUFJPVE8pCiAjdW5kZWYgREVDTEFSRV9G
VU5DX1BST1RPCiAKLWNvbnN0IENsYXNzSW5mbyBBdG9taWNzT2JqZWN0OjpzX2luZm8gPSB7ICJB
dG9taWNzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShBdG9taWNzT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNf
aW5mbyA9IHsgIkF0b21pY3MiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoQXRvbWljc09iamVjdCkgfTsKIAogQXRvbWljc09iamVjdDo6QXRv
bWljc09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNOb25GaW5h
bE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQmlnSW50Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQmlnSW50Q29uc3RydWN0b3IuY3BwCmluZGV4IDViODVkOWIxYjc1NDVmNjRmZjVhMmJm
YWExY2U4ZjU1MDY4MDdlOWQuLjc3NTZjYWUxYTcwNTc0MTg1Y2U5NzU3ZTdjMjNiN2IzNWQyOTRl
MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludENvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRDb25z
dHJ1Y3Rvci5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShCaWdJbnRDb25zdHJ1Y3Rvcik7CiAKLWNv
bnN0IENsYXNzSW5mbyBCaWdJbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCAmYmlnSW50Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShCaWdJbnRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZiaWdJ
bnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludENv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEJpZ0ludENvbnN0cnVjdG9yLmx1dC5oCiBA
YmVnaW4gYmlnSW50Q29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0JpZ0ludE9iamVjdC5jcHAKaW5kZXggZjE3ZTU3Yzg1ZGQ2YTBjYTUxZGZlNjViNmMz
NGNlYmQyY2Y4YWFjYi4uMjdmYTY4Y2YwMzMxOGQ4ODI5MzQyNDU1MjNiYmUxOWRiOGUyMzUzNyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwCkBA
IC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoQmlnSW50T2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJpZ0lu
dE9iamVjdDo6c19pbmZvID0geyAiQmlnSW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gQmlnSW50T2JqZWN0OjpzX2luZm8gPSB7ICJCaWdJbnQiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQmlnSW50T2JqZWN0KSB9OwogCiAK
IEJpZ0ludE9iamVjdCogQmlnSW50T2JqZWN0OjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGJpZ0ludCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRQcm90b3R5cGUuY3BwCmluZGV4IDk1MjIwOWQzNzE2NTVjNjA5
OGRiNmJlZTdiNWIzZTc1NmY2ZjliZGYuLjc4NjVhNzlmZTZlZDgyYmM1MDdmNTBkODAzZmEzMDNi
YmZmYTZmNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50
UHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihiaWdJbnRQcm90b0Z1bmNWYWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBCaWdJbnRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCIsICZCYXNl
OjpzX2luZm8sICZiaWdJbnRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShCaWdJbnRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gQmlnSW50UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJCaWdJbnQiX3MsICZCYXNlOjpzX2luZm8sICZiaWdJbnRQcm90b3R5cGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRQcm90b3R5cGUpIH07CiAK
IC8qIFNvdXJjZSBmb3IgQmlnSW50UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gYmlnSW50UHJvdG90
eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xl
YW5Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFu
Q29uc3RydWN0b3IuY3BwCmluZGV4IGVlMjUwNmY5MjYzNzU1NmQ3NDM5ODZiOTExNTU2NmVmMWJi
YWFhMzUuLmZhMmNmZGJjNjRiZWQwMzI0NzMxMWM3MDhlY2NjODdlNDMwZWE2MDYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNw
cApAQCAtMjgsNyArMjgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19U
UklWSUFMTFlfREVTVFJVQ1RJQkxFKEJvb2xlYW5Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVhbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShCb29sZWFuQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGNhbGxCb29sZWFuQ29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJF
X0hPU1RfRlVOQ1RJT04oY29uc3RydWN0V2l0aEJvb2xlYW5Db25zdHJ1Y3Rvcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCmluZGV4IGI4YzYy
NDZkMWZiOTBiY2Q1ODI0NmVhZWY0MzkyZmEyZDI2YWJmZmEuLjMxMWNhYzgxZmQxY2U1MzUzMmZk
NTNkOTVhNjkwNTFmODI0NGZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Jvb2xlYW5PYmplY3QuY3BwCkBAIC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbk9iamVjdCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFuT2JqZWN0OjpzX2luZm8gPSB7ICJCb29sZWFuIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29s
ZWFuT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsg
IkJvb2xlYW4iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoQm9vbGVhbk9iamVjdCkgfTsKIAogQm9vbGVhbk9iamVjdDo6Qm9vbGVhbk9iamVj
dChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3Rv
dHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBl
LmNwcAppbmRleCBhZjAwN2EzNWVhMGU0MGY1MzdmMTY3Y2QzMGYzNTNmNjk3ZGEwMzViLi44Nzdl
Mzg1MGUyMzAzZTZlNjY1MzkxZGY2NTFjYjg3NDQxOGRlMmM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUs
NyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihib29sZWFuUHJvdG9GdW5jVmFs
dWVPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQm9vbGVhblByb3Rv
dHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29s
ZWFuUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJCb29sZWFuIl9zLCAmQm9vbGVhbk9iamVjdDo6c19pbmZvLCAmYm9vbGVhblByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Qcm90b3R5cGUpIH07CiAK
IC8qIFNvdXJjZSBmb3IgQm9vbGVhblByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGJvb2xlYW5Qcm90
b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQnl0
ZWNvZGVDYWNoZUVycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVj
b2RlQ2FjaGVFcnJvci5jcHAKaW5kZXggYTlmY2IzZWYyNTQ5NjJlYzljMGQ4NDFmZjdhMmZmZjFj
NjE4NmZlZi4uZGQ5YzBlMzZjYWRmMmZhOWYzNjQzY2UxNGMzNzIzYTg5MjUxNDQ2NiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQnl0ZWNvZGVDYWNoZUVycm9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJyb3Iu
Y3BwCkBAIC0zNyw3ICszNyw3IEBAIGJvb2wgQnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFyZEVy
cm9yOjppc1ZhbGlkKCkgY29uc3QKIAogU3RyaW5nIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6U3RhbmRh
cmRFcnJvcjo6bWVzc2FnZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHNhZmVTdHJlcnJvcihtX2Vy
cm5vKS5kYXRhKCk7CisgICAgcmV0dXJuIFN0cmluZyB7IHNhZmVTdHJlcnJvcihtX2Vycm5vKS5k
YXRhKCkgfTsKIH0KIAogYm9vbCBCeXRlY29kZUNhY2hlRXJyb3I6OldyaXRlRXJyb3I6OmlzVmFs
aWQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2Fs
bERhdGEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCmlu
ZGV4IDk3ODlkNzczYzFjMzRlNjBhYTA1MjRjZmM3MmU3YTFiNjIzMGNhOWUuLmI2NDIyNjYzOGY3
ZjQ1YWU3ZTJkZDljNWU3Yzk2NWQ3M2ViYTQzODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9DYWxsRGF0YS5jcHAKQEAgLTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotSlNWYWx1ZSBjYWxsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
ZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9yTWVz
c2FnZSkKK0pTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JN
ZXNzYWdlKQogewogICAgIHJldHVybiBjYWxsKGdsb2JhbE9iamVjdCwgZnVuY3Rpb25PYmplY3Qs
IGZ1bmN0aW9uT2JqZWN0LCBhcmdzLCBlcnJvck1lc3NhZ2UpOwogfQogCi1KU1ZhbHVlIGNhbGwo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNW
YWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9yTWVz
c2FnZSkKK0pTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGZ1bmN0aW9uT2JqZWN0LCBKU1ZhbHVlIHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywg
QVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3Qt
PnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRhLmgKaW5kZXggNzNhOWMxNTVlZDQzZmEyMGI1
ODljMThiMWZmZWZmNGM0NDk0NTIzYy4uMWFjOTNlODEyMDhiOGQwZmMzZTZiMmUyZDYxMTAyMDJk
N2FmYjA3YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oCkBAIC02
MCw4ICs2MCw4IEBAIGVudW0gY2xhc3MgUHJvZmlsaW5nUmVhc29uIDogdWludDhfdCB7CiB9Owog
CiAvLyBDb252ZW5pZW5jZSB3cmFwcGVyIHNvIHlvdSBkb24ndCBuZWVkIHRvIGRlYWwgd2l0aCBD
YWxsRGF0YSB1bmxlc3MgeW91IGFyZSBnb2luZyB0byB1c2UgaXQuCi1KU19FWFBPUlRfUFJJVkFU
RSBKU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBj
b25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKTsKLUpTX0VYUE9SVF9QUklW
QVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciogZXJyb3JNZXNz
YWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpT
VmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JN
ZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCos
IEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0
JiwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CiAKIEpTX0VYUE9SVF9QUklWQVRFIEpTVmFs
dWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IENh
bGxEYXRhJiwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmKTsKIEpTX0VYUE9SVF9Q
UklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmpl
Y3QsIGNvbnN0IENhbGxEYXRhJiwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBO
YWtlZFB0cjxFeGNlcHRpb24+JiByZXR1cm5lZEV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oCmluZGV4IDI0NjQwMmUwYzVkMGJiNzdmNDZmOGUwZTFh
MjI5ZDFiY2FiZGI3OGIuLmE1NzY5MjhlZDhhYmMxMjVkOTU4NTQ4ZGFkMGQ5ZDBkNDk1MDc3OTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oCkBAIC0xNzYsNyAr
MTc2LDcgQEAgc3RydWN0IENsYXNzSW5mbyB7CiAgICAgdXNpbmcgQ2hlY2tKU0Nhc3RTbmlwcGV0
RnVuY3Rpb25QdHIgPSBSZWY8U25pcHBldD4gKCopKHZvaWQpOwogCiAgICAgLy8gQSBzdHJpbmcg
ZGVub3RpbmcgdGhlIGNsYXNzIG5hbWUuIEV4YW1wbGU6ICJXaW5kb3ciLgotICAgIGNvbnN0IGNo
YXIqIGNsYXNzTmFtZTsKKyAgICBBU0NJSUxpdGVyYWwgY2xhc3NOYW1lOwogICAgIC8vIFBvaW50
ZXIgdG8gdGhlIGNsYXNzIGluZm9ybWF0aW9uIG9mIHRoZSBiYXNlIGNsYXNzLgogICAgIC8vIG51
bGxwdHJpZiB0aGVyZSBpcyBub25lLgogICAgIGNvbnN0IENsYXNzSW5mbyogcGFyZW50Q2xhc3M7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNw
cAppbmRleCBkYTkwOGRhYzQ0MGJlNzY4ODAyNDRhMDY1YmNkOWU3ZTE4NjdiNWNkLi45ZjUxYmVk
M2RhYWZhOWIzODIxMDFmNjI0MjAzMDM5NWZmNjRkMWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0Nsb25lZEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShDbG9uZWRBcmd1bWVudHMpOwogCi1jb25zdCBDbGFzc0luZm8gQ2xvbmVkQXJndW1lbnRzOjpz
X2luZm8gPSB7ICJBcmd1bWVudHMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKENsb25lZEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBD
bG9uZWRBcmd1bWVudHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDbG9uZWRBcmd1bWVudHMpIH07
CiAKIENsb25lZEFyZ3VtZW50czo6Q2xvbmVkQXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEJ1dHRlcmZseSogYnV0dGVyZmx5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
LCBidXR0ZXJmbHkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9D
b2RlQ2FjaGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNw
cAppbmRleCAyODg0ZTlhNGFjYjlkODk3NjhhYTBjMzQ1ZDgzNjkwZTYzZDdlZjg2Li41MjYxZTMw
NDliOWNiYjQ2YzJkMDJlZjI2MzRhM2M1MmYyZDkyYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKQEAgLTIzMyw3ICsyMzMsNyBAQCBVbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZSogQ29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhl
Y3V0YWJsZShWTSYgdgogICAgIFN0YXRlbWVudE5vZGUqIGZ1bmNEZWNsID0gcHJvZ3JhbS0+c2lu
Z2xlU3RhdGVtZW50KCk7CiAgICAgaWYgKFVOTElLRUxZKCFmdW5jRGVjbCkpIHsKICAgICAgICAg
SlNUb2tlbiB0b2tlbjsKLSAgICAgICAgZXJyb3IgPSBQYXJzZXJFcnJvcihQYXJzZXJFcnJvcjo6
U3ludGF4RXJyb3IsIFBhcnNlckVycm9yOjpTeW50YXhFcnJvcklycmVjb3ZlcmFibGUsIHRva2Vu
LCAiUGFyc2VyIGVycm9yIiwgLTEpOworICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNl
ckVycm9yOjpTeW50YXhFcnJvciwgUGFyc2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJs
ZSwgdG9rZW4sICJQYXJzZXIgZXJyb3IiX3MsIC0xKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
CiAgICAgfQogICAgIEFTU0VSVChmdW5jRGVjbC0+aXNGdW5jRGVjbE5vZGUoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21wbGV0aW9uLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwCmluZGV4IDNmYmYxZDhkMzM4
M2E3YWIyMTcxYTkzOGFmYWU2OTYyYzdmY2IwY2YuLjE5ZDE2Y2I4MjQ4ZTlhMWY5ZmQ4YjhhMzE5
OGU3NzZiNDI5MmM4MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0NvbXBsZXRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBs
ZXRpb24uY3BwCkBAIC04MCw3ICs4MCw3IEBAIGJvb2wgY2hlY2tNb2R1bGVTeW50YXgoSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBQCiAgICAg
aWYgKCFtb2R1bGVQcm9ncmFtTm9kZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUHJp
dmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiRW50cnlQb2lu
dE1vZHVsZSIpOworICAgIFByaXZhdGVOYW1lIHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNj
cmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1bGUiX3MpOwogICAgIE1vZHVsZUFuYWx5emVyIG1vZHVs
ZUFuYWx5emVyKGdsb2JhbE9iamVjdCwgSWRlbnRpZmllcjo6ZnJvbVVpZChwcml2YXRlTmFtZSks
IHNvdXJjZSwgbW9kdWxlUHJvZ3JhbU5vZGUtPnZhckRlY2xhcmF0aW9ucygpLCBtb2R1bGVQcm9n
cmFtTm9kZS0+bGV4aWNhbFZhcmlhYmxlcygpKTsKICAgICBtb2R1bGVBbmFseXplci5hbmFseXpl
KCptb2R1bGVQcm9ncmFtTm9kZSk7CiAgICAgcmV0dXJuIHRydWU7CkBAIC0xNzIsNyArMTcyLDcg
QEAgSlNWYWx1ZSBldmFsdWF0ZVdpdGhTY29wZUV4dGVuc2lvbihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjb25zdCBTb3VyY2VDb2QKIHN0YXRpYyBTeW1ib2wqIGNyZWF0ZVN5bWJvbEZv
ckVudHJ5UG9pbnRNb2R1bGUoVk0mIHZtKQogewogICAgIC8vIEdlbmVyYXRlIHRoZSB1bmlxdWUg
a2V5IGZvciB0aGUgc291cmNlLXByb3ZpZGVkIG1vZHVsZS4KLSAgICBQcml2YXRlTmFtZSBwcml2
YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJFbnRyeVBvaW50TW9kdWxlIik7Cisg
ICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiRW50
cnlQb2ludE1vZHVsZSJfcyk7CiAgICAgcmV0dXJuIFN5bWJvbDo6Y3JlYXRlKHZtLCBwcml2YXRl
TmFtZS51aWQoKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvbnNvbGVPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29u
c29sZU9iamVjdC5jcHAKaW5kZXggMGRkZTk4NzcyNzY2NTU5ODQ2OTY0NWY0Mzk2YzIzMmM1NjZl
NDNhMS4uYjlhYWJkNGMxNDhkMjRkMzI0ZjY2MjI4YmExYzg0ZWJmMzE5ZTc0ZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAKQEAgLTc0LDcg
Kzc0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc29sZVByb3RvRnVu
Y1JlY29yZCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJvdG9G
dW5jUmVjb3JkRW5kKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQ
cm90b0Z1bmNTY3JlZW5zaG90KTsKIAotY29uc3QgQ2xhc3NJbmZvIENvbnNvbGVPYmplY3Q6OnNf
aW5mbyA9IHsgImNvbnNvbGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKENvbnNvbGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQ29uc29s
ZU9iamVjdDo6c19pbmZvID0geyAiY29uc29sZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDb25zb2xlT2JqZWN0KSB9OwogCiBDb25zb2xl
T2JqZWN0OjpDb25zb2xlT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwCmluZGV4IDk2ZTY3ZDhkZTI2MmNhMGRmYTFi
ZjExYjMxMDIxZjMwMTZiY2M1MzcuLjYyZmJhNmE3MTFmOGJiMjg1NGQ4NzNmNTc4YTNiMGFiODk3
ODZhZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVj
dERhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuY3BwCkBAIC0zMywxMiArMzMsMTIgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLUpTT2JqZWN0
KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBjb25zdHJ1
Y3Rvck9iamVjdCwgY29uc3QgQXJnTGlzdCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdl
KQorSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Zh
bHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBjb25zdCBBcmdMaXN0JiBhcmdzLCBBU0NJSUxpdGVyYWwg
ZXJyb3JNZXNzYWdlKQogewogICAgIHJldHVybiBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBjb25z
dHJ1Y3Rvck9iamVjdCwgY29uc3RydWN0b3JPYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9
CiAKLUpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBjb25zdHJ1Y3Rvck9iamVjdCwgSlNWYWx1ZSBuZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3Qm
IGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0pTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBjb25zdHJ1Y3Rvck9iamVjdCwgSlNW
YWx1ZSBuZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBlcnJvck1l
c3NhZ2UpCiB7CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0NvbnN0cnVjdERhdGEuaAppbmRleCA1NDUyYWUyYWI4ZThkNGEyNDU2YWYxYzVlZjUy
MWQ4NmU4YTZlY2MzLi43OTE2MWNhMDUxMmZjYjFkNTMwZTYyYjYwZjE4ZjY3Y2NhY2VkYjc0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCkBAIC0z
NSw4ICszNSw4IEBAIG5hbWVzcGFjZSBKU0MgewogY2xhc3MgSlNPYmplY3Q7CiAKIC8vIENvbnZl
bmllbmNlIHdyYXBwZXIgc28geW91IGRvbid0IG5lZWQgdG8gZGVhbCB3aXRoIENhbGxEYXRhIHVu
bGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVzZSBpdC4KLUpTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0
KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25z
dCBBcmdMaXN0JiwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKTsKLUpTX0VYUE9SVF9QUklWQVRF
IEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2Jq
ZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwgY29uc3QgQXJnTGlzdCYsIGNvbnN0IGNoYXIqIGVycm9y
TWVzc2FnZSk7CitKU19FWFBPUlRfUFJJVkFURSBKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFs
T2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0
ZXJhbCBlcnJvck1lc3NhZ2UpOworSlNfRVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVj
dChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgbmV3VGFy
Z2V0LCBjb25zdCBBcmdMaXN0JiwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CiAKIEpTX0VY
UE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVl
IGNvbnN0cnVjdG9yLCBjb25zdCBDYWxsRGF0YSYsIGNvbnN0IEFyZ0xpc3QmLCBKU1ZhbHVlIG5l
d1RhcmdldCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0N1
c3RvbUdldHRlclNldHRlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0
b21HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IGQxYzAyZjA1OWQwNDRmYTAzZTUzNDQ5MzVjYTBjMmZj
YmY1MGZmODcuLmViZmNjNDM2NjFjNjA3NzM3YTc5N2EyNDliMGVhZWM3YmE3YzM0YTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0dGVy
LmNwcApAQCAtMzIsNiArMzIsNiBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9J
U19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEN1c3RvbUdldHRlclNldHRlcik7CiAKLWNvbnN0IENs
YXNzSW5mbyBDdXN0b21HZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlclNldHRl
ciIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9t
R2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19p
bmZvID0geyAiQ3VzdG9tR2V0dGVyU2V0dGVyIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1c3RvbUdldHRlclNldHRlcikgfTsKIAogfSAvLyBuYW1l
c3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9ET01B
dHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcAppbmRleCA5N2U3MmUxNDJlYmE4NDg5NDM2M2Yw
NDM5Mjk5NWZhNWI5Y2RkMjUxLi43MWZkYmU2YTJmOWZjYWQ3Nzk4ZTc4Y2E3MmNjNTdjMDA2ZDYz
ZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9ET01BdHRyaWJ1
dGVHZXR0ZXJTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RP
TUF0dHJpYnV0ZUdldHRlclNldHRlci5jcHAKQEAgLTMyLDYgKzMyLDYgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShET01BdHRyaWJ1
dGVHZXR0ZXJTZXR0ZXIpOwogCi1jb25zdCBDbGFzc0luZm8gRE9NQXR0cmlidXRlR2V0dGVyU2V0
dGVyOjpzX2luZm8gPSB7ICJET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRl
clNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXI6OnNf
aW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdldHRlclNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01BdHRyaWJ1dGVHZXR0ZXJTZXR0
ZXIpIH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTczN2IyZmEzOGRhNzA5OWM2MTBh
Y2Y5NzU0YmRmM2QwYTg5NjM4My4uNmQwOTAyYzlmY2M5NGFkMGQ1MWU1MWRlMjhlYTJjOTY1Mjk0
YzdhMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuY3BwCkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGRhdGVOb3cpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19p
bmZvLCAmZGF0ZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RGF0ZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIERhdGVDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZkYXRlQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlQ29uc3RydWN0
b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgRGF0ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gZGF0
ZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0RhdGVJbnN0YW5jZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
SW5zdGFuY2UuY3BwCmluZGV4IDUzMjVjZmZlZjMxOGE3MzdiYmJiYmU0ZWM2NDYwYmQ4OTY4ZTRk
OTIuLmY4N2JiNjZjMDM2NzViMjY1NTMzZjE4OWJmNGRkOWRlMDg5NTg0MDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcApAQCAtMjcsNyArMjcs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6
c19pbmZvID0geyJEYXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShEYXRlSW5zdGFuY2UpfTsKK2NvbnN0IENsYXNzSW5mbyBEYXRlSW5zdGFu
Y2U6OnNfaW5mbyA9IHsgIkRhdGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZUluc3RhbmNlKSB9OwogCiBEYXRlSW5zdGFuY2U6OkRh
dGVJbnN0YW5jZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwg
c3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90
eXBlLmNwcAppbmRleCA4NTQ1YTU1OWE3MzI4YjU1MzdkYjgxMjgzYzk4YTYzOWQ2YzRhODNiLi40
ZDA0YTUyYmVkOGZjMjIxM2I1MjFiZGE1NmI3YjhjMzk1MWQxMTVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcApAQCAtMjEwLDcgKzIxMCw3
IEBAIHN0YXRpYyBib29sIGZpbGxTdHJ1Y3R1cmVzVXNpbmdEYXRlQXJncyhKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqCiAgICAgcmV0dXJuIG9rOwogfQogCi1jb25zdCBD
bGFzc0luZm8gRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCAmZGF0ZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVQ
cm90b3R5cGUpfTsKK2NvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoRGF0ZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBEYXRl
UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZGF0ZVByb3RvdHlwZVRhYmxlCkBAIC0zNTgsMTIgKzM1
OCwxMiBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZGF0ZVByb3RvRnVuY1RvUHJpbWl0aXZl
U3ltYm9sLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbAogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIHRoaXNWYWx1ZSA9IGNhbGxGcmFtZS0+dGhp
c1ZhbHVlKCkudG9UaGlzKGdsb2JhbE9iamVjdCwgRUNNQU1vZGU6OnN0cmljdCgpKTsKICAgICBp
ZiAoIXRoaXNWYWx1ZS5pc09iamVjdCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0ZS5wcm90b3R5cGVbU3ltYm9sLnRvUHJpbWl0aXZl
XSBleHBlY3RlZCB8dGhpc3wgdG8gYmUgYW4gb2JqZWN0LiIpOworICAgICAgICByZXR1cm4gdGhy
b3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0ZS5wcm90b3R5cGVbU3ltYm9s
LnRvUHJpbWl0aXZlXSBleHBlY3RlZCB8dGhpc3wgdG8gYmUgYW4gb2JqZWN0LiJfcyk7CiAgICAg
SlNPYmplY3QqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8SlNPYmplY3QqPih0aGlzVmFsdWUpOwogICAg
IEludGVncml0eTo6YXVkaXRTdHJ1Y3R1cmVJRCh0aGlzT2JqZWN0LT5zdHJ1Y3R1cmVJRCgpKTsK
IAogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1i
b2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIGEgZmlyc3QgYXJndW1lbnQuIik7CisgICAgICAgIHJl
dHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlw
ZVtTeW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVkIGEgZmlyc3QgYXJndW1lbnQuIl9zKTsKIAog
ICAgIEpTVmFsdWUgaGludFZhbHVlID0gY2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKTsK
ICAgICBQcmVmZXJyZWRQcmltaXRpdmVUeXBlIHR5cGUgPSB0b1ByZWZlcnJlZFByaW1pdGl2ZVR5
cGUoZ2xvYmFsT2JqZWN0LCBoaW50VmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0RpcmVjdEFyZ3VtZW50cy5jcHAKaW5kZXggYmE0MmM2MTg3M2UzNzljMGQzZDJi
MzhlNzczY2MxNzc2ZmU0ZDE1Ny4uYWNjNjI5ZjBkMzBkMTQxMTM4MzVjNmVlMmM1YzJmMjdkMGFm
Mzc2ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJn
dW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1
bWVudHMuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRGlyZWN0QXJndW1lbnRzKTsKIAotY29uc3Qg
Q2xhc3NJbmZvIERpcmVjdEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEaXJlY3RBcmd1
bWVudHMpIH07Citjb25zdCBDbGFzc0luZm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJB
cmd1bWVudHMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoRGlyZWN0QXJndW1lbnRzKSB9OwogCiBEaXJlY3RBcmd1bWVudHM6OkRpcmVjdEFy
Z3VtZW50cyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCB1bnNpZ25lZCBsZW5ndGgsIHVu
c2lnbmVkIGNhcGFjaXR5KQogICAgIDogR2VuZXJpY0FyZ3VtZW50cyh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKaW5kZXggNTRiMTQ5NDU4ZmYyMjg3MGZk
ZGI4MzFmZWE5OTY3NGQyMmQxYTUyMi4uOGU0OGJiMTRkZDYxZGM4MjNhMjgwMmRkMTgzZDUzNjhh
NmFmZWZlZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3Iu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oCkBAIC05Myw3ICs5
Myw3IEBAIEpTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgdGhyb3dET01BdHRyaWJ1dGVTZXR0ZXJU
eXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqLCBUaHJvCiAvLyBDb252ZW5pZW5jZSB3cmFwcGVycywg
d3JhcCByZXN1bHQgYXMgYW4gRW5jb2RlZEpTVmFsdWUuCiBpbmxpbmUgdm9pZCB0aHJvd1ZNRXJy
b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIEV4Y2Vw
dGlvbiogZXhjZXB0aW9uKSB7IHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGV4
Y2VwdGlvbik7IH0KIGlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIEpTVmFsdWUgZXJyb3IpIHsg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3Bl
LCBlcnJvcikpOyB9Ci1pbmxpbmUgRW5jb2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBjaGFyKiBlcnJv
ck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxP
YmplY3QsIHNjb3BlLCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsIGVycm9yTWVzc2FnZSkpKTsg
fQoraW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSwgY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2Up
IHsgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNj
b3BlLCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsIGVycm9yTWVzc2FnZSkpKTsgfQogaW5saW5l
IEVuY29kZWRKU1ZhbHVlIHRocm93Vk1UeXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgVGhyb3dTY29wZSYgc2NvcGUpIHsgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5
cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlKSk7IH0KIGlubGluZSBFbmNvZGVkSlNWYWx1ZSB0
aHJvd1ZNVHlwZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUm
IHNjb3BlLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0K
IGlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNVHlwZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2Fn
ZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsIGVycm9yTWVzc2FnZSkpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDMwNjRkMTIwYTdmOGM0MjE4ZTExN2I1
NjY1ZGI3ZWE1MDI4YTdiN2QuLjUwZDJlZjA0Y2EzMjcwNTEyYmRmZmUwMmMzYzE1NzAyZDIyOGYw
MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCkBAIC0yOCw3ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNT
RVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRXJyb3JDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0
IENsYXNzSW5mbyBFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihjYWxsRXJyb3JDb25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihjb25zdHJ1Y3RFcnJvckNvbnN0cnVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAKaW5kZXggNzM4ZTdmNGUxMjdlMTdk
ZWYyZjQ1OWM5OGJhMGE3NzI1MDU2NTk4Yi4uMzUyYjdkMjk4M2MzYTk1ZTBhZGQ2MTYyOGIzMjA0
ZDE4MGUzNmQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJy
b3JJbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJ
bnN0YW5jZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBFcnJvckluc3RhbmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFs
T2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJy
b3JJbnN0YW5jZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFcnJvckluc3RhbmNlOjpzX2luZm8gPSB7
ICJFcnJvciJfcywgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShFcnJvckluc3RhbmNlKSB9OwogCiBFcnJvckluc3RhbmNlOjpF
cnJvckluc3RhbmNlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEVycm9yVHlwZSBlcnJv
clR5cGUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHAKaW5kZXggZWY0MzFmMzk1ZTM0MjVhMjYz
NTRlOTMyMGFjYzRmOTI1MmIzODI5Yy4uYzY2YmZhODMwYzQxZDI3ZjkxYTMzMGI2NmI2MGEwYTlk
MDdmNDczOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJv
dG90eXBlLmNwcApAQCAtMzgsNyArMzgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihlcnJvclByb3RvRnVuY1RvU3RyaW5nKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNf
aW5mbywgJmVycm9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
RXJyb3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gRXJyb3JQcm90b3R5cGU6OnNfaW5m
byA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJmVycm9yUHJvdG90eXBlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJj
ZSBmb3IgRXJyb3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBlcnJvclByb3RvdHlwZVRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKaW5k
ZXggMWIyZjRmNTJhYjdiZmNlMzQwYjNjMzk1MjllMTgwNTcyY2QxNjQ0My4uZGQ4NDkzMzgyZmY2
MTQxMGJiZWVlZGQwYmJlMjc3ZGM1MjA4ZTYyZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRhYmxlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEV2YWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7
ICJFdmFsRXhlY3V0YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gRXZhbEV4
ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkV2YWxFeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV2YWxFeGVjdXRhYmxlKSB9Owog
CiBFdmFsRXhlY3V0YWJsZTo6RXZhbEV4ZWN1dGFibGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBib29sIGluU3RyaWN0Q29udGV4dCwgRGVy
aXZlZENvbnRleHRUeXBlIGRlcml2ZWRDb250ZXh0VHlwZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25D
b250ZXh0LCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbiwgRXZhbENvbnRleHRUeXBlIGV2
YWxDb250ZXh0VHlwZSwgTmVlZHNDbGFzc0ZpZWxkSW5pdGlhbGl6ZXIgbmVlZHNDbGFzc0ZpZWxk
SW5pdGlhbGl6ZXIsIFByaXZhdGVCcmFuZFJlcXVpcmVtZW50IHByaXZhdGVCcmFuZFJlcXVpcmVt
ZW50KQogICAgIDogQmFzZShnbG9iYWxPYmplY3QtPnZtKCkuZXZhbEV4ZWN1dGFibGVTdHJ1Y3R1
cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+dm0oKSwgc291cmNlLCBpblN0cmljdENvbnRleHQsIGRl
cml2ZWRDb250ZXh0VHlwZSwgaXNBcnJvd0Z1bmN0aW9uQ29udGV4dCwgaXNJbnNpZGVPcmRpbmFy
eUZ1bmN0aW9uLCBldmFsQ29udGV4dFR5cGUsIE5vSW50cmluc2ljKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlvbi5jcHAKaW5kZXggNGUyMDY0NjBiOWQyMDA2NzhmZmM0
YWJlYTMxNjkwNTQxZDhmZmY1Zi4uZmIxOTlmMzg3NjBhY2JlMGQzOTRiZTMwMTZmOWYyZGMyNzYy
NjlkYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9u
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwCkBA
IC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXhj
ZXB0aW9uOjpzX2luZm8gPSB7ICJFeGNlcHRpb24iLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBFeGNl
cHRpb246OnNfaW5mbyA9IHsgIkV4Y2VwdGlvbiJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFeGNlcHRpb24pIH07CiAKIEV4Y2VwdGlvbiogRXhjZXB0
aW9uOjpjcmVhdGUoVk0mIHZtLCBKU1ZhbHVlIHRocm93blZhbHVlLCBTdGFja0NhcHR1cmVBY3Rp
b24gYWN0aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RXhjZXB0aW9uSGVscGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNl
cHRpb25IZWxwZXJzLmNwcAppbmRleCAwOTlmZjcxY2Q2MjY1YjhkMWNhOGM5MWUzNjExMzYxZWUw
ZWU3ZmEzLi5kMjEzNDM5NjQ3MzYwZTljYjViNWQ5Mzk2YWNhYTQxMmRjOGRjODRlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcApA
QCAtMTYxLDcgKzE2MSw3IEBAIHN0YXRpYyBTdHJpbmcgbm90QUZ1bmN0aW9uU291cmNlQXBwZW5k
ZXIoY29uc3QgU3RyaW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvbnN0IFN0CiAgICAgICAgIHJldHVy
biBkZWZhdWx0QXBwcm94aW1hdGVTb3VyY2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRl
eHQpOwogCiAgICAgQVNTRVJUKG9jY3VycmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFj
dFNvdXJjZSk7Ci0gICAgYXV0byBub3RBRnVuY3Rpb25JbmRleCA9IG9yaWdpbmFsTWVzc2FnZS5y
ZXZlcnNlRmluZCgiaXMgbm90IGEgZnVuY3Rpb24iKTsKKyAgICBhdXRvIG5vdEFGdW5jdGlvbklu
ZGV4ID0gb3JpZ2luYWxNZXNzYWdlLnJldmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiJfcyk7
CiAgICAgUkVMRUFTRV9BU1NFUlQobm90QUZ1bmN0aW9uSW5kZXggIT0gbm90Rm91bmQpOwogICAg
IFN0cmluZ1ZpZXcgZGlzcGxheVZhbHVlOwogICAgIGlmIChvcmlnaW5hbE1lc3NhZ2UuaXM4Qml0
KCkpIApAQCAtMTk3LDcgKzE5Nyw3IEBAIHN0YXRpYyBTdHJpbmcgaW52YWxpZFBhcmFtZXRlcklu
U291cmNlQXBwZW5kZXIoY29uc3QgU3RyaW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvCiAgICAgICAg
IHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3VyY2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNv
dXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3VycmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91
bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBpbkluZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmlu
ZCgiaW4iKTsKKyAgICBhdXRvIGluSW5kZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbiJf
cyk7CiAgICAgaWYgKGluSW5kZXggPT0gbm90Rm91bmQpIHsKICAgICAgICAgLy8gVGhpcyBzaG91
bGQgYmFzaWNhbGx5IG5ldmVyIGhhcHBlbiwgc2luY2UgSlMgY29kZSBtdXN0IHVzZSB0aGUgbGl0
ZXJhbAogICAgICAgICAvLyB0ZXh0ICJpbiIgZm9yIHRoZSBgaW5gIG9wZXJhdGlvbi4gSG93ZXZl
ciwgaWYgd2UgZmFpbCB0byBmaW5kICJpbiIKQEAgLTIxOCw3ICsyMTgsNyBAQCBpbmxpbmUgU3Ry
aW5nIGludmFsaWRQYXJhbWV0ZXJJbnN0YW5jZW9mU291cmNlQXBwZW5kZXIoY29uc3QgU3RyaW5n
JiBjb250ZW50LCBjbwogICAgICAgICByZXR1cm4gZGVmYXVsdEFwcHJveGltYXRlU291cmNlRXJy
b3Iob3JpZ2luYWxNZXNzYWdlLCBzb3VyY2VUZXh0KTsKIAogICAgIEFTU0VSVChvY2N1cnJlbmNl
ID09IEVycm9ySW5zdGFuY2U6OkZvdW5kRXhhY3RTb3VyY2UpOwotICAgIGF1dG8gaW5zdGFuY2Vv
ZkluZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiaW5zdGFuY2VvZiIpOworICAgIGF1dG8g
aW5zdGFuY2VvZkluZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiaW5zdGFuY2VvZiJfcyk7
CiAgICAgLy8gVGhpcyBjYW4gaGFwcGVuIHdoZW4gU3ltYm9sLmhhc0luc3RhbmNlIGZ1bmN0aW9u
IGlzIGRpcmVjdGx5IGNhbGxlZC4KICAgICBpZiAoaW5zdGFuY2VvZkluZGV4ID09IG5vdEZvdW5k
KQogICAgICAgICByZXR1cm4gb3JpZ2luYWxNZXNzYWdlOwpAQCAtMjQ2LDcgKzI0Niw3IEBAIHN0
YXRpYyBTdHJpbmcgaW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVuZGVyKGNvbnN0IFN0cmluZyYg
b3JpZ2luYWxNZXNzYWdlLCBjb25zCiAgICAgaWYgKG9jY3VycmVuY2UgPT0gRXJyb3JJbnN0YW5j
ZTo6Rm91bmRBcHByb3hpbWF0ZVNvdXJjZSkKICAgICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hp
bWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFsTWVzc2FnZSwgc291cmNlVGV4dCk7CiAKLSAgICBhdXRv
IGV4dGVuZHNJbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQoImV4dGVuZHMiKTsKKyAgICBh
dXRvIGV4dGVuZHNJbmRleCA9IHNvdXJjZVRleHQucmV2ZXJzZUZpbmQoImV4dGVuZHMiX3MpOwog
ICAgIGlmIChleHRlbmRzSW5kZXggPT0gbm90Rm91bmQgfHwgc291cmNlVGV4dC5maW5kKCJleHRl
bmRzIikgIT0gZXh0ZW5kc0luZGV4KQogICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhvcmlnaW5h
bE1lc3NhZ2UsICIgKGV2YWx1YXRpbmcgJyIsIHNvdXJjZVRleHQsICInKSIpOwogCkBAIC0zMjQs
MjcgKzMyNCwyNyBAQCBKU09iamVjdCogY3JlYXRlRXJyb3JGb3JJbnZhbGlkR2xvYmFsQXNzaWdu
bWVudChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjbwogCiBKU09iamVjdCogY3JlYXRl
VERaRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3Jl
YXRlUmVmZXJlbmNlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyB1bmluaXRpYWxp
emVkIHZhcmlhYmxlLiIpOworICAgIHJldHVybiBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxP
YmplY3QsICJDYW5ub3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuIl9zKTsKIH0KIAog
SlNPYmplY3QqIGNyZWF0ZUludmFsaWRQcml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QpCiB7Ci0gICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IG1ha2VTdHJpbmcoIkNhbm5vdCBhY2Nlc3MgaW52YWxpZCBwcml2YXRlIGZpZWxkIiksIGRlZmF1
bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCAiQ2Fubm90IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiX3Ms
IGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3Jl
YXRlUmVkZWZpbmVkUHJpdmF0ZU5hbWVFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5n
KCJDYW5ub3QgcmVkZWZpbmUgZXhpc3RpbmcgcHJpdmF0ZSBmaWVsZCIpLCBkZWZhdWx0U291cmNl
QXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgIkNhbm5vdCByZWRlZmluZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIl9zLCBkZWZh
dWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0ZVBy
aXZhdGVNZXRob2RBY2Nlc3NFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewot
ICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5nKCJDYW5u
b3QgYWNjZXNzIHByaXZhdGUgbWV0aG9kIG9yIGFjZXNzb3IiX3MpLCBkZWZhdWx0U291cmNlQXBw
ZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgIkNhbm5vdCBhY2Nlc3MgcHJpdmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcywgZGVmYXVs
dFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CiB9CiAKIEpTT2JqZWN0KiBjcmVhdGVSZWlu
c3RhbGxQcml2YXRlTWV0aG9kRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsK
LSAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgbWFrZVN0cmluZygiQ2Fu
bm90IGluc3RhbGwgc2FtZSBwcml2YXRlIG1ldGhvZHMgb24gb2JqZWN0IG1vcmUgdGhhbiBvbmNl
Il9zKSwgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNy
ZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUg
bWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0aGFuIG9uY2UiX3MsIGRlZmF1bHRTb3VyY2VBcHBlbmRl
ciwgVHlwZU5vdGhpbmcpOwogfQogCiBFeGNlcHRpb24qIHRocm93T3V0T2ZNZW1vcnlFcnJvcihK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAppbmRleCBmZDQ3
MzgyZDE1ZWY3NTk5NzJmOTRjNjJlMzAwY2U5MGYwNjliOGYwLi42OGFlZWFhZmExYjAxOTM1ODAy
ZjlmYzU1YmQ2OGE3OTU3MjA3NzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9FeGVjdXRhYmxlQmFzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZUJhc2U6OnNfaW5mbyA9IHsgIkV4ZWN1
dGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4
ZWN1dGFibGVCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEV4ZWN1dGFibGVCYXNlOjpzX2luZm8g
PSB7ICJFeGVjdXRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEV4ZWN1dGFibGVCYXNlKSB9OwogCiB2b2lkIEV4ZWN1dGFibGVCYXNlOjpkZXN0
cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggZjMxZGI4NmE3OTYxNmU0NWE4ZGMxMTVhYTI2NTcwYWMzYzdlNjZmNS4uZjVmYzFhODFkNjZj
NWVmYzE1MjM0ZjAwNzlhMmYwMjgwNzU1MGI1YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1
Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBG
aW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGaW5h
bGl6YXRpb25SZWdpc3RyeUNvbnN0cnVjdG9yKSB9OwogCiB2b2lkIEZpbmFsaXphdGlvblJlZ2lz
dHJ5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgRmluYWxpemF0aW9uUmVnaXN0
cnlQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcApp
bmRleCA4NTNlNGFhODc0Y2I1MTAwYTM2M2IyYzAwMTQzMzUzY2ZmYTViMDljLi44YTBjMTE4MTk2
NjIyZTE2NmZjODFhYWJjZDk4ZWE3ODhhMWVjZDVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5
cGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZpbmFsaXph
dGlvblJlZ2lzdHJ5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZTo6c19pbmZvID0geyAiRmluYWxpemF0
aW9uUmVnaXN0cnkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY0ZpbmFsaXphdGlvblJlZ2lzdHJ5UmVn
aXN0ZXIpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxp
emF0aW9uUmVnaXN0cnlVbnJlZ2lzdGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggMTY1ZTdhN2Y3ZTQ2ZGRk
YzgxNDA1NTlkMjE3MTFiODIwYTUyNzE0Mi4uZWEzNTRhMGNmZmYzYzI0ZTU0ODBkMjlmMzRjZGQ3
OWFhZTFlN2IzYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVu
Y3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvbkNvbnN0
cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0
aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3Ip
IH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdFdpdGhGdW5j
dGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxG
dW5jdGlvbkNvbnN0cnVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9GdW5jdGlvbkV4ZWN1dGFibGUuY3BwCmluZGV4IDIzMDdhY2VjYzUwNGRlYTc1OTQxMDk5
MjQ3NGJiYmNhNTllYjEwZjEuLmQ4MWFjNjA2Zjc0ZDg1MmI4ZGJlZTkzZGRkNTY3NjU4YmUwNzQ5
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhl
Y3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25F
eGVjdXRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEZ1bmN0aW9uRXhlY3V0YWJsZTo6c19pbmZvID0geyAiRnVuY3Rpb25FeGVj
dXRhYmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8g
RnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJGdW5jdGlvbkV4ZWN1dGFibGUiX3MsICZT
Y3JpcHRFeGVjdXRhYmxlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRnVuY3Rpb25FeGVjdXRhYmxlKSB9OwogCiBGdW5jdGlvbkV4ZWN1dGFibGU6OkZ1bmN0
aW9uRXhlY3V0YWJsZShWTSYgdm0sIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgVW5saW5rZWRG
dW5jdGlvbkV4ZWN1dGFibGUqIHVubGlua2VkRXhlY3V0YWJsZSwgSW50cmluc2ljIGludHJpbnNp
YywgYm9vbCBpc0luc2lkZU9yZGluYXJ5RnVuY3Rpb24pCiAgICAgOiBTY3JpcHRFeGVjdXRhYmxl
KHZtLmZ1bmN0aW9uRXhlY3V0YWJsZVN0cnVjdHVyZS5nZXQoKSwgdm0sIHNvdXJjZSwgdW5saW5r
ZWRFeGVjdXRhYmxlLT5sZXhpY2FsU2NvcGVGZWF0dXJlcygpLCB1bmxpbmtlZEV4ZWN1dGFibGUt
PmRlcml2ZWRDb250ZXh0VHlwZSgpLCBmYWxzZSwgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uIHx8
ICF1bmxpbmtlZEV4ZWN1dGFibGUtPmlzQXJyb3dGdW5jdGlvbigpLCBFdmFsQ29udGV4dFR5cGU6
Ok5vbmUsIGludHJpbnNpYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Z1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCAxZDUyYWJmNTg1YzJiYWJlZDZjODRiNTk5NzRi
YmE5NjczZGEwZmE5Li5jOWM5YThhYzdlMjQ3MTE4YTZiZjM0ZTJiMjVhNTVlOWQwZDQ0YTNmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5
cGUuY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRnVuY3Rpb25Qcm90b3R5cGUpOwogCi1jb25zdCBD
bGFzc0luZm8gRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJvdG9GdW5jVG9TdHJpbmcpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY2FsbEZ1bmN0aW9uUHJvdG90eXBlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAKaW5kZXggYTEzZGZh
NDU2NjgzMTg4Zjc5NGQ3OTkzNmE5MjEzODU2MWYyMzI3MC4uNGE5YjY0MDRkZDRjNzNlZWM3OTQz
ODY5YzU4NDQ1ZmJiNDI0YmY4MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBGdW5jdGlvblJhcmVEYXRhOjpzX2luZm8gPSB7ICJG
dW5jdGlvblJhcmVEYXRhIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShGdW5jdGlvblJhcmVEYXRhKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUmFy
ZURhdGE6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uUmFyZURhdGEiX3MsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25SYXJlRGF0YSkgfTsKIAogRnVu
Y3Rpb25SYXJlRGF0YSogRnVuY3Rpb25SYXJlRGF0YTo6Y3JlYXRlKFZNJiB2bSwgRXhlY3V0YWJs
ZUJhc2UqIGV4ZWN1dGFibGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDdm
YTNiMjExNjIzNjg3YzFhOTliMzU1MThkMmI0ZDA0MjdkNDc3NjAuLmY0OTFlN2M1ZTdiN2MxMDNm
M2VjMDE2NDNiNTBjMzRiZmFmNzE0ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCkBA
IC0zNCw3ICszNCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0
IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJHZW5l
cmF0b3JGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJHZW5lcmF0b3JG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjYWxsR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RHZW5lcmF0b3JGdW5jdGlv
bkNvbnN0cnVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRleCBhZTllZjIxODhkOGZi
ZTFkZmE1NjRiYzlhNDJkYmQ0MDcxMjU3ZTkzLi5jNDJlZDQzMjU3MWE2MWQwNTRkZDYyNjJjNGUz
Y2NmYmU2NzQwZjBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9H
ZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElC
TEUoR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpOwogCi1jb25zdCBDbGFzc0luZm8gR2VuZXJh
dG9yRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0
b3JGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2VuZXJhdG9yRnVuY3Rp
b25Qcm90b3R5cGUpIH07CiAKIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlOjpHZW5lcmF0b3JG
dW5jdGlvblByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNO
b25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0dlbmVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggZmEwOWI5ZDMwNmZlZmUw
NjM1ODE4YWYyYzIyZGJkZTgyYjFjZGM4Yy4uN2U4MGIxYzM0NzEyMWEyNDcxYTE3NzA4MmE3Nzdi
MjEwY2M5MzZjMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2Vu
ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9H
ZW5lcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gR2VuZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJHZW5l
cmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoR2VuZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEdlbmVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiR2VuZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCAmZ2VuZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoR2VuZXJhdG9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEdlbmVyYXRvclBy
b3RvdHlwZS5sdXQuaAogQGJlZ2luIGdlbmVyYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcAppbmRleCBmYWQyYzIzZjcx
MDkyOTcwYjVlYzA4ZTgxNDg0ZjIxOTIxMzA5MDc3Li5lNjZlMDMzNGU1OTY5NzM1NjdmOTFkMmFm
N2Q1NjI5NDI2YjA4YjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9HZXR0ZXJTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dl
dHRlclNldHRlci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShHZXR0ZXJTZXR0ZXIpOwogCi1jb25z
dCBDbGFzc0luZm8gR2V0dGVyU2V0dGVyOjpzX2luZm8gPSB7ICJHZXR0ZXJTZXR0ZXIiLCBudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdldHRlclNldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRl
ciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZXR0
ZXJTZXR0ZXIpIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEdldHRlclNl
dHRlcjo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2xvYmFsRXhlY3V0YWJs
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNw
cAppbmRleCAwMGI2NWMwYmE4MjI2OGI0ODI2OTU0MjFkMDg5MmJkN2QzM2I4YjNjLi43NWU4NGIz
OGZmNzI3YjMyYzhlYjAwMTE2YTBiMWQwYWQ4NDBiZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcApAQCAtMzAsNiArMzAsNiBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEdsb2JhbEV4ZWN1dGFibGU6
OnNfaW5mbyA9IHsgIkdsb2JhbEV4ZWN1dGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbEV4ZWN1dGFibGUpIH07Citjb25zdCBD
bGFzc0luZm8gR2xvYmFsRXhlY3V0YWJsZTo6c19pbmZvID0geyAiR2xvYmFsRXhlY3V0YWJsZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShH
bG9iYWxFeGVjdXRhYmxlKSB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hhc2hNYXBJbXBsLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0hhc2hNYXBJbXBsLmNwcAppbmRleCBkMWM0YzVjZjk2ZTk3NTRm
MjMyYmU1MjY1MGYyZWU4ZDJiNDJlNjUyLi5lYWJhNjRlNmQ4ZTI2YjFlNWY3ZmViMWRmNDUwNTA2
N2YxMGIyMzc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNo
TWFwSW1wbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGFzaE1hcElt
cGwuY3BwCkBAIC0zNiwxMSArMzYsMTEgQEAgREVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9E
SUZJRVIodGVtcGxhdGU8PiwgSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUsKIAogdGVt
cGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFL
ZXk+OjpzX2luZm8gPQotICAgIHsgIkhhc2hNYXBCdWNrZXQiLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERh
dGFLZXk+KSB9OworICAgIHsgIkhhc2hNYXBCdWNrZXQiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0
YUtleT4pIH07CiAKIHRlbXBsYXRlPD4KIGNvbnN0IENsYXNzSW5mbyBIYXNoTWFwQnVja2V0PEhh
c2hNYXBCdWNrZXREYXRhS2V5VmFsdWU+OjpzX2luZm8gPQotICAgIHsgIkhhc2hNYXBCdWNrZXQi
LCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBC
dWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFLZXlWYWx1ZT4pIH07CisgICAgeyAiSGFzaE1hcEJ1Y2tl
dCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShIYXNo
TWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhS2V5VmFsdWU+KSB9OwogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBEYXRhPgogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAKaW5kZXggZDViYzQ5NDA5
NTdlNTUyYmY2NGE1MGE1OTAyYzExMGMxNTI2ZGI5MS4uMDFiYzA4NmFmODQ5ODBmODZhMDRiYjJh
ZGQ5YjU4YTE0ZGJlNjE4OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAKQEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShJbnRlcm5hbEZ1bmN0
aW9uKTsKIAotY29uc3QgQ2xhc3NJbmZvIEludGVybmFsRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRlcm5hbEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGVybmFsRnVuY3Rp
b246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGVybmFsRnVuY3Rpb24pIH07CiAKIEludGVybmFs
RnVuY3Rpb246OkludGVybmFsRnVuY3Rpb24oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
TmF0aXZlRnVuY3Rpb24gZnVuY3Rpb25Gb3JDYWxsLCBOYXRpdmVGdW5jdGlvbiBmdW5jdGlvbkZv
ckNvbnN0cnVjdCkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3IuY3BwCmluZGV4IGI2YmI3NTE1ODBkNzY4MmUx
NjZhNDU5NjVmMzIzMjliZTJjNGM2NTUuLjM2OTc1NTExMzQ5YWYzYTQ1ODlhM2EwMTVkZjBlNTFh
MjlhZGUyZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxD
b2xsYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxh
dG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEludGxDb2xsYXRvcjo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3IpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bENvbGxh
dG9yKSB9OwogCiBuYW1lc3BhY2UgSW50bENvbGxhdG9ySW50ZXJuYWwgewogY29uc3RleHByIGJv
b2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAtMTcyLDcgKzE3Miw3IEBAIHZvaWQgSW50bENvbGxhdG9y
Ojppbml0aWFsaXplQ29sbGF0b3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSBsb2NhCiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIHsK
LSAgICAgICAgU3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0
LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgbnVsbHB0ciwgbnVs
bHB0cik7CisgICAgICAgIFN0cmluZyBjb2xsYXRpb24gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2Jh
bE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y29sbGF0aW9uLCB7IH0sIEFTQ0lJ
TGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgICAgIGlmICghY29sbGF0aW9uLmlzTnVs
bCgpKSB7CiAgICAgICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKGNv
bGxhdGlvbikpIHsKQEAgLTE4OCw3ICsxODgsNyBAQCB2b2lkIEludGxDb2xsYXRvcjo6aW5pdGlh
bGl6ZUNvbGxhdG9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgbG9jYQog
ICAgIGlmIChudW1lcmljICE9IFRyaVN0YXRlOjpJbmRldGVybWluYXRlKQogICAgICAgICBsb2Nh
bGVPcHRpb25zW3N0YXRpY19jYXN0PHVuc2lnbmVkPihSZWxldmFudEV4dGVuc2lvbktleTo6S24p
XSA9IFN0cmluZyhudW1lcmljID09IFRyaVN0YXRlOjpUcnVlID8gInRydWUiX3MgOiAiZmFsc2Ui
X3MpOwogCi0gICAgU3RyaW5nIGNhc2VGaXJzdE9wdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xv
YmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsgInVwcGVy
IiwgImxvd2VyIiwgImZhbHNlIiB9LCAiY2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwidXBwZXJc
IiwgXCJsb3dlclwiLCBvciBcImZhbHNlXCIiLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY2FzZUZp
cnN0T3B0aW9uID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAidXBwZXIiLCAibG93ZXIiLCAiZmFsc2UiIH0sICJj
YXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1cHBlclwiLCBcImxvd2VyXCIsIG9yIFwiZmFsc2Vc
IiJfcywgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHZvaWQoKSk7CiAgICAgaWYgKCFjYXNlRmlyc3RPcHRpb24uaXNOdWxsKCkpCiAgICAgICAg
IGxvY2FsZU9wdGlvbnNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5
OjpLZildID0gY2FzZUZpcnN0T3B0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDBiYzVhYTM3
ZDdjZGUwMjAzM2Q3M2U5Zjg1Y2IyZTEzMTczMTAzMjkuLjk0ZWVkODdmYjM4MTZkN2ZlYzhiN2Zj
YTg5Mjk2Nzg4ODE1NWFjNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxDb2xsYXRvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSW50
bENvbGxhdG9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdElu
dGxDb2xsYXRvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmY29sbGF0
b3JDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xs
YXRvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywg
JmNvbGxhdG9yQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsQ29sbGF0b3JDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JD
b25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIGNvbGxhdG9yQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlw
ZS5jcHAKaW5kZXggMDU5YzE5NWZiMDM1NWQ0NTUwNzE2YWViODRjNTk5MDFjODJkNDUzMS4uZDBm
OWI2YzYxNjNmNDcxNWI1N2U4NWU0MDYzMTA4YmM4ZjFkMzE5MSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCkBA
IC00Myw3ICs0Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxDb2xs
YXRvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJ
bnRsQ29sbGF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuQ29sbGF0b3IiLCAmQmFzZTo6
c19pbmZvLCAmY29sbGF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsQ29sbGF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxh
dG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkNvbGxhdG9yIl9zLCAmQmFzZTo6c19pbmZv
LCAmY29sbGF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsQ29sbGF0b3JQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bENvbGxhdG9yUHJv
dG90eXBlLmx1dC5oCiBAYmVnaW4gY29sbGF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKaW5kZXgg
YzJkNDlkYTk4YTY2MGJjNjJiMDRhZmUxOWM1NzhmMjU5MmZkNGJiOS4uYTFjNjE0NWMxNzFjNDBk
MTg4ZjA3Mjk1ODVmMDVlZGI3NWMwYWFiMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXQuY3BwCkBAIC02MCw3ICs2MCw3IEBAIHZv
aWQgVURhdGVJbnRlcnZhbEZvcm1hdERlbGV0ZXI6Om9wZXJhdG9yKCkoVURhdGVJbnRlcnZhbEZv
cm1hdCogZm9ybWF0dGVyKQogICAgICAgICB1ZHRpdHZmbXRfY2xvc2UoZm9ybWF0dGVyKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEludGxEYXRlVGltZUZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsRGF0ZVRpbWVGb3JtYXQpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0
OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0KSB9OwogCiBuYW1lc3BhY2Ug
SW50bERhdGVUaW1lRm9ybWF0SW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJv
c2UgPSBmYWxzZTsKQEAgLTYwNCw3ICs2MDQsNyBAQCB2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6
aW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAg
ICAgTG9jYWxlTWF0Y2hlciBsb2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVy
PihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIs
IHsgeyAibG9va3VwIl9zLCBMb2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3Ms
IExvY2FsZU1hdGNoZXI6OkJlc3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhl
ciBcImxvb2t1cFwiIG9yIFwiYmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBj
YWxlbmRhciA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9w
ZXJ0eU5hbWVzLT5jYWxlbmRhciwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcg
Y2FsZW5kYXIgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJv
cGVydHlOYW1lcy0+Y2FsZW5kYXIsIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0
ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwog
ICAgIGlmICghY2FsZW5kYXIuaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2Nh
bGVJZGVudGlmaWVyVHlwZShjYWxlbmRhcikpIHsKQEAgLTYxNCw3ICs2MTQsNyBAQCB2b2lkIElu
dGxEYXRlVGltZUZvcm1hdDo6aW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0KEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsCiAgICAgICAgIGxvY2FsZU9wdGlvbnNbc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5OjpDYSldID0gY2FsZW5kYXI7CiAgICAgfQogCi0gICAg
U3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBv
cHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwg
bnVsbHB0cik7CisgICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0s
IHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lz
dGVtLmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5
cGUobnVtYmVyaW5nU3lzdGVtKSkgewpAQCAtODgxLDcgKzg4MSw3IEBAIHZvaWQgSW50bERhdGVU
aW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwKICAgICAgICAgYnJlYWs7CiAgICAgfQogCi0gICAgaW50bFN0cmluZ09wdGlvbihn
bG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIHsg
ImJhc2ljIiwgImJlc3QgZml0IiB9LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJh
c2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwgImJlc3QgZml0Iik7CisgICAgaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIs
IHsgImJhc2ljIiwgImJlc3QgZml0IiB9LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBc
ImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIl9zLCAiYmVzdCBmaXQiX3MpOwogICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAKICAgICBtX2RhdGVTdHlsZSA9IGludGxPcHRp
b248RGF0ZVRpbWVTdHlsZT4oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5kYXRlU3R5bGUsIHsgeyAiZnVsbCJfcywgRGF0ZVRpbWVTdHlsZTo6RnVsbCB9LCB7ICJsb25n
Il9zLCBEYXRlVGltZVN0eWxlOjpMb25nIH0sIHsgIm1lZGl1bSJfcywgRGF0ZVRpbWVTdHlsZTo6
TWVkaXVtIH0sIHsgInNob3J0Il9zLCBEYXRlVGltZVN0eWxlOjpTaG9ydCB9IH0sICJkYXRlU3R5
bGUgbXVzdCBiZSBcImZ1bGxcIiwgXCJsb25nXCIsIFwibWVkaXVtXCIsIG9yIFwic2hvcnRcIiJf
cywgRGF0ZVRpbWVTdHlsZTo6Tm9uZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggYjQ1MWVlMDliMWRkZjE3YWY1NzJhYzlhNGViYjkxNzNlZTZmMmI3My4uM2Y4NTIxZDJiMjdj
MjNhMjZmOGE4Mjk5ZTM0YmFhYmNkYWQzYjE3MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
LmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihp
bnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvckZ1bmNTdXBwb3J0ZWRMb2NhbAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZkYXRl
VGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERh
dGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJu
YWxGdW5jdGlvbjo6c19pbmZvLCAmZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKSB9
OwogCiAvKiBTb3VyY2UgZm9yIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmx1dC5oCiBA
YmVnaW4gZGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBl
LmNwcAppbmRleCBlNzQxMmNjMjgyMTJmYmE5ZmEyMTg5ZGY2NDQ2OGE0YjNmYzM4MTBhLi5lYzE4
MTU2OTg3Mzg3MWZhMWYzMGI5ZGE4NTMzN2QwNjM1ZWJjOGQ1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3Rv
dHlwZS5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bERhdGVUaW1lRm9ybWF0RnVuY0Zvcm1hdERhdGVUaW1lKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5m
byA9IHsgIkludGwuRGF0ZVRpbWVGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmZGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRp
bWVGb3JtYXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkRhdGVUaW1lRm9ybWF0Il9zLCAmQmFzZTo6c19p
bmZvLCAmZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
SW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZGF0ZVRpbWVGb3JtYXRQ
cm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bERpc3BsYXlOYW1lcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGlzcGxheU5hbWVzLmNwcAppbmRleCBmYmU4NmU0YjdlYWEwNjNjYmI2NDYzYjlhMWZhOWY3MWIy
OTE4N2U0Li5hOGJjZmJiYWQxNmQzMWU1YmRiNGI4Yzg2ZjViNDQyYTk0YTExMTFkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcApA
QCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIElu
dGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lcykgfTsKK2Nv
bnN0IENsYXNzSW5mbyBJbnRsRGlzcGxheU5hbWVzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERp
c3BsYXlOYW1lcykgfTsKIAogSW50bERpc3BsYXlOYW1lcyogSW50bERpc3BsYXlOYW1lczo6Y3Jl
YXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9y
LmNwcAppbmRleCBlYTA1MWJiMzRjNWUxZDkyMmQ3YmYwODRmMTNhNWU0NmYxMGM0MzI0Li4wYTNi
ZjhkNDk0NDgyNzRkNjE3ZGExOTlhNDQyMDBiYTZjYjY0ZTIwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1
Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yU3VwcG9ydGVkTG9jYWxlc09mKTsKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1lc0Nv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlO
YW1lc0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZkaXNwbGF5
TmFtZXNDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxE
aXNwbGF5TmFtZXNDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsRGlzcGxheU5h
bWVzQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBkaXNwbGF5TmFtZXNDb25zdHJ1Y3RvclRhYmxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5h
bWVzUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNw
bGF5TmFtZXNQcm90b3R5cGUuY3BwCmluZGV4IDQ1YTYyMDVkMTJiOGQ4YjM2ZDJmOGJhYTllNzcz
ZWU0MTJjMDI1NDIuLjZjMTg1ZWE1OTAwYTA0M2UyNDJmY2RhNTMxZjRhNmNmZDgwMGZjOWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNw
bGF5TmFtZXNQcm90b3R5cGUuY3BwCkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGludGxEaXNwbGF5TmFtZXNQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRp
b25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsRGlzcGxheU5h
bWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLkRpc3BsYXlOYW1lcyIsICZCYXNlOjpzX2lu
Zm8sICZkaXNwbGF5TmFtZXNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsRGlzcGxheU5hbWVzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxE
aXNwbGF5TmFtZXNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIl9zLCAm
QmFzZTo6c19pbmZvLCAmZGlzcGxheU5hbWVzUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lc1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNl
IGZvciBJbnRsRGlzcGxheU5hbWVzUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gZGlzcGxheU5hbWVz
UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxMaXN0Rm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxM
aXN0Rm9ybWF0LmNwcAppbmRleCBmNWMzMDU3MDk4Yzk0OGYzMTRjZjFiY2ZkNjljZGU4OGQyNWU5
MzNmLi43ODVjOTNmYzU0NGVjN2Q4Y2VlZWJjMTk4OWQwN2ZhZDIyYjU0NTQ1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwCkBAIC00OSw3
ICs0OSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bExpc3RG
b3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bExpc3RGb3JtYXQpIH07Citjb25zdCBDbGFzc0lu
Zm8gSW50bExpc3RGb3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsK
IAogLy8gV2UgZG8gbm90IHVzZSBJQ1VEZWxldGVyPHVsaXN0Zm10X2Nsb3NlPiBiZWNhdXNlIHdl
IGRvIG5vdCB3YW50IHRvIGluY2x1ZGUgdWxpc3Rmb3JtYXR0ZXIuaCBpbiBJbnRsTGlzdEZvcm1h
dC5oLgogLy8gdWxpc3Rmb3JtYXR0ZXIuaCBuZWVkcyB0byBiZSBpbmNsdWRlZCB3aXRoICN1bmRl
ZiBVX0hJREVfRFJBRlRfQVBJLCBhbmQgd2Ugd291bGQgbGlrZSB0byBtaW5pbWl6ZSB0aGlzIGVm
ZmVjdCBpbiBJbnRsTGlzdEZvcm1hdC5jcHAuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDVk
MDA4NDUzZmZmNmZmN2FkNzNiZjY5Njk2YTUyOTc0NTEwMGVmYTUuLjYyZmYyZGU5NDVmYmQ4NDRi
OTdmY2Y2MmM5NzA5YTI3ZDZiYzkxYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC00Miw3
ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxMaXN0Rm9ybWF0
Q29uc3RydWN0b3JTdXBwb3J0ZWRMb2NhbGVzT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkJhc2U6OnNfaW5mbywgJmxpc3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rp
b24iX3MsICZCYXNlOjpzX2luZm8sICZsaXN0Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTGlzdEZvcm1hdENvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIEludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBsaXN0
Rm9ybWF0Q29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bExpc3RGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGJmNzM3YWM1YmE0
YWJlMTIxYmVjNjE1ZjgzMGYyYmIzYzYwNmIwYmYuLjIxYWViMDU3NjUzZmM5M2EwYTM0OWI3MDNi
YzVjNzFlYjEwZDY4NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxMaXN0Rm9ybWF0UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bExpc3RGb3JtYXRQcm90b3R5cGVGdW5j
UmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJ
bnRsTGlzdEZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5MaXN0Rm9ybWF0IiwgJkJh
c2U6OnNfaW5mbywgJmxpc3RGb3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsTGlzdEZvcm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsTGlzdEZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5MaXN0Rm9ybWF0Il9zLCAm
QmFzZTo6c19pbmZvLCAmbGlzdEZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxMaXN0Rm9ybWF0UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IEludGxMaXN0Rm9ybWF0UHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbGlzdEZvcm1hdFByb3RvdHlw
ZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9j
YWxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwCmlu
ZGV4IGZjY2FkMzExODlhOGFkN2UwMDI0OWQ0OTIwYzlhYThiYzYwNDdkYTUuLmViM2JmOTJmY2M0
NzY0MDc0YmZlMzI0NWE3NTgxOTdkMjY2ODkwODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwCkBAIC00MCw3ICs0MCw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bExvY2FsZTo6c19pbmZvID0geyAiT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
TG9jYWxlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxMb2NhbGU6OnNfaW5mbyA9IHsgIk9iamVj
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShJbnRsTG9jYWxlKSB9OwogCiBuYW1lc3BhY2UgSW50bExvY2FsZUludGVybmFsIHsKIHN0YXRp
YyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CkBAIC0yNTEsMjEgKzI1MSwyMSBAQCB2
b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3Ry
aW5nIGxhbmd1YWdlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPmxhbmd1YWdlLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0
cmluZyBsYW5ndWFnZSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5sYW5ndWFnZSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVND
SUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQo
KSk7CiAgICAgaWYgKCFsYW5ndWFnZS5pc051bGwoKSAmJiAhaXNVbmljb2RlTGFuZ3VhZ2VTdWJ0
YWcobGFuZ3VhZ2UpKSB7CiAgICAgICAgIHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlLCAibGFuZ3VhZ2UgaXMgbm90IGEgd2VsbC1mb3JtZWQgbGFuZ3VhZ2UgdmFsdWUiX3MpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIHNjcmlwdCA9IGludGxTdHJpbmdP
cHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zY3JpcHQsIHsg
fSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIHNjcmlwdCA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zY3JpcHQsIHsgfSwg
QVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5f
SUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghc2NyaXB0LmlzTnVsbCgpICYm
ICFpc1VuaWNvZGVTY3JpcHRTdWJ0YWcoc2NyaXB0KSkgewogICAgICAgICB0aHJvd1JhbmdlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInNjcmlwdCBpcyBub3QgYSB3ZWxsLWZvcm1lZCBzY3Jp
cHQgdmFsdWUiX3MpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIHJlZ2lv
biA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5yZWdpb24sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIHJlZ2lvbiA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5yZWdpb24sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgp
KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghcmVn
aW9uLmlzTnVsbCgpICYmICFpc1VuaWNvZGVSZWdpb25TdWJ0YWcocmVnaW9uKSkgewogICAgICAg
ICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInJlZ2lvbiBpcyBub3QgYSB3
ZWxsLWZvcm1lZCByZWdpb24gdmFsdWUiX3MpOwpAQCAtMjc1LDcgKzI3NSw3IEBAIHZvaWQgSW50
bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2FsZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBj
b25zdCBTdHJpbmcmIHRhCiAgICAgaWYgKCFsYW5ndWFnZS5pc051bGwoKSB8fCAhc2NyaXB0Lmlz
TnVsbCgpIHx8ICFyZWdpb24uaXNOdWxsKCkpCiAgICAgICAgIGxvY2FsZUlELm92ZXJyaWRlTGFu
Z3VhZ2VTY3JpcHRSZWdpb24obGFuZ3VhZ2UsIHNjcmlwdCwgcmVnaW9uKTsKIAotICAgIFN0cmlu
ZyBjYWxlbmRhciA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJp
bmcgY2FsZW5kYXIgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+Y2FsZW5kYXIsIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJ
TGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkp
OwogICAgIGlmICghY2FsZW5kYXIuaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVM
b2NhbGVJZGVudGlmaWVyVHlwZShjYWxlbmRhcikpIHsKQEAgLTI4NSw3ICsyODUsNyBAQCB2b2lk
IEludGxMb2NhbGU6OmluaXRpYWxpemVMb2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgY29uc3QgU3RyaW5nJiB0YQogICAgICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNh
bGVuZGFyIl9zLCBjYWxlbmRhcik7CiAgICAgfQogCi0gICAgU3RyaW5nIGNvbGxhdGlvbiA9IGlu
dGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5j
b2xsYXRpb24sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIGNvbGxhdGlvbiA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5jb2xsYXRpb24sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVs
bCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICgh
Y29sbGF0aW9uLmlzTnVsbCgpKSB7CiAgICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRp
ZmllclR5cGUoY29sbGF0aW9uKSkgewpAQCAtMjk1LDEyICsyOTUsMTIgQEAgdm9pZCBJbnRsTG9j
YWxlOjppbml0aWFsaXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0
IFN0cmluZyYgdGEKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZhbHVlKCJjb2xsYXRpb24i
X3MsIGNvbGxhdGlvbik7CiAgICAgfQogCi0gICAgU3RyaW5nIGhvdXJDeWNsZSA9IGludGxTdHJp
bmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyQ3lj
bGUsIHsgImgxMSIsICJoMTIiLCAiaDIzIiwgImgyNCIgfSwgImhvdXJDeWNsZSBtdXN0IGJlIFwi
aDExXCIsIFwiaDEyXCIsIFwiaDIzXCIsIG9yIFwiaDI0XCIiLCBudWxscHRyKTsKKyAgICBTdHJp
bmcgaG91ckN5Y2xlID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPmhvdXJDeWNsZSwgeyAiaDExIiwgImgxMiIsICJoMjMiLCAiaDI0IiB9
LCAiaG91ckN5Y2xlIG11c3QgYmUgXCJoMTFcIiwgXCJoMTJcIiwgXCJoMjNcIiwgb3IgXCJoMjRc
IiJfcywgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIHZvaWQoKSk7CiAgICAgaWYgKCFob3VyQ3ljbGUuaXNOdWxsKCkpCiAgICAgICAgIGxvY2Fs
ZUlELnNldEtleXdvcmRWYWx1ZSgiaG91cnMiX3MsIGhvdXJDeWNsZSk7CiAKLSAgICBTdHJpbmcg
Y2FzZUZpcnN0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnBy
b3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwgeyAidXBwZXIiLCAibG93ZXIiLCAiZmFsc2UiIH0sICJj
YXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIgXCJ1cHBlclwiLCBcImxvd2VyXCIsIG9yIFwiZmFsc2Vc
IiIsIG51bGxwdHIpOworICAgIFN0cmluZyBjYXNlRmlyc3QgPSBpbnRsU3RyaW5nT3B0aW9uKGds
b2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2FzZUZpcnN0LCB7ICJ1cHBl
ciIsICJsb3dlciIsICJmYWxzZSIgfSwgImNhc2VGaXJzdCBtdXN0IGJlIGVpdGhlciBcInVwcGVy
XCIsIFwibG93ZXJcIiwgb3IgXCJmYWxzZVwiIl9zLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWNhc2VGaXJz
dC5pc051bGwoKSkKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZhbHVlKCJjb2xjYXNlZmly
c3QiX3MsIGNhc2VGaXJzdCk7CkBAIC0zMTAsNyArMzEwLDcgQEAgdm9pZCBJbnRsTG9jYWxlOjpp
bml0aWFsaXplTG9jYWxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmlu
ZyYgdGEKICAgICBpZiAobnVtZXJpYyAhPSBUcmlTdGF0ZTo6SW5kZXRlcm1pbmF0ZSkKICAgICAg
ICAgbG9jYWxlSUQuc2V0S2V5d29yZFZhbHVlKCJjb2xudW1lcmljIl9zLCBudW1lcmljID09IFRy
aVN0YXRlOjpUcnVlID8gInllcyIgOiAibm8iKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0
ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlO
YW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmlu
ZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9u
cywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6
bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgdm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAg
ICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkp
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVD
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxl
Q29uc3RydWN0b3IuY3BwCmluZGV4IDM3NjUzYmIzNzEzOTU3NzIyNjVlYWVlYzNlMTE1ZGIwZjE4
ZWJiYmMuLjA5MmQ4YTQ0ZjIxZWFiMWY0OTUyMTliYTZkMWY3ZmFkMTYwYmU0ODUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVj
dG9yLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEludGxMb2NhbGVDb25zdHJ1Y3Rvcik7CiAKLWNv
bnN0IENsYXNzSW5mbyBJbnRsTG9jYWxlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsTG9jYWxlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bExvY2FsZUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTG9jYWxlQ29uc3RydWN0b3IpIH07CiAK
IEludGxMb2NhbGVDb25zdHJ1Y3RvciogSW50bExvY2FsZUNvbnN0cnVjdG9yOjpjcmVhdGUoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSW50bExvY2FsZVByb3RvdHlwZSogbG9jYWxlUHJv
dG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
bExvY2FsZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
TG9jYWxlUHJvdG90eXBlLmNwcAppbmRleCAwOTBjOTI1MzIzMWQ2MjM5Zjk0OWQzODI2YjBkZjY0
NjQyNjA5MjhmLi4zMmQyMjgyNGRlYzZlZGE1ZmM0ZmJmY2UwMDRkZjdlOGUwMjZkOGUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90
eXBlLmNwcApAQCAtNTksNyArNTksNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRF
UihpbnRsTG9jYWxlUHJvdG90eXBlR2V0dGVyV2Vla0luZm8pOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxMb2NhbGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwu
TG9jYWxlIiwgJkJhc2U6OnNfaW5mbywgJmxvY2FsZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxMb2NhbGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSW50bExvY2FsZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Mb2NhbGUiX3MsICZCYXNl
OjpzX2luZm8sICZsb2NhbGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsTG9jYWxlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxMb2NhbGVQ
cm90b3R5cGUubHV0LmgKIEBiZWdpbiBsb2NhbGVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcAppbmRleCA5NTNj
MzlmZTY0YTllODRkMGJiNmMxMGMwNDJiMDczYWY2OWUzNTY5Li5jYTA0MjQ5ODUwMWYyNjgwODdm
NDQ1MWViZmVlNzI5Y2FlZDkxMzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsTnVtYmVyRm9ybWF0LmNwcApAQCAtNTEsNyArNTEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbyA9IHsg
Ik9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bE51bWJlckZvcm1hdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9y
bWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdCkgfTsKIAogbmFtZXNwYWNl
IEludGxOdW1iZXJGb3JtYXRJbnRlcm5hbCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9z
ZSA9IGZhbHNlOwpAQCAtMzA0LDcgKzMwNCw3IEBAIHZvaWQgSW50bE51bWJlckZvcm1hdDo6aW5p
dGlhbGl6ZU51bWJlckZvcm1hdChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhCiAg
ICAgTG9jYWxlTWF0Y2hlciBsb2NhbGVNYXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVy
PihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIs
IHsgeyAibG9va3VwIl9zLCBMb2NhbGVNYXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3Ms
IExvY2FsZU1hdGNoZXI6OkJlc3RGaXQgfSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhl
ciBcImxvb2t1cFwiIG9yIFwiYmVzdCBmaXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBu
dW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywg
dm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIp
OworICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9i
amVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFT
Q0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lG
X0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051
bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJl
cmluZ1N5c3RlbSkpIHsKQEAgLTMyOCw3ICszMjgsNyBAQCB2b2lkIEludGxOdW1iZXJGb3JtYXQ6
OmluaXRpYWxpemVOdW1iZXJGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YQogICAgIG1fc3R5bGUgPSBpbnRsT3B0aW9uPFN0eWxlPihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPnN0eWxlLCB7IHsgImRlY2ltYWwiX3MsIFN0eWxlOjpEZWNpbWFs
IH0sIHsgInBlcmNlbnQiX3MsIFN0eWxlOjpQZXJjZW50IH0sIHsgImN1cnJlbmN5Il9zLCBTdHls
ZTo6Q3VycmVuY3kgfSwgeyAidW5pdCJfcywgU3R5bGU6OlVuaXQgfSB9LCAic3R5bGUgbXVzdCBi
ZSBlaXRoZXIgXCJkZWNpbWFsXCIsIFwicGVyY2VudFwiLCBcImN1cnJlbmN5XCIsIG9yIFwidW5p
dFwiIl9zLCBTdHlsZTo6RGVjaW1hbCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
dm9pZCgpKTsKIAotICAgIFN0cmluZyBjdXJyZW5jeSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFs
T2JqZWN0LCBvcHRpb25zLCBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKHZtLCAiY3VycmVuY3kiKSwg
eyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY3VycmVuY3kgPSBpbnRsU3RyaW5n
T3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwg
ImN1cnJlbmN5IiksIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVs
bCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICgh
Y3VycmVuY3kuaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1dlbGxGb3JtZWRDdXJyZW5jeUNv
ZGUoY3VycmVuY3kpKSB7CkBAIC0zNTUsNyArMzU1LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0
Ojppbml0aWFsaXplTnVtYmVyRm9ybWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmEKICAgICBtX2N1cnJlbmN5U2lnbiA9IGludGxPcHRpb248Q3VycmVuY3lTaWduPihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5jeVNpZ24i
KSwgeyB7ICJzdGFuZGFyZCJfcywgQ3VycmVuY3lTaWduOjpTdGFuZGFyZCB9LCB7ICJhY2NvdW50
aW5nIl9zLCBDdXJyZW5jeVNpZ246OkFjY291bnRpbmcgfSB9LCAiY3VycmVuY3lTaWduIG11c3Qg
YmUgZWl0aGVyIFwic3RhbmRhcmRcIiBvciBcImFjY291bnRpbmdcIiJfcywgQ3VycmVuY3lTaWdu
OjpTdGFuZGFyZCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAot
ICAgIFN0cmluZyB1bml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IElkZW50aWZpZXI6OmZyb21TdHJpbmcodm0sICJ1bml0IiksIHsgfSwgbnVsbHB0ciwgbnVsbHB0
cik7CisgICAgU3RyaW5nIHVuaXQgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgInVuaXQiKSwgeyB9LCBBU0NJSUxpdGVy
YWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHZvaWQoKSk7CiAgICAgc3RkOjpvcHRpb25hbDxXZWxsRm9ybWVkVW5pdD4gd2Vs
bEZvcm1lZFVuaXQ7CiAgICAgaWYgKCF1bml0LmlzTnVsbCgpKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVj
dG9yLmNwcAppbmRleCA0MTY0MDg5OTdjMThmN2M3NjI4Zjc3NWI4ZDQxZGY3NzI0MmE0ZDE2Li42
YmZiODk5ZWI5ZDI4MjQxMmNlMjgzNTUxYmIyYjkzNDU4ZTAxNTViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25z
dHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oaW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsZXMKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0Q29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1h
dENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJl
ckZvcm1hdENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZudW1i
ZXJGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKElu
dGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsTnVtYmVy
Rm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBudW1iZXJGb3JtYXRDb25zdHJ1Y3RvclRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVy
Rm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxO
dW1iZXJGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IDhkYjI5NDA4YWRmYWJjYTE4MzZkMTkwZDhj
ZDFiOGU1NTg1OWZhZWIuLjA1MWZmZThhYjM0ODI3NjE3YmY1NTgwOGUzODhmZjRhNmE4OWI0MWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3Jt
YXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxO
dW1iZXJGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC01Myw3ICs1Myw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKGludGxOdW1iZXJGb3JtYXRQcm90b3R5cGVGdW5jRm9ybWF0UmFu
Z2VUb1BhcnRzCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bE51bWJl
ckZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5OdW1iZXJGb3JtYXQiLCAmQmFzZTo6
c19pbmZvLCAmbnVtYmVyRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bE51bWJlckZvcm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJ
bnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCJf
cywgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNv
dXJjZSBmb3IgSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlckZv
cm1hdFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxP
YmplY3QuY3BwCmluZGV4IDA0OWJjMzk0NjgyNTZkZTM2ZmJjZGRhOGZhMjcyMjE5YmIzMThlZjQu
LjVlMTc2OWUzZjU5YWY5MDU4ZGZhZTkyZTU3OTYwZWViZDhmZTBhMWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCkBAIC0xNjgsNyArMTY4LDcgQEAg
c3RydWN0IE1hdGNoZXJSZXN1bHQgewogICAgIHNpemVfdCBleHRlbnNpb25JbmRleCB7IDAgfTsK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsT2JqZWN0OjpzX2luZm8gPSB7ICJJbnRsIiwgJkJh
c2U6OnNfaW5mbywgJmludGxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShJbnRsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsg
IkludGwiX3MsICZCYXNlOjpzX2luZm8sICZpbnRsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bE9iamVjdCkgfTsKIAogdm9pZCBVRmllbGRQb3NpdGlvbkl0ZXJh
dG9yRGVsZXRlcjo6b3BlcmF0b3IoKShVRmllbGRQb3NpdGlvbkl0ZXJhdG9yKiBpdGVyYXRvcikg
Y29uc3QKIHsKQEAgLTU4OCw3ICs1ODgsNyBAQCBUcmlTdGF0ZSBpbnRsQm9vbGVhbk9wdGlvbihK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjdCogb3B0aW9ucywgUHJvcAogICAg
IHJldHVybiB0cmlTdGF0ZSh2YWx1ZS50b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7CiB9CiAKLVN0
cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2Jq
ZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHksIHN0ZDo6aW5pdGlhbGl6ZXJfbGlz
dDxjb25zdCBjaGFyKj4gdmFsdWVzLCBjb25zdCBjaGFyKiBub3RGb3VuZCwgY29uc3QgY2hhciog
ZmFsbGJhY2spCitTdHJpbmcgaW50bFN0cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU09iamVjdCogb3B0aW9ucywgUHJvcGVydHlOYW1lIHByb3BlcnR5LCBzdGQ6Omlu
aXRpYWxpemVyX2xpc3Q8Y29uc3QgY2hhcio+IHZhbHVlcywgQVNDSUlMaXRlcmFsIG5vdEZvdW5k
LCBBU0NJSUxpdGVyYWwgZmFsbGJhY2spCiB7CiAgICAgLy8gR2V0T3B0aW9uIChvcHRpb25zLCBw
cm9wZXJ0eSwgdHlwZT0ic3RyaW5nIiwgdmFsdWVzLCBmYWxsYmFjaykKICAgICAvLyBodHRwczov
L3RjMzkuZ2l0aHViLmlvL2VjbWE0MDIvI3NlYy1nZXRvcHRpb24KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxPYmplY3QuaAppbmRleCA5OGU5YmI1ODNlNTViYjdjZjk3YjBhODU4
MWMwYjhjNjVjZjFjOTk3Li4zNDExNzY0MjI4ZmFiNDgyMmE2Y2JlODA2ZTg4ZTg2MWYzNDJmYjk5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCkBAIC0xMjIs
NyArMTIyLDcgQEAgVGltZVpvbmVJRCB1dGNUaW1lWm9uZUlEU2xvdygpOwogQ2FsZW5kYXJJRCB1
dGNUaW1lWm9uZUlEKCk7CiAKIFRyaVN0YXRlIGludGxCb29sZWFuT3B0aW9uKEpTR2xvYmFsT2Jq
ZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMsIFByb3BlcnR5TmFtZSk7Ci1TdHJpbmcgaW50bFN0cmlu
Z09wdGlvbihKU0dsb2JhbE9iamVjdCosIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUs
IHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxjb25zdCBjaGFyKj4gdmFsdWVzLCBjb25zdCBjaGFyKiBu
b3RGb3VuZCwgY29uc3QgY2hhciogZmFsbGJhY2spOworU3RyaW5nIGludGxTdHJpbmdPcHRpb24o
SlNHbG9iYWxPYmplY3QqLCBKU09iamVjdCogb3B0aW9ucywgUHJvcGVydHlOYW1lLCBzdGQ6Omlu
aXRpYWxpemVyX2xpc3Q8Y29uc3QgY2hhcio+IHZhbHVlcywgQVNDSUlMaXRlcmFsIG5vdEZvdW5k
LCBBU0NJSUxpdGVyYWwgZmFsbGJhY2spOwogdW5zaWduZWQgaW50bE51bWJlck9wdGlvbihKU0ds
b2JhbE9iamVjdCosIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIG1p
bmltdW0sIHVuc2lnbmVkIG1heGltdW0sIHVuc2lnbmVkIGZhbGxiYWNrKTsKIHVuc2lnbmVkIGlu
dGxEZWZhdWx0TnVtYmVyT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSwgUHJvcGVydHlO
YW1lLCB1bnNpZ25lZCBtaW5pbXVtLCB1bnNpZ25lZCBtYXhpbXVtLCB1bnNpZ25lZCBmYWxsYmFj
ayk7CiBWZWN0b3I8Y2hhciwgMzI+IGxvY2FsZUlEQnVmZmVyRm9yTGFuZ3VhZ2VUYWdXaXRoTnVs
bFRlcm1pbmF0b3IoY29uc3QgQ1N0cmluZyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlcy5jcHAKaW5kZXggYTg1MTMxMWM3NDRiNWVhYjE2NWFj
N2Y0ZDU2NzEwMDZkODY2NzgzZS4uNjhlZGYxNjNiZDQ3OWZhMTg2MWUwMjNiMmQ3NzI0NzgzYzZk
ZmRlYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJh
bFJ1bGVzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFs
UnVsZXMuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHZvaWQgVVBsdXJhbFJ1bGVzRGVsZXRlcjo6b3Bl
cmF0b3IoKShVUGx1cmFsUnVsZXMqIHBsdXJhbFJ1bGVzKQogICAgICAgICB1cGxydWxlc19jbG9z
ZShwbHVyYWxSdWxlcyk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXM6OnNf
aW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxQ
bHVyYWxSdWxlczo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxQbHVyYWxSdWxlcykgfTsKIAogdXNp
bmcgVUVudW1lcmF0aW9uRGVsZXRlciA9IElDVURlbGV0ZXI8dWVudW1fY2xvc2U+OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25z
dHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVs
ZXNDb25zdHJ1Y3Rvci5jcHAKaW5kZXggODEyYWFhMjAwMGUzMGI5ZTZiOWNmNzMwNTdiZWQ0NDQw
MjI3ODgxNi4uMDBlZmJhNWMxZGVlMmQ2OTI0NGIyYmEwYTVhNGFlMTg1ODMyOTQ5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxS
dWxlc0NvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihpbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3RvckZ1bmNTdXBwb3J0ZWRMb2Nh
bGVzTwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxl
c0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sICZwbHVyYWxSdWxlc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
SW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50
ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcGx1cmFsUnVsZXNDb25zdHJ1Y3RvclRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yKSB9Owog
CiAvKiBTb3VyY2UgZm9yIEludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4g
cGx1cmFsUnVsZXNDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlLmNwcAppbmRleCA2MmMw
OGJmOTU3YTEzMmYxMmQ2ZDRiZmIyZDgxY2RiMDk4ZDNhNTkxLi4yYjRlOTU2Yzg1NDU5ZjU0NWEy
MGMyZjJkNzkxNmJlZDY1MWM5OGU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsUGx1cmFsUnVsZXNQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5jcHAKQEAgLTQ0LDcgKzQ0
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFBsdXJhbFJ1bGVzUHJv
dG90eXBlRnVuY1Jlc29sdmVkT3B0aW9ucyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlBsdXJh
bFJ1bGVzIiwgJkJhc2U6OnNfaW5mbywgJnBsdXJhbFJ1bGVzUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlc1Byb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5Q
bHVyYWxSdWxlcyJfcywgJkJhc2U6OnNfaW5mbywgJnBsdXJhbFJ1bGVzUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlKSB9
OwogCiAvKiBTb3VyY2UgZm9yIEludGxQbHVyYWxSdWxlc1Byb3RvdHlwZS5sdXQuaAogQGJlZ2lu
IHBsdXJhbFJ1bGVzUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAKaW5kZXggZTMyOGExYzFm
NDBjNDllNjk1NDUxYTUzZDI5OWU1MjMxN2I5ZDc1Ni4uOTVjNDNhZjc3ZTc3OTljMmVhYjMzZTc0
ZmUwYTEzMWM1MGE1NjY2YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdC5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxhdGl2ZVRpbWVGb3JtYXQpIH07Citjb25zdCBDbGFz
c0luZm8gSW50bFJlbGF0aXZlVGltZUZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxh
dGl2ZVRpbWVGb3JtYXQpIH07CiAKIG5hbWVzcGFjZSBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0SW50
ZXJuYWwgewogfQpAQCAtOTYsNyArOTYsNyBAQCB2b2lkIEludGxSZWxhdGl2ZVRpbWVGb3JtYXQ6
OmluaXRpYWxpemVSZWxhdGl2ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbAogICAg
IExvY2FsZU1hdGNoZXIgbG9jYWxlTWF0Y2hlciA9IGludGxPcHRpb248TG9jYWxlTWF0Y2hlcj4o
Z2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLCB7
IHsgImxvb2t1cCJfcywgTG9jYWxlTWF0Y2hlcjo6TG9va3VwIH0sIHsgImJlc3QgZml0Il9zLCBM
b2NhbGVNYXRjaGVyOjpCZXN0Rml0IH0gfSwgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIg
XCJsb29rdXBcIiBvciBcImJlc3QgZml0XCIiX3MsIExvY2FsZU1hdGNoZXI6OkJlc3RGaXQpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAKLSAgICBTdHJpbmcgbnVt
YmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsK
KyAgICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmpl
Y3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBBU0NJ
SUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFudW1iZXJpbmdTeXN0ZW0uaXNOdWxs
KCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShudW1iZXJp
bmdTeXN0ZW0pKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCBh
ODI1YzM2NjcxM2MxNDQ5MGNiNmRkZWI0NTc2ZGJkNTU2Y2YzNjY0Li5kNjdlY2YyNWU4NzYzMDg0
MmUwYzZhNDU4ZWYzOTJjMWEyZTgyNjNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1
Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oaW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZEwKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5m
bywgJnJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdENvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZyZWxhdGl2ZVRpbWVGb3Jt
YXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxh
dGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRp
dmVUaW1lRm9ybWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiByZWxhdGl2ZVRpbWVGb3JtYXRD
b25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGQ0
Nzk0NWFkNmE5NzJhZmZmNWU2MzhiYWQ5NGU0MmUwOWY5OWUzMjEuLmFmYjQwYTdjNzczNWQ3NDlk
MzQzYWJlZDg0MjliNWY4ZmIxZjIzZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUu
Y3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGlu
dGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpCiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAm
cmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlJlbGF0
aXZlVGltZUZvcm1hdCJfcywgJkJhc2U6OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdFByb3Rv
dHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxhdGl2ZVRpbWVG
b3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFJlbGF0aXZlVGltZUZvcm1h
dFByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0
ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRl
cmF0b3IuY3BwCmluZGV4IGE1Y2QwM2JlOGJkMDhkZWYxMWY2MDRmZDVjZWU3NjUwZDAxYTAxOWQu
LjAxNmExYzMyMjY5NmE2NzViMGZhZDRkOWJmZTlkMjBlOGQ1MjM0MTUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwCkBA
IC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50
bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3I6OnNfaW5mbyA9IHsgIk9iamVj
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShJbnRsU2VnbWVudEl0ZXJhdG9yKSB9OwogCiBJbnRsU2VnbWVudEl0ZXJhdG9yKiBJbnRsU2Vn
bWVudEl0ZXJhdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgc3RkOjp1
bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRvckRlbGV0ZXI+JiYgc2VnbWVu
dGVyLCBCb3g8VmVjdG9yPFVDaGFyPj4gYnVmZmVyLCBKU1N0cmluZyogc3RyaW5nLCBJbnRsU2Vn
bWVudGVyOjpHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlw
ZS5jcHAKaW5kZXggMDdjMDVjYmMwYmNhZTljMjVhM2YzY2IwMTFlYzMyYWQ4YzU2MzMyNS4uNTU5
YzU4YzM0NGJiODM5YjRmNDQ5OTMyMWExYTA5ODg2MjA5MDg2YyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclBy
b3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oaW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZUZ1bmNOZXh0KTsKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJTZWdtZW50IFN0cmluZyBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sICZzZWdt
ZW50SXRlcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdt
ZW50SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNlZ21lbnQgU3RyaW5nIEl0ZXJhdG9y
Il9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZSkgfTsK
IAogLyogU291cmNlIGZvciBJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVn
aW4gc2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKaW5kZXggOGQ4NWZlN2M5Y2MyZTYwY2ZlNmIy
MjM4MzM0OTdkZGY5YjRmN2NiMy4uM2ZkYTA1ZDI5MDc5MDU4NDdhMGE4ZjFmMTI1ZDQwYzgxZTVk
MWZjMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21l
bnRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRl
ci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBJbnRsU2VnbWVudGVyOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXIpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRlcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdt
ZW50ZXIpIH07CiAKIEludGxTZWdtZW50ZXIqIEludGxTZWdtZW50ZXI6OmNyZWF0ZShWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU5MDYx
MDUwY2VjYmJhZWQ5Y2E0MTJjNDYwNzExNzkwOTVlOWQwNC4uZjFkMWVjNDFkOGJiNjkzNTg1NTIz
NGQ5MzI2OTdlMzRhZTEyMjI0ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyQ29uc3RydWN0b3IuY3BwCkBAIC00Miw3ICs0Miw3
IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxTZWdtZW50ZXJDb25zdHJ1
Y3RvclN1cHBvcnRlZExvY2FsZXNPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSW50bFNlZ21lbnRlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZC
YXNlOjpzX2luZm8sICZzZWdtZW50ZXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXJDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBJbnRsU2VnbWVudGVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCAmc2VnbWVudGVyQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsU2VnbWVudGVyQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
SW50bFNlZ21lbnRlckNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gc2VnbWVudGVyQ29uc3RydWN0
b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNl
Z21lbnRlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyUHJvdG90eXBlLmNwcAppbmRleCA2NmE1Y2MzYTk3ZWRmNjk4YmJiOWExZTIzMTZl
MGMxZmM5OWE5ZTVhLi5iYmUwOTQ3YWRjM2ZkMmU3MDllYzY5NjkyYTA1NzM1MDkzZDY4ODU0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dGVyUHJvdG90eXBlLmNwcApAQCAtNDAsNyArNDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihpbnRsU2VnbWVudGVyUHJvdG90eXBlRnVuY1Jlc29sdmVkT3B0aW9ucyk7CiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRlclByb3RvdHlw
ZTo6c19pbmZvID0geyAiSW50bC5TZWdtZW50ZXIiLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVy
UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRl
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJJbnRsLlNlZ21lbnRlciJfcywgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRlclBy
b3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXJQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFNlZ21lbnRlclByb3RvdHlwZS5sdXQu
aAogQGJlZ2luIHNlZ21lbnRlclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcAppbmRleCA4ZGUzNGEzMDRlZGUwM2UwYjg0YjIw
YzI4MDExMzQ0MTk5NmFiNGY4Li41MTVlNTk1MjY1MzZlN2Q1ZmVjMTBjYzU1MmE5NjBiZGQ3OTJk
YjliIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5j
cHAKQEAgLTM3LDcgKzM3LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBJbnRsU2VnbWVudHM6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRzKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEludGxTZWdtZW50czo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50cykg
fTsKIAogSW50bFNlZ21lbnRzKiBJbnRsU2VnbWVudHM6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJh
dG9yRGVsZXRlcj4mJiBzZWdtZW50ZXIsIEJveDxWZWN0b3I8VUNoYXI+PiYmIGJ1ZmZlciwgSlNT
dHJpbmcqIHN0cmluZywgSW50bFNlZ21lbnRlcjo6R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQ
cm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRz
UHJvdG90eXBlLmNwcAppbmRleCA1M2UzZWNmMDJmZjg0YTI5MzY5YzU0OWE2NmQwNzg5NmU1ZWY2
ZGQ3Li4wY2U1NWNkYzBmMWYxMDY5MWU5ZWZiMzdlNjIzMTBiZmFmOWRhZjY5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlw
ZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
aW50bFNlZ21lbnRzUHJvdG90eXBlRnVuY0l0ZXJhdG9yKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdt
ZW50cyUiLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudHNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHNQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSW50bFNlZ21lbnRzUHJvdG90eXBlOjpzX2luZm8gPSB7ICIlU2VnbWVudHMlIl9zLCAm
QmFzZTo6c19pbmZvLCAmc2VnbWVudHNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsU2VnbWVudHNQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50
bFNlZ21lbnRzUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2VnbWVudHNQcm90b3R5cGVUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSXRlcmF0b3JQcm90b3R5
cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUu
Y3BwCmluZGV4IDA5MmJhNTU1OWQ1ZmMyZDU5ZWIxZGM2YjQ3NGUzY2U5NzFhZDEwOWEuLmEyMWVl
ZDNiMzg5NjJmYzdlYzhiNjRjOGVmN2Q5ZWM1ZDliNWJlMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMx
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJdGVyYXRvclByb3Rv
dHlwZTo6c19pbmZvID0geyAiSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJdGVyYXRvciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJdGVyYXRvclBy
b3RvdHlwZSkgfTsKIAogdm9pZCBJdGVyYXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5LmNwcAppbmRleCAzMTc5ODVmZmVkNmFlYjNlODg1OTM4NDMwMjAz
ZWM5YmE0M2QwY2MwLi40YTg0MGVlZDZkZTFkNzUzNWQ2OWFmNTg5YzM5ZTk5NWZmODY1YTg4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcApAQCAtMzYsNyArMzYs
NyBAQCBjb25zdCBBU0NJSUxpdGVyYWwgTGVuZ3RoRXhjZWVkZWRUaGVNYXhpbXVtQXJyYXlMZW5n
dGhFcnJvciB7ICJMZW5ndGggZXhjZWVkZWQgdAogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxM
WV9ERVNUUlVDVElCTEUoSlNBcnJheSk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FycmF5OjpzX2lu
Zm8gPSB7IkFycmF5IiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5KX07Citjb25zdCBDbGFzc0luZm8gSlNBcnJh
eTo6c19pbmZvID0geyAiQXJyYXkiX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheSkgfTsKIAogSlNBcnJheSog
SlNBcnJheTo6dHJ5Q3JlYXRlVW5pbml0aWFsaXplZFJlc3RyaWN0ZWQoT2JqZWN0SW5pdGlhbGl6
YXRpb25TY29wZSYgc2NvcGUsIEdDRGVmZXJyYWxDb250ZXh0KiBkZWZlcnJhbENvbnRleHQsIFN0
cnVjdHVyZSogc3RydWN0dXJlLCB1bnNpZ25lZCBpbml0aWFsTGVuZ3RoKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcAppbmRleCBkYTZkMWRj
ZWIyMWU3YzBkN2ZhZDQ3NGJhNTEwOThjMTNjYTY3MzU2Li45ZjhlNDJkYjY2MTQxMzc2YWI0OWI3
NTQ5ZTQ3NzhmODhlMWEyNzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyLmNwcApAQCAtMzEsOCArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXI6OnNfaW5mbyA9IHsKLSAgICAiQXJyYXlC
dWZmZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXlCdWZmZXIpfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FycmF5QnVmZmVyOjpzX2lu
Zm8gPSB7ICJBcnJheUJ1ZmZlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyKSB9OwogCiBKU0FycmF5QnVmZmVyOjpK
U0FycmF5QnVmZmVyKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZlB0cjxBcnJheUJ1
ZmZlcj4mJiBhcnJheUJ1ZmZlcikKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3Ry
dWN0b3IuY3BwCmluZGV4IGI5MmNlMTU3M2MwYzk1MWI5MGIxYjkxOTcwNTZhMTE1NjkxOWI2ZmEu
LjM4ZjJhZGVjZjhkMDQxNGU3OTI5Y2I2MzA3NDQyNWU2NDQzNWM4OTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVj
dG9yLmNwcApAQCAtNDEsMTMgKzQxLDEzIEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGNvbnN0cnVjdFNoYXJlZEFycmF5QnVmZmVyKTsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xh
c3NJbmZvIEpTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0gewotICAgICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKQogfTsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xhc3NJ
bmZvIEpTU2hhcmVkQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0gewotICAgICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTaGFyZWRBcnJheUJ1ZmZlckNvbnN0cnVjdG9yKQogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcApp
bmRleCBjZmEwOGNiZWY1MWYxMTU4MTk2OTU1ZDA1MjcxZjY3NjIxZWJlOGM1Li4xOTBiZWYxMTJj
YzVkYjkxMDgxMWJjZWI4YzQwNGU0MjdjMjkyMGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcApAQCAtOTgs
NyArOTgsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBzdGQ6OnBhaXI8U3BlY2llc0NvbnN0cnVj
dFJlc3VsdCwgSlNBcnJheUJ1ZmZlcio+IHNwZWNpZXNDbwogICAgIE1hcmtlZEFyZ3VtZW50QnVm
ZmVyIGFyZ3M7CiAgICAgYXJncy5hcHBlbmQoanNOdW1iZXIobGVuZ3RoKSk7CiAgICAgQVNTRVJU
KCFhcmdzLmhhc092ZXJmbG93ZWQoKSk7Ci0gICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0
cnVjdChnbG9iYWxPYmplY3QsIHNwZWNpZXMudmFsdWUoKSwgYXJncywgIlNwZWNpZXMgY29uc3Ry
dWN0aW9uIGRpZCBub3QgZ2V0IGEgdmFsaWQgY29uc3RydWN0b3IiKTsKKyAgICBKU09iamVjdCog
bmV3T2JqZWN0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgc3BlY2llcy52YWx1ZSgpLCBhcmdz
LCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJf
cyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZXJyb3JSZXN1bHQpOwogCiAgICAg
Ly8gMTcuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KG5ldywgW1tBcnJheUJ1ZmZlckRh
dGFdXSkuCkBAIC0yNTcsNyArMjU3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHNoYXJl
ZEFycmF5QnVmZmVyUHJvdG9HZXR0ZXJGdW5jQnl0ZUxlbmd0aCwgKEpTR2xvYmFsT2IKIH0KIAog
Y29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsKLSAgICAi
QXJyYXlCdWZmZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQcm90b3R5cGUpCisgICAgIkFycmF5QnVmZmVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJy
YXlCdWZmZXJQcm90b3R5cGUpCiB9OwogCiBKU0FycmF5QnVmZmVyUHJvdG90eXBlOjpKU0FycmF5
QnVmZmVyUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyVmlldy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyVmlldy5jcHAKaW5kZXgg
OTE5YjMxNTljYzM3NjA0NWQ5YWI5NmEzYmU2MmUwYWFkMjI2YmU2Mi4uNmY4ZDVhZDBjOTM0YWVi
MjUzOTQwY2I3YWU4ZWUwYmMwYmQ5NGJjMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmNwcApAQCAtMzcsNyArMzcsNyBAQAogbmFt
ZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENsYXNzSW5mbyBKU0FycmF5QnVmZmVyVmlldzo6c19pbmZv
ID0gewotICAgICJBcnJheUJ1ZmZlclZpZXciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJWaWV3KQorICAgICJBcnJheUJ1
ZmZlclZpZXciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZpZXcpCiB9OwogCiBKU0FycmF5QnVmZmVyVmlldzo6Q29u
c3RydWN0aW9uQ29udGV4dDo6Q29uc3RydWN0aW9uQ29udGV4dCgKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5SXRlcmF0b3IuY3BwCmluZGV4IDFjYTI1MTQ2ZGEy
MTU1MGQ3MzM0ODlmMzBiMzFkNTRjNjA3OGEwOGIuLmEyNDFhZjgwOTU4N2NkZmZmZmMwZWU1OGQ5
YmQ4Y2U3MTFkNjJiNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheUl0ZXJhdG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlJdGVyYXRvcjo6c19pbmZvID0geyAiQXJyYXlJdGVy
YXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNBcnJheUl0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlJdGVyYXRvcjo6
c19pbmZvID0geyAiQXJyYXlJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5SXRlcmF0b3IpIH07CiAKIEpTQXJyYXlJ
dGVyYXRvciogSlNBcnJheUl0ZXJhdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNPYmplY3QqIGl0ZXJhdGVkT2JqZWN0LCBKU1ZhbHVlIGtpbmQpCiB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3luY0Z1bmN0aW9uLmNwcAppbmRleCA5
MDg1N2Y0YjhjNTU3NTEwODhlMjgyMjllNGZhYzZlMmJlOTMxZTBhLi41YzBjMzI5YTQ1NDkyMDUx
OWZmMmZiNWEwNGRjM2FkYTM4YTQ3MWU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FzeW5jRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkFzeW5jRnVuY3Rpb24iLCAgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0FzeW5jRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3lu
Y0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0aW9uIl9zLCAgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FzeW5jRnVuY3Rpb24pIH07
CiAKIEpTQXN5bmNGdW5jdGlvbjo6SlNBc3luY0Z1bmN0aW9uKFZNJiB2bSwgRnVuY3Rpb25FeGVj
dXRhYmxlKiBleGVjdXRhYmxlLCBKU1Njb3BlKiBzY29wZSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBCYXNlKHZtLCBleGVjdXRhYmxlLCBzY29wZSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3luY0dlbmVyYXRvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcAppbmRleCBl
ZDUwNmVlZTE1ZjkzOGUyNTE0NGFmNDcyNmJjYTI5YzQ0MWU5NDgyLi5mY2YxZDkyZTEwMzc1ZGU0
MzZkNjBjYThjN2UxMGY0ZWVjNTA0OGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXN5bmNHZW5lcmF0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0FzeW5jR2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
QXN5bmNHZW5lcmF0b3I6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJhdG9yIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0
b3IpIH07CiAKIEpTQXN5bmNHZW5lcmF0b3IqIEpTQXN5bmNHZW5lcmF0b3I6OmNyZWF0ZShWTSYg
dm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKaW5kZXggNGIw
MDI1YzU0NGM1OTkxZDQ4YTQ4NGFiY2RiZjQ5YjdiNTY4NGE5Mi4uMzQyYmFhYzA3MzE4OTY0NTY4
MzZhOTY3YTEzNGFiYTFiZjQ4NmRlNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICsz
Myw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVy
YXRvckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24iLCAgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvckZ1
bmN0aW9uOjpzX2luZm8gPSB7ICJKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbikgfTsKIAogSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uOjpKU0FzeW5jR2Vu
ZXJhdG9yRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpT
U2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIGV4ZWN1
dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0JpZ0ludC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0JpZ0ludC5jcHAKaW5kZXggMDNkOTQ0MGJhNWQwZTc4YmQzMTcxZGY3M2M2MjI5YzMyNWYxNDMy
ZC4uODlkN2JjZWVhOTU5NjU3NWUyZDk3MmUxYzZjYTQ4YTY4ZWJkZTlkYyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCaWdJbnQuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQmlnSW50LmNwcApAQCAtNjAsNyArNjAsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQmlnSW50OjpzX2luZm8gPSB7ICJC
aWdJbnQiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
QmlnSW50KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQmlnSW50OjpzX2luZm8gPSB7ICJCaWdJbnQi
X3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCaWdJ
bnQpIH07CiAKIEpTQmlnSW50OjpKU0JpZ0ludChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
LCBEaWdpdCogZGF0YSwgdW5zaWduZWQgbGVuZ3RoKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpAQCAtMjQ1OSw3ICsyNDU5LDcgQEAgSlNWYWx1ZSBKU0JpZ0ludDo6cGFyc2VJbnQoSlNHbG9i
YWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgVk0mIHZtLCBDaGEKICAgICAgICAg
QVNTRVJUKG51bGxPckdsb2JhbE9iamVjdEZvck9PTSk7CiAgICAgICAgIGlmIChlcnJvclBhcnNl
TW9kZSA9PSBFcnJvclBhcnNlTW9kZTo6VGhyb3dFeGNlcHRpb25zKSB7CiAgICAgICAgICAgICBh
dXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7Ci0gICAgICAgICAgICB0aHJvd1ZN
RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3Io
bnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJ
bnQiKSk7CisgICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09N
LCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCAiRmFp
bGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiX3MpKTsKICAgICAgICAgfQogICAgICAgICBy
ZXR1cm4gSlNWYWx1ZSgpOwogICAgIH0KQEAgLTI1NzYsNyArMjU3Niw3IEBAIEpTVmFsdWUgSlNC
aWdJbnQ6OnBhcnNlSW50KEpTR2xvYmFsT2JqZWN0KiBudWxsT3JHbG9iYWxPYmplY3RGb3JPT00s
IFZNJiB2bSwgQ2hhCiAgICAgICAgICAgICAgICAgaWYgKGVycm9yUGFyc2VNb2RlID09IEVycm9y
UGFyc2VNb2RlOjpUaHJvd0V4Y2VwdGlvbnMpIHsKICAgICAgICAgICAgICAgICAgICAgYXV0byBz
Y29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogICAgICAgICAgICAgICAgICAgICBBU1NF
UlQobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NKTsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dW
TUVycm9yKG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgc2NvcGUsIGNyZWF0ZVN5bnRheEVycm9y
KG51bGxPckdsb2JhbE9iamVjdEZvck9PTSwgIkZhaWxlZCB0byBwYXJzZSBTdHJpbmcgdG8gQmln
SW50IikpOworICAgICAgICAgICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xvYmFsT2Jq
ZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9y
T09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiX3MpKTsKICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWUoKTsKICAgICAgICAgICAgIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3Bw
CmluZGV4IGM3YTE2Nzk1NTNlMDgxMzI1NDUwNjRhNTI1ZTkxYTA0YjA3ZDRiYzguLjFlZTgxMWUw
ZDVmOWVkMzdhM2Q2OTBmZWFmYThlMzM4MmFmYWJiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTQm91bmRGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0Jv
dW5kRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQm91bmRGdW5jdGlvbikgfTsKIAog
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGJvdW5kVGhpc05vQXJnc0Z1bmN0aW9uQ2FsbCwgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcAppbmRleCBkNTQ3MmU2MDYw
NjczZGI5NDg0ZmJlYzVkYjY2OGMyMjIwYmM2YjFiLi4zZDIxM2FlYmM0Y2ViMDUyZWM4MTE4ZWIx
YTQzYmFmYTNlN2Q3YmEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0NhbGxlZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxs
ZWUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gSlNDYWxsZWU6OnNfaW5mbyA9IHsgIkNhbGxlZSIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsZWUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNDYWxsZWU6OnNfaW5mbyA9IHsgIkNhbGxlZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKIAogSlNDYWxs
ZWU6OkpTQ2FsbGVlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcAppbmRleCA2Mzk0Mjg2N2ExMzBmZTZjNWZlMDE4ZTc0
NGYxNGQ2MTE5ZGI0YzJhLi4xNjU1NDQ4Yzg5YmI5ZTNkODIyY2VhMWY0MTZiNWQ2YThiOGE3OTdl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKQEAgLTQ4LDcgKzQ4
LDcgQEAgdm9pZCBKU0NlbGw6OmR1bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3QKIAogdm9pZCBK
U0NlbGw6OmR1bXBUb1N0cmVhbShjb25zdCBKU0NlbGwqIGNlbGwsIFByaW50U3RyZWFtJiBvdXQp
CiB7Ci0gICAgb3V0LnByaW50ZigiPCVwLCAlcz4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUoY2Vs
bC0+dm0oKSkpOworICAgIG91dC5wcmludGYoIjwlcCwgJXM+IiwgY2VsbCwgY2VsbC0+Y2xhc3NO
YW1lKGNlbGwtPnZtKCkpLmNoYXJhY3RlcnMoKSk7CiB9CiAKIHNpemVfdCBKU0NlbGw6OmVzdGlt
YXRlZFNpemVJbkJ5dGVzKFZNJiB2bSkgY29uc3QKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lkIEpT
Q2VsbDo6Z2V0T3duU3BlY2lhbFByb3BlcnR5TmFtZXMoSlNPYmplY3QqLCBKU0dsb2JhbE9iamVj
dCosIFByb3BlcnR5TmFtZQogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAK
LWNvbnN0IGNoYXIqIEpTQ2VsbDo6Y2xhc3NOYW1lKFZNJiB2bSkgY29uc3QKK0FTQ0lJTGl0ZXJh
bCBKU0NlbGw6OmNsYXNzTmFtZShWTSYgdm0pIGNvbnN0CiB7CiAgICAgcmV0dXJuIGNsYXNzSW5m
byh2bSktPmNsYXNzTmFtZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQ2VsbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgK
aW5kZXggN2M4ODgzNDM5MmIwMTY0M2ExYzU4NzgwZGRlZDk1ZjZjNDI1YjNmYi4uZGYwNjk3Nzcx
YWRjZjY1YjNlZjFiN2RjZjQxZDE5ODIzNjNjZDM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNDZWxsLmgKQEAgLTEzOSw3ICsxMzksNyBAQCBwdWJsaWM6CiAKICAgICBUeXBlSW5m
bzo6SW5saW5lVHlwZUZsYWdzIGlubGluZVR5cGVGbGFncygpIGNvbnN0IHsgcmV0dXJuIG1fZmxh
Z3M7IH0KICAgICAKLSAgICBjb25zdCBjaGFyKiBjbGFzc05hbWUoVk0mKSBjb25zdDsKKyAgICBB
U0NJSUxpdGVyYWwgY2xhc3NOYW1lKFZNJikgY29uc3Q7CiAKICAgICAvLyBFeHRyYWN0aW5nIHRo
ZSB2YWx1ZS4KICAgICBKU19FWFBPUlRfUFJJVkFURSBib29sIGdldFN0cmluZyhKU0dsb2JhbE9i
amVjdCosIFN0cmluZyYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNDdXN0b21HZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0N1c3RvbUdldHRlckZ1bmN0aW9uLmNwcAppbmRleCA4YjhhNDFmNGM4YmZl
MDg0NTlhZWEyYWNlZDcwMjhlYWJhMGE2NWJhLi5mZmU2YmZkMzUyNzY0MjYxNmZkOTFmNzYzNzdk
Njg2YTBiMDY0ODMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0N1c3RvbUdldHRlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0N1c3RvbUdldHRlckZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0N1c3RvbUdldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9t
R2V0dGVyRnVuY3Rpb24pIH07CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjdXN0
b21HZXR0ZXJGdW5jdGlvbkNhbGwpOwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY3VzdG9t
R2V0dGVyRnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZy
YW1lKiBjYWxsRnJhbWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0N1c3RvbVNldHRlckZ1bmN0aW9uLmNwcAppbmRleCAzOWUyNzAyOTkwYWExMTU1NzE5
YjY5ZDFiYWZjZDc4NDYwNDI3ZTdlLi44NjI4MTg1NzhmMDkxZWQ3NDc1YjA4MDExYWFmOGU4MDgz
NzAyNGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3Rv
bVNldHRlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0N1c3RvbVNldHRlckZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ3VzdG9tU2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0N1c3RvbVNldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
Q3VzdG9tU2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9tU2V0dGVy
RnVuY3Rpb24pIH07CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjdXN0b21TZXR0
ZXJGdW5jdGlvbkNhbGwpOwogCiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY3VzdG9tU2V0dGVy
RnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBj
YWxsRnJhbWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNE
YXRhVmlldy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNw
cAppbmRleCBhYmE2ODhkZTQ4NzFmODRjNjI1MWI3OGYwYjgzY2Q2Mjg2NjcxZDIzLi45YTQzNWNj
OWNiMmUxYWIzMDE5NDM1YWQ2ZGQwMzI4ZDM0Y2RhYjA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcApAQCAtMzEsOCArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXc6OnNfaW5mbyA9IHsKLSAgICAi
RGF0YVZpZXciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRGF0YVZpZXcpfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3OjpzX2luZm8g
PSB7ICJEYXRhVmlldyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0RhdGFWaWV3KSB9OwogCiBKU0RhdGFWaWV3OjpKU0RhdGFWaWV3KFZN
JiB2bSwgQ29uc3RydWN0aW9uQ29udGV4dCYgY29udGV4dCwgQXJyYXlCdWZmZXIqIGJ1ZmZlcikK
ICAgICA6IEJhc2Uodm0sIGNvbnRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0RhdGFWaWV3UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCmluZGV4IGU5OGM3OGFiYWJmOTgzMWNm
ZjA2NWMxYmU5MDJiZmFjODBhMDZkMmEuLjM4Y2NmYWU2MzUwMGJkMDNiZjRkMmVmZGFkZmUxZDVi
NjZhNGNmMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0
YVZpZXdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
RGF0YVZpZXdQcm90b3R5cGUuY3BwCkBAIC05NCw3ICs5NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlT2Zmc2V0KTsKIG5hbWVzcGFj
ZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSlNEYXRhVmlld1Byb3RvdHlwZTo6c19pbmZvID0g
ewotICAgICJEYXRhVmlldyIsICZCYXNlOjpzX2luZm8sICZkYXRhVmlld1RhYmxlLCBudWxscHRy
LAorICAgICJEYXRhVmlldyJfcywgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51bGxw
dHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFWaWV3UHJvdG90eXBlKQogfTsKIApA
QCAtMjMwLDcgKzIzMCw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihkYXRhVmlld1Byb3Rv
R2V0dGVyQnVmZmVyLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjCiAKICAgICBKU0RhdGFW
aWV3KiB2aWV3ID0ganNEeW5hbWljQ2FzdDxKU0RhdGFWaWV3Kj4odm0sIEpTVmFsdWU6OmRlY29k
ZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoIXZpZXcpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnVmZmVyIGV4
cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Iik7CisgICAgICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUu
YnVmZmVyIGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Il9zKTsKIAogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKHZpZXctPnBvc3NpYmx5
U2hhcmVkSlNCdWZmZXIoZ2xvYmFsT2JqZWN0KSkpOwogfQpAQCAtMjQyLDcgKzI0Miw3IEBAIEpT
Q19ERUZJTkVfQ1VTVE9NX0dFVFRFUihkYXRhVmlld1Byb3RvR2V0dGVyQnl0ZUxlbmd0aCwgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPCiAKICAgICBKU0RhdGFWaWV3KiB2aWV3ID0ganNEeW5hbWlj
Q2FzdDxKU0RhdGFWaWV3Kj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBp
ZiAoIXZpZXcpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZUxlbmd0aCBleHBlY3RzIHx0aGlzfCB0byBi
ZSBhIERhdGFWaWV3IG9iamVjdCIpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0YVZpZXcucHJvdG90eXBlLmJ5dGVMZW5ndGggZXhwZWN0
cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmlldyBvYmplY3QiX3MpOwogICAgIGlmICh2aWV3LT5pc0Rl
dGFjaGVkKCkpCiAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJVbmRlcmx5aW5nIEFycmF5QnVmZmVyIGhhcyBiZWVuIGRldGFjaGVkIGZyb20gdGhl
IHZpZXciX3MpOwogCkBAIC0yNTYsNyArMjU2LDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVS
KGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRlT2Zmc2V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE8K
IAogICAgIEpTRGF0YVZpZXcqIHZpZXcgPSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwg
SlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1ZSkpOwogICAgIGlmICghdmlldykKLSAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3Rv
dHlwZS5ieXRlT2Zmc2V0IGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Iik7
CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJE
YXRhVmlldy5wcm90b3R5cGUuYnl0ZU9mZnNldCBleHBlY3RzIHx0aGlzfCB0byBiZSBhIERhdGFW
aWV3IG9iamVjdCJfcyk7CiAgICAgaWYgKHZpZXctPmlzRGV0YWNoZWQoKSkKICAgICAgICAgcmV0
dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIlVuZGVybHlpbmcgQXJy
YXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNoZWQgZnJvbSB0aGUgdmlldyJfcyk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRmluYWxpemF0aW9uUmVnaXN0cnku
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3Ry
eS5jcHAKaW5kZXggZGY3ODg5MmJhMTI5Y2Q1YjVmMGVhZGViMmZiMTVkY2U5NTE5MDRhNi4uNGE4
Y2Q0OWI3NjhkYWIxMTQyYWMxNzBiY2Y5OTc5NDRmY2RmOTA4ZCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAK
QEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0ZpbmFsaXphdGlvblJlZ2lzdHJ5OjpzX2luZm8gPSB7ICJGaW5hbGl6YXRpb25SZWdpc3RyeSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNG
aW5hbGl6YXRpb25SZWdpc3RyeSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ZpbmFsaXphdGlvblJl
Z2lzdHJ5OjpzX2luZm8gPSB7ICJGaW5hbGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsaXphdGlvblJl
Z2lzdHJ5KSB9OwogCiBTdHJ1Y3R1cmUqIEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OmNyZWF0ZVN0
cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJv
dG90eXBlKQogewpAQCAtMTY5LDcgKzE2OSw3IEBAIHZvaWQgSlNGaW5hbGl6YXRpb25SZWdpc3Ry
eTo6cnVuRmluYWxpemF0aW9uQ2xlYW51cChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAg
ICAgd2hpbGUgKEpTVmFsdWUgdmFsdWUgPSB0YWtlRGVhZEhvbGRpbmdzVmFsdWUoKSkgewogICAg
ICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwogICAgICAgICBhcmdzLmFwcGVuZCh2YWx1
ZSk7Ci0gICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaygpLCBhcmdzLCAiVGhpcyBz
aG91bGQgbm90IGJlIHZpc2libGU6IHBsZWFzZSByZXBvcnQgYSBidWcgdG8gYnVncy53ZWJraXQu
b3JnIik7CisgICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaygpLCBhcmdzLCAiVGhp
cyBzaG91bGQgbm90IGJlIHZpc2libGU6IHBsZWFzZSByZXBvcnQgYSBidWcgdG8gYnVncy53ZWJr
aXQub3JnIl9zKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsK
ICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1
bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3Bw
CmluZGV4IGQ5MzdiMzZiMzA0NTc0NDBjZWE4YmVhNTE4ZDE5ODE5YTY0YTlkNWMuLmEzNzZhZjVl
ZWEwZGU2YjUxNzBjNGZiNDQ3MzczMGQyNTgzMzFjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCkBAIC01MywxMCArNTMsMTAgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGNhbGxIb3N0RnVuY3Rpb25Bc0NvbnN0cnVjdG9yLCAoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE8KICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsIGNyZWF0ZU5vdEFDb25zdHJ1Y3RvckVycm9yKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5q
c0NhbGxlZSgpKSk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNGdW5jdGlvbikgfTsKLWNvbnN0IENsYXNzSW5mbyBKU1N0cmljdEZ1bmN0aW9u
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNTdHJpY3RGdW5jdGlvbikgfTsKLWNvbnN0IENsYXNzSW5m
byBKU1Nsb3BweUZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTbG9wcHlGdW5jdGlvbikg
fTsKLWNvbnN0IENsYXNzSW5mbyBKU0Fycm93RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0Fycm93RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNGdW5jdGlvbjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1N0cmljdEZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N0cmljdEZ1bmN0aW9uKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTU2xvcHB5RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2xvcHB5RnVu
Y3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJvd0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0Fycm93RnVuY3Rpb24pIH07CiAKIGJvb2wgSlNGdW5jdGlvbjo6aXNIb3N0RnVu
Y3Rpb25Ob25JbmxpbmUoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNHZW5lcmF0b3IuY3BwCmluZGV4IDE1NjJhYzI2MmJkODAxMTA2MTRkZTQ5ZGIzOWRlNmI4
MThkZDhmY2EuLjI0ZmJkZjYzYTY0MzM3MDNmMDVhZTFhZGRmYzQwNDRkMGNjZDk1ZTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvci5jcHAKQEAgLTMxLDcg
KzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0dlbmVyYXRv
cjo6c19pbmZvID0geyAiR2VuZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0dlbmVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U0dlbmVyYXRvcjo6c19pbmZvID0geyAiR2VuZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yKSB9OwogCiBKU0dl
bmVyYXRvciogSlNHZW5lcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0
b3JGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRv
ckZ1bmN0aW9uLmNwcAppbmRleCAwNmFlMDUxOGFiMTkwYTQzYTEzOTZlODBjOTNkZDE2ZDAwZWEy
NmI4Li5hNjk1NDYzNmFiZTRhMTg1OWRlZjNjY2ZhMjk5NzE1YWEyZDY3OTBlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNw
cApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTR2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0dlbmVy
YXRvckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2VuZXJhdG9yRnVuY3Rpb24pIH07CiAKIEpT
R2VuZXJhdG9yRnVuY3Rpb246OkpTR2VuZXJhdG9yRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4
ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSkKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmll
d0lubGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVk
QXJyYXlWaWV3SW5saW5lcy5oCmluZGV4IGQzMmEyYjBjMGMwM2IzYzI5YmI4ZTVmZTk0YzNjMDdl
ZmJkOGI1NzAuLjE0YTZjZjM5YWRiNTk0MmFhOTAxZmQ1Y2FlMGYzYzVjYzI0YjlhZTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlW
aWV3SW5saW5lcy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJp
Y1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oCkBAIC0xMDYsMTEgKzEwNiwxMSBAQCBKU0dlbmVyaWNU
eXBlZEFycmF5VmlldzxBZGFwdG9yPiogSlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46
OmNyZWF0ZSgKICAgICBzaXplX3QgZWxlbWVudFNpemUgPSBzaXplb2YodHlwZW5hbWUgQWRhcHRv
cjo6VHlwZSk7CiAgICAgQVNTRVJUKGJ1ZmZlcik7CiAgICAgaWYgKCFBcnJheUJ1ZmZlclZpZXc6
OnZlcmlmeVN1YlJhbmdlTGVuZ3RoKCpidWZmZXIsIGJ5dGVPZmZzZXQsIGxlbmd0aCwgZWxlbWVu
dFNpemUpKSB7Ci0gICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNy
ZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTGVuZ3RoIG91dCBvZiByYW5nZSBvZiBidWZm
ZXIiKSk7CisgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0
ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiTGVuZ3RoIG91dCBvZiByYW5nZSBvZiBidWZmZXIi
X3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogICAgIGlmICghQXJyYXlCdWZm
ZXJWaWV3Ojp2ZXJpZnlCeXRlT2Zmc2V0QWxpZ25tZW50KGJ5dGVPZmZzZXQsIGVsZW1lbnRTaXpl
KSkgewotICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVS
YW5nZUVycm9yKGdsb2JhbE9iamVjdCwgIkJ5dGUgb2Zmc2V0IGlzIG5vdCBhbGlnbmVkIikpOwor
ICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVSYW5nZUVy
cm9yKGdsb2JhbE9iamVjdCwgIkJ5dGUgb2Zmc2V0IGlzIG5vdCBhbGlnbmVkIl9zKSk7CiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogICAgIH0KICAgICBDb25zdHJ1Y3Rpb25Db250ZXh0IGNvbnRl
eHQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShidWZmZXIpLCBieXRlT2Zmc2V0LCBsZW5ndGgpOwpA
QCAtMTUyLDcgKzE1Miw3IEBAIGJvb2wgSlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46
OnZhbGlkYXRlUmFuZ2UoCiAgICAgaWYgKGNhbkFjY2Vzc1JhbmdlUXVpY2tseShvZmZzZXQsIGxl
bmd0aCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIAotICAgIHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmFuZ2Ug
Y29uc2lzdGluZyBvZiBvZmZzZXQgYW5kIGxlbmd0aCBhcmUgb3V0IG9mIGJvdW5kcyIpKTsKKyAg
ICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVSYW5nZUVycm9yKGds
b2JhbE9iamVjdCwgIlJhbmdlIGNvbnNpc3Rpbmcgb2Ygb2Zmc2V0IGFuZCBsZW5ndGggYXJlIG91
dCBvZiBib3VuZHMiX3MpKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlRnVuY3Rpb25zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNU
eXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1bmN0aW9ucy5oCmluZGV4IGRmMDQzNWY2ZTM3OTgwNjFk
OWY2Y2NjNmQ3NTlkZmU2NmJkNmQ5ZmEuLmI5NGViM2ZiMjI2YzUwMDA1Y2M4MWI1OTlkNjY1NWZk
ZjhiZDg5ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2Vu
ZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlv
bnMuaApAQCAtNjYsNyArNjYsNyBAQCBpbmxpbmUgSlNBcnJheUJ1ZmZlclZpZXcqIHNwZWNpZXND
b25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplYwogICAgICAgICBS
RUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIGRlZmF1bHRDb25zdHJ1Y3RvcigpKTsKIAogCi0gICAg
SlNWYWx1ZSByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAi
c3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciIpOworICAgIEpTVmFsdWUgcmVzdWx0ID0gY29u
c3RydWN0KGdsb2JhbE9iamVjdCwgc3BlY2llcywgYXJncywgInNwZWNpZXMgaXMgbm90IGEgY29u
c3RydWN0b3IiX3MpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwog
CiAgICAgaWYgKEpTQXJyYXlCdWZmZXJWaWV3KiB2aWV3ID0ganNEeW5hbWljQ2FzdDxKU0FycmF5
QnVmZmVyVmlldyo+KHZtLCByZXN1bHQpKSB7CkBAIC0xMTUsNyArMTE1LDcgQEAgQUxXQVlTX0lO
TElORSBFbmNvZGVkSlNWYWx1ZSBnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQoVk0m
IHZtLCBKU0dsb2JhbE8KICAgICAgICAgZG91YmxlIG9mZnNldE51bWJlciA9IGNhbGxGcmFtZS0+
dW5jaGVja2VkQXJndW1lbnQoMSkudG9JbnRlZ2VyT3JJbmZpbml0eShnbG9iYWxPYmplY3QpOwog
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAg
ICAgICAgaWYgKFVOTElLRUxZKG9mZnNldE51bWJlciA8IDApKQotICAgICAgICAgICAgcmV0dXJu
IHRocm93Vk1SYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJPZmZzZXQgc2hvdWxkIG5v
dCBiZSBuZWdhdGl2ZSIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1SYW5nZUVycm9yKGds
b2JhbE9iamVjdCwgc2NvcGUsICJPZmZzZXQgc2hvdWxkIG5vdCBiZSBuZWdhdGl2ZSJfcyk7CiAg
ICAgICAgIGlmIChvZmZzZXROdW1iZXIgPD0gbWF4U2FmZUludGVnZXIoKSAmJiBvZmZzZXROdW1i
ZXIgPD0gc3RhdGljX2Nhc3Q8ZG91YmxlPihzdGQ6Om51bWVyaWNfbGltaXRzPHNpemVfdD46Om1h
eCgpKSkKICAgICAgICAgICAgIG9mZnNldCA9IG9mZnNldE51bWJlcjsKICAgICAgICAgZWxzZQpA
QCAtNjI1LDcgKzYyNSw3IEBAIEFMV0FZU19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5
cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNTdWJhcnJheUNyZWF0ZShWTSYKICAgICBhcmdzLmFwcGVu
ZChqc051bWJlcihsZW5ndGgpKTsKICAgICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZsb3dlZCgpKTsK
IAotICAgIEpTT2JqZWN0KiByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVz
LCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiBy
ZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBp
cyBub3QgYSBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
eyB9KTsKIAogICAgIEpTQXJyYXlCdWZmZXJWaWV3KiB2YWxpZGF0ZWQgPSB2YWxpZGF0ZVR5cGVk
QXJyYXkoZ2xvYmFsT2JqZWN0LCByZXN1bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCmluZGV4
IDlhODFjOTY5M2EwZmNkNWUzMjg5YzkxZjA2MzRiYTE3NmIzZTQ1ZDguLjY1YTI5ZjlkZGNiY2Q1
NWE0MDI3ZGQ0NTJhZmUxMzZkNmNlNmQ0OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50LmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAKQEAg
LTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ds
b2JhbExleGljYWxFbnZpcm9ubWVudDo6c19pbmZvID0geyAiSlNHbG9iYWxMZXhpY2FsRW52aXJv
bm1lbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xv
YmFsTGV4aWNhbEVudmlyb25tZW50OjpzX2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxFbnZpcm9u
bWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudCkgfTsKIAogdm9pZCBKU0dsb2JhbExleGlj
YWxFbnZpcm9ubWVudDo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKaW5kZXggZmE2MjNlMDkwNzRj
MzhmYmUzMjM0MTY3ZGNkNTkyMDJmOGYxNTFiNi4uMDEyZjE5MWNkOWFhZWY3Mjg4M2IwNTJiNTRi
MGIzNDc4M2U4Yzk3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
R2xvYmFsT2JqZWN0LmNwcApAQCAtNTE5LDcgKzUxOSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTihkaXNhYmxlU3VwZXJTYW1wbGVyLCAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqKSkK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0dsb2JhbE9iamVjdDo6c19p
bmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgJmdsb2JhbE9iamVjdFRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsT2JqZWN0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiX3MsICZC
YXNlOjpzX2luZm8sICZnbG9iYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0dsb2JhbE9iamVjdCkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUg
SlNHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBv
cnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZseS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZseS5jcHAKaW5kZXggZDU3YzZlNzg4MDFkOTdlNzk0YmM4
MmI4MzdlYTU2M2EwNzNlM2E1Ny4uNTFjMTc3ZGY5Zjk4ZWYyZTFkYTdmOTA2MzA4NjVhYTYyMGQ2
ZGJlYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbW11dGFi
bGVCdXR0ZXJmbHkuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1t
dXRhYmxlQnV0dGVyZmx5LmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTSW1tdXRhYmxlQnV0dGVyZmx5OjpzX2luZm8gPSB7ICJJbW11
dGFibGUgQnV0dGVyZmx5IiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0ltbXV0YWJsZUJ1dHRlcmZseSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ltbXV0
YWJsZUJ1dHRlcmZseTo6c19pbmZvID0geyAiSW1tdXRhYmxlIEJ1dHRlcmZseSJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ltbXV0YWJsZUJ1dHRl
cmZseSkgfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNJbW11dGFibGVC
dXR0ZXJmbHk6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRv
cikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQ
cm9taXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9t
aXNlLmNwcAppbmRleCBmZjFkOGQwZTlkZWIwYWQxZDc2Yzg1YzMyZDE2OWEwZDk2MDZiOWViLi40
ZTBlMWIzYzU2MDcxMmMwNWVjMDc4NDE3OTQ2NzI1MmIxZjhhZTcxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwCkBAIC0zMSw3
ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5h
bFByb21pc2U6OnNfaW5mbyA9IHsgIkludGVybmFsUHJvbWlzZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRlcm5hbFByb21pc2UpIH07
Citjb25zdCBDbGFzc0luZm8gSlNJbnRlcm5hbFByb21pc2U6OnNfaW5mbyA9IHsgIkludGVybmFs
UHJvbWlzZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0ludGVybmFsUHJvbWlzZSkgfTsKIAogSlNJbnRlcm5hbFByb21pc2UqIEpTSW50
ZXJuYWxQcm9taXNlOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNl
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5h
bFByb21pc2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzI2ZjBlN2NhOTliNDUyMTRmNGFjNzMyZDM4
ODE4ZDM5NDFkYWQ4Ny4uNTliNTU5ZTk4NTExOWViMzUxNzEyYzA4NTIxMzViMDEyYTIzZDJkNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21p
c2VDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJ
bnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0ludGVy
bmFsUHJvbWlzZUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9t
aXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmlu
dGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0lu
dGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3RvcikgfTsKIAogLyogU291
cmNlIGZvciBKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gaW50ZXJu
YWxQcm9taXNlQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VQcm90b3R5cGUuY3BwCmluZGV4IGE2
OWQyNzBkNDhhYzA1NGJjMGM5NDhiZmY4MTY1MmU1YzAzZGYzMmYuLmUxNzFjMzJmNDE4Nzc5NTgw
NzM5MDc2YWQ1ZGRmY2FjODZkMjI1MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKQEAgLTMy
LDcgKzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNl
UHJvdG90eXBlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlKSB9OwogCiBKU0ludGVybmFsUHJv
bWlzZVByb3RvdHlwZSogSlNJbnRlcm5hbFByb21pc2VQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJv
bm1lbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJv
bm1lbnQuY3BwCmluZGV4IGMxNTFmNGQ5Y2FiZDk1NzBkODYxNDI0ZDAwZDI5YmIyMTY1ZmExOTMu
LjkxMjU5ODlmZjM5ZThlMGVmMzgzMTU4ZDYyNmE4YTgxNThjZDJmZDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTGV4aWNhbEVudmlyb25tZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAK
QEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0xleGljYWxFbnZpcm9ubWVudDo6c19pbmZvID0geyAiSlNMZXhpY2FsRW52aXJvbm1lbnQiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4
aWNhbEVudmlyb25tZW50KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTGV4aWNhbEVudmlyb25tZW50
OjpzX2luZm8gPSB7ICJKU0xleGljYWxFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0xleGljYWxFbnZpcm9ubWVudCkg
fTsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNMZXhpY2FsRW52aXJvbm1l
bnQ6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcAppbmRleCAxOWRiNTE2MTlkMDk3ZTUw
N2JkNzk2ZmMxMDc3MDdlMjIwMGI3MDIzLi42NjcwMTVkMmIxNjJkZDg1YzZiYTE1NWVmNDk2MGI0
YTdhZGQxOGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01h
cC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwCkBAIC0z
MCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNNYXA6
OnNfaW5mbyA9IHsgIk1hcCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNNYXApIH07Citjb25zdCBDbGFzc0luZm8gSlNNYXA6OnNfaW5mbyA9
IHsgIk1hcCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU01hcCkgfTsKIAogSlNNYXAqIEpTTWFwOjpjbG9uZShKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXBJdGVyYXRvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcAppbmRleCA1NTFlYzM1
NjJjNGQ0M2EzODU5ODhkODNlODg2NGFhYTk0NjQyMjEzLi41NzMxMTNiN2QxOTAyOGJhMTg2ZGM1
MWJjYTdiZjFmZmZkZWRjZDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU01hcEl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU01hcEl0ZXJhdG9yLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1hcCBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNNYXBJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcEl0ZXJhdG9yOjpzX2luZm8g
PSB7ICJNYXAgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNNYXBJdGVyYXRvcikgfTsKIAogSlNNYXBJdGVyYXRvciogSlNN
YXBJdGVyYXRvcjo6Y3JlYXRlV2l0aEluaXRpYWxWYWx1ZXMoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
TW9kdWxlRW52aXJvbm1lbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNN
b2R1bGVFbnZpcm9ubWVudC5jcHAKaW5kZXggODVkMGMyZTAzMGMwYTk0N2M5YTc1MzQ1ZWNjZDc2
MzQwYzY4MmNlNC4uNGI0YTIwNjcyNjg4ZTk0NGM5MDlmYzZkOGU1MmIyNmU3OTRlMTdjZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVu
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9u
bWVudC5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBKU01vZHVsZUVudmlyb25tZW50OjpzX2luZm8gPSB7ICJKU01vZHVsZUVudmlyb25t
ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU01vZHVsZUVudmlyb25tZW50KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlRW52aXJv
bm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9kdWxlRW52aXJvbm1lbnQiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVFbnZpcm9ubWVu
dCkgfTsKIAogSlNNb2R1bGVFbnZpcm9ubWVudCogSlNNb2R1bGVFbnZpcm9ubWVudDo6Y3JlYXRl
KAogICAgIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29w
ZSwgU3ltYm9sVGFibGUqIHN5bWJvbFRhYmxlLCBKU1ZhbHVlIGluaXRpYWxWYWx1ZSwgQWJzdHJh
Y3RNb2R1bGVSZWNvcmQqIG1vZHVsZVJlY29yZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVyLmNwcAppbmRleCBiOGI5MjEyOGQxZGJkYTliNmExMGI1
N2NkMThlNDM3MDQ5NThlMTg3Li5lZWQ0NjM1MDEzMTZlM2EzZDQwNGYxZDY2ZGQ4ZjU2MTFhYWYz
NWU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUxv
YWRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVMb2Fk
ZXIuY3BwCkBAIC02Miw3ICs2Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNNb2R1bGVMb2FkZXIpOwogCi1jb25zdCBDbGFz
c0luZm8gSlNNb2R1bGVMb2FkZXI6OnNfaW5mbyA9IHsgIk1vZHVsZUxvYWRlciIsICZCYXNlOjpz
X2luZm8sICZtb2R1bGVMb2FkZXJUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U01vZHVsZUxvYWRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01vZHVsZUxvYWRlcjo6c19pbmZv
ID0geyAiTW9kdWxlTG9hZGVyIl9zLCAmQmFzZTo6c19pbmZvLCAmbW9kdWxlTG9hZGVyVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVMb2FkZXIpIH07CiAKIC8qIFNv
dXJjZSBmb3IgSlNNb2R1bGVMb2FkZXIubHV0LmgKIEBiZWdpbiBtb2R1bGVMb2FkZXJUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3Bh
Y2VPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1l
c3BhY2VPYmplY3QuY3BwCmluZGV4IDk2YTBmN2RhNDNkM2NlODMxMWZlYzk2ZDk2MzgzOWFhYzk4
NmU5MTQuLjIxODEwNGYyOTI5Y2Q3M2RmZmM5Y2E5ZWE5ZDI1YzU5MDBhZDZkN2YgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFj
ZU9iamVjdC5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU01vZHVsZU5hbWVzcGFjZU9iamVjdDo6c19pbmZvID0geyAiTW9kdWxlTmFt
ZXNwYWNlT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU01vZHVsZU5hbWVzcGFjZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U01vZHVsZU5hbWVzcGFjZU9iamVjdDo6c19pbmZvID0geyAiTW9kdWxlTmFtZXNwYWNlT2JqZWN0
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0KSB9OwogCiBKU01vZHVsZU5hbWVzcGFjZU9iamVjdDo6
SlNNb2R1bGVOYW1lc3BhY2VPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTW9kdWxlUmVjb3JkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTTW9kdWxlUmVjb3JkLmNwcAppbmRleCBjYmU2OTU4NTNkMmYxZWZhNjg5ZTFmZDdiN2Jj
N2NmOWJjNGE2YWI1Li5hYjdiZWNkOWM2N2EwOGMyZmUyNThmN2RiOTEwNTRmMmJhZDc5ZDExIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29yZC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3Bw
CkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
SlNNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIk1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVSZWNvcmQpIH07
Citjb25zdCBDbGFzc0luZm8gSlNNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIk1vZHVsZVJlY29y
ZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU01vZHVsZVJlY29yZCkgfTsKIAogCiBTdHJ1Y3R1cmUqIEpTTW9kdWxlUmVjb3JkOjpjcmVh
dGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHByb3RvdHlwZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
TmF0aXZlU3RkRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNO
YXRpdmVTdGRGdW5jdGlvbi5jcHAKaW5kZXggODA2NDM5ZmRmMjU4N2IxNjhlYTY3NDgwMzc4NTA2
MjMzNGViMTk5NS4uMTBjZjZmOTk2NDVkYzM5N2EyYjZjM2VlOGFjZWIzOTI0NjlhODExZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlv
bi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5j
dGlvbi5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBKU05hdGl2ZVN0ZEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNOYXRpdmVT
dGRGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU05hdGl2ZVN0ZEZ1bmN0aW9uOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU05hdGl2ZVN0ZEZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihydW5TdGRGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT05PYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAKaW5kZXggNmI3YzU4ODFhZDliZmZkY2E1YTI0
OWE0MzcxMDI1YTJjZjQ3ZjgwYi4uYmY5MDZhMjdmODM1OTcwYzg1NTk5MGQwNTJiM2RlM2M2OThh
YWFkNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVj
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAK
QEAgLTYyOCw3ICs2MjgsNyBAQCBib29sIFN0cmluZ2lmaWVyOjpIb2xkZXI6OmFwcGVuZE5leHRQ
cm9wZXJ0eShTdHJpbmdpZmllciYgc3RyaW5naWZpZXIsIFN0cmluZ0J1aQogCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSlNPTk9iamVjdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCi1jb25zdCBDbGFzc0luZm8gSlNPTk9iamVjdDo6c19pbmZvID0geyAiSlNP
TiIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZqc29uVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNPTk9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0
OjpzX2luZm8gPSB7ICJKU09OIl9zLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAmanNvblRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTT05PYmplY3QpIH07CiAKIC8qIFNv
dXJjZSBmb3IgSlNPTk9iamVjdC5sdXQuaAogQGJlZ2luIGpzb25UYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCmluZGV4IDAzOWM0NjUwNTMxMWZjYTcxYjQy
OTVmMWJhNjkzYjMwMjEwM2E5NDUuLjVjMTExNjQxY2U0YmU0YThjZjBiODA0NTlmZTUyNzEzZjYx
ZGNkY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAKQEAg
LTY1LDkgKzY1LDkgQEAgY29uc3QgQVNDSUlMaXRlcmFsIFVuY29uZmlndXJhYmxlUHJvcGVydHlD
aGFuZ2VDb25maWd1cmFiaWxpdHlFcnJvciB7ICJBdHRlbXB0aW4KIGNvbnN0IEFTQ0lJTGl0ZXJh
bCBVbmNvbmZpZ3VyYWJsZVByb3BlcnR5Q2hhbmdlRW51bWVyYWJpbGl0eUVycm9yIHsgIkF0dGVt
cHRpbmcgdG8gY2hhbmdlIGVudW1lcmFibGUgYXR0cmlidXRlIG9mIHVuY29uZmlndXJhYmxlIHBy
b3BlcnR5LiJfcyB9OwogY29uc3QgQVNDSUlMaXRlcmFsIFVuY29uZmlndXJhYmxlUHJvcGVydHlD
aGFuZ2VXcml0YWJpbGl0eUVycm9yIHsgIkF0dGVtcHRpbmcgdG8gY2hhbmdlIHdyaXRhYmxlIGF0
dHJpYnV0ZSBvZiB1bmNvbmZpZ3VyYWJsZSBwcm9wZXJ0eS4iX3MgfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
T2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNPYmplY3QpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0Zp
bmFsT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gSlNGaW5hbE9iamVjdDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxPYmplY3QpIH07
CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpc2l0b3I+CiBBTFdBWVNfSU5MSU5FIHZvaWQgSlNPYmpl
Y3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMoVmlzaXRvciYgdmlz
aXRvciwgQnV0dGVyZmx5KiBidXR0ZXJmbHksIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQcm9wZXJ0
eU9mZnNldCBtYXhPZmZzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1Byb21pc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9t
aXNlLmNwcAppbmRleCAxYTFkN2MzZjNjOWEzZjc3YTJiNGFhYmI1NmU3ZDQ3NTZmNGFmNTkzLi41
YTJjNWZkYzRkNjcwYjVlY2FiN2UyYzQ4YTk3MDc3ZTk5NmU2NzY4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21pc2U6OnNfaW5mbyA9IHsgIlBy
b21pc2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTUHJvbWlzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2U6OnNfaW5mbyA9IHsg
IlByb21pc2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNQcm9taXNlKSB9OwogCiBKU1Byb21pc2UqIEpTUHJvbWlzZTo6Y3JlYXRlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggOGQzYjliODY2
M2I3MGFhNGFkYmY4YTVlMTA1ODIyODliNDVjZjNhZi4uNjE4YmRiZmEyM2I2OTgzODU3ODE1OWVm
Njg3NGE2N2U3NmIxMjhlYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNQcm9taXNlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZUNvbnN0cnVjdG9yLmNwcApAQCAtNDEsNyArNDEsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNQcm9taXNlQ29uc3RydWN0b3IpOwog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZwcm9taXNlQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VDb25zdHJ1Y3Rv
cikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VDb25zdHJ1Y3RvcikgfTsKIAogLyog
U291cmNlIGZvciBKU1Byb21pc2VDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHByb21pc2VDb25z
dHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1Byb21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQ
cm9taXNlUHJvdG90eXBlLmNwcAppbmRleCA5MTcyZmU1NzI0OTg4Y2IwYTcxOTE3NTA0ZTFlYmU5
NTFkYzYwZGU3Li42NjY2YzdkNTAxOWY1MWFlOGUwNDk0YzdlYWNiYjllOWQ5MTc2NGNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlw
ZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEpTUHJvbWlzZVByb3RvdHlwZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6
OnNfaW5mbywgJnByb21pc2VQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Byb21pc2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJQcm9taXNlIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvbWlzZVBy
b3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBKU1Byb21pc2VQcm90b3R5cGUubHV0LmgKIEBiZWdp
biBwcm9taXNlUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwCmluZGV4IDZlZTMyMGY3
ZTNkOTA5YjZjZDBlMzc5MzYxZGEwYWEwZTg3NTdjNDMuLjUyNTA5YmI2ZTQ3MjE0MzBhMmFiMTBj
ZDMzODZiZTQzMWFlYjYzNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJvcGVydHlOYW1lRW51bWVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yLmNwcApAQCAtMzAsNyArMzAsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJvcGVydHlOYW1lRW51
bWVyYXRvcjo6c19pbmZvID0geyAiSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yIiwgbnVsbHB0ciwg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1l
cmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpzX2lu
Zm8gPSB7ICJKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yKSB9Owog
CiBKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IqIEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcjo6Y3Jl
YXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIHVpbnQzMl90IGluZGV4ZWRMZW5ndGgs
IHVpbnQzMl90IG51bWJlclN0cnVjdHVyZVByb3BlcnRpZXMsIFByb3BlcnR5TmFtZUFycmF5JiYg
cHJvcGVydHlOYW1lcykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJveHkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5j
cHAKaW5kZXggZjQ1M2ZhYjljOGRhN2QyY2Q0MTYzYjU1MzMwODY1NThlN2ZlNjJjYS4uNDgxZDg1
NzkzZWMzOWIxYjQzNWQ5ZmJlZTJiYjZlOTQyYWRmNGUxZiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU1Byb3h5KTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUHJveHk6OnNfaW5mbyA9IHsgIkpTUHJveHkiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07Citj
b25zdCBDbGFzc0luZm8gSlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3h5KSB9Owog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU1Byb3h5Ojp2aXNpdENoaWxkcmVu
SW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1JlbW90ZUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwCmluZGV4IDU5MzlkOGYyZDUx
ZmEwYjNiZmI1NjI1ZjJiMWVmNTQ3YjI5ZGUxZjAuLmFmMDcxOGU5YWFjZGE3OTcyZmU3NTA0OGI4
ZjgwZjRkMTdmNjVjNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUmVtb3RlRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUmVtb3RlRnVuY3Rpb24uY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNSZW1vdGVGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rp
b24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTUmVtb3RlRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNSZW1vdGVGdW5jdGlvbjo6
c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVGdW5jdGlvbikgfTsKIAogSlNSZW1vdGVGdW5j
dGlvbjo6SlNSZW1vdGVGdW5jdGlvbihWTSYgdm0sIE5hdGl2ZUV4ZWN1dGFibGUqIGV4ZWN1dGFi
bGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U09iamVjdCogdGFyZ2V0RnVuY3Rpb24pCiAgICAgOiBCYXNlKHZtLCBleGVjdXRhYmxlLCBnbG9i
YWxPYmplY3QsIHN0cnVjdHVyZSkKQEAgLTY2LDcgKzY2LDcgQEAgc3RhdGljIGlubGluZSBKU1Zh
bHVlIHdyYXBBcmd1bWVudChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9i
amVjdCoKICAgICBKU1ZhbHVlIHJlc3VsdCA9IHdyYXBWYWx1ZShnbG9iYWxPYmplY3QsIHRhcmdl
dEdsb2JhbE9iamVjdCwgdmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsg
fSk7CiAgICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUg
b3IgcHJpbWl0aXZlIik7CisgICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJ2YWx1ZSBwYXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJp
bWl0aXZlIl9zKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIHJlc3VsdCk7CiB9CiAK
QEAgLTc3LDcgKzc3LDcgQEAgc3RhdGljIGlubGluZSBKU1ZhbHVlIHdyYXBSZXR1cm5WYWx1ZShK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamUKICAgICBKU1ZhbHVlIHJl
c3VsdCA9IHdyYXBWYWx1ZShnbG9iYWxPYmplY3QsIHRhcmdldEdsb2JhbE9iamVjdCwgdmFsdWUp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAgICAgaWYgKCFyZXN1bHQp
Ci0gICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNz
aW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIik7CisgICAg
ICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5nIGJl
dHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsKICAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIHJlc3VsdCk7CiB9CiAKQEAgLTIyOCw3ICsyMjgsNyBAQCB2
b2lkIEpTUmVtb3RlRnVuY3Rpb246OmZpbmlzaENyZWF0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIFZNJiB2bSkKICAgICBhdXRvKiBleGNlcHRpb24gPSBzY29wZS5leGNlcHRpb24o
KTsKICAgICBpZiAoVU5MSUtFTFkoZXhjZXB0aW9uICYmICF2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0
aW9uKGV4Y2VwdGlvbikpKSB7CiAgICAgICAgIHNjb3BlLmNsZWFyRXhjZXB0aW9uKCk7Ci0gICAg
ICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ3cmFwcGluZyByZXR1cm5l
ZCBmdW5jdGlvbiB0aHJvd3MgYW4gZXJyb3IiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIndyYXBwaW5nIHJldHVybmVkIGZ1bmN0aW9uIHRocm93cyBhbiBl
cnJvciJfcyk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Njb3BlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2Nv
cGUuY3BwCmluZGV4IDQ5NWRjNjNjNGZhYmFhNDUxNTZkNTMzZWM1N2E1NzI0NDUwODYzMDQuLjgz
NGNkMzM0MDE2YTIzN2E0N2Q2MjZkOWYxMTk4NzI3MWU1NTQxOTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTU2NvcGUuY3BwCkBAIC0zOSw3ICszOSw3IEBAIG5hbWVzcGFjZSBK
U0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNTY29wZSk7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Njb3BlOjpzX2luZm8gPSB7ICJTY29wZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY29wZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Njb3BlOjpzX2luZm8gPSB7ICJTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3BlKSB9Owog
CiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPgogdm9pZCBKU1Njb3BlOjp2aXNpdENoaWxkcmVu
SW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKaW5k
ZXggOWYyMTUxZmI5M2E5MzU5ZjU1ZGI2OWIxNTVlMTk1YTFmNTVjZTM1OS4uZmYwNmFmZThiMmIw
ZTcwYWJlZDU5NDFjMGIxNTFhMjgwYTc5ZmRhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcApAQCAtMzAs
NyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2NyaXB0
RmV0Y2hQYXJhbWV0ZXJzOjpzX2luZm8gPSB7ICJKU1NjcmlwdEZldGNoUGFyYW1ldGVycyIsIG51
bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRj
aFBhcmFtZXRlcnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6
OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzIl9zLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzKSB9
OwogCiB2b2lkIEpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0
Y2hlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoZXIu
Y3BwCmluZGV4IDI2YzljNzY2Y2YwMTUxZjZiM2FlNzAzZjgzMjczZDcxZjMwNGUzYjQuLmU0MzRh
ZGU4NDljMTZkYjRlZDE0YmY5Y2E1YjQyNTUyZDBlMWVhMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRGZXRjaGVyLmNwcApAQCAtMzAsNyArMzAsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2NyaXB0RmV0Y2hlcjo6
c19pbmZvID0geyAiSlNTY3JpcHRGZXRjaGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1NjcmlwdEZldGNoZXIpIH07Citjb25zdCBDbGFzc0luZm8g
SlNTY3JpcHRGZXRjaGVyOjpzX2luZm8gPSB7ICJKU1NjcmlwdEZldGNoZXIiX3MsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaGVyKSB9
OwogCiB2b2lkIEpTU2NyaXB0RmV0Y2hlcjo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NlZ21lbnRlZFZhcmlhYmxl
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFy
aWFibGVPYmplY3QuY3BwCmluZGV4IGViY2EyMWU4OTllZDk3Yzk3MTc5ZTBkMjQwMmRmMzcyMTUz
YWIxMTcuLmE3NDgzNjQ1NGQ3NTgzODU2YmRiNDM0ZTI1N2Q3MjYzNjMxM2YxMjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFy
aWFibGVPYmplY3QuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdDo6c19pbmZvID0geyAiU2Vn
bWVudGVkVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU2VnbWVudGVkVmFyaWFibGVPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdDo6c19pbmZvID0geyAiU2VnbWVudGVk
VmFyaWFibGVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCkgfTsKIAogU2NvcGVPZmZz
ZXQgSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdDo6ZmluZFZhcmlhYmxlSW5kZXgodm9pZCogdmFy
aWFibGVBZGRyZXNzKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNTZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCmlu
ZGV4IDk0NGUwZmEwOWVjNGFjYzJlOTM2NjQ2OTA1Y2ExODM5MzhjMGQ1M2YuLjlhZjNkOTQ5ZjE3
NjgxMzQ3ZjQyYjZjMDUyNWUxZTkzMjk2NTJhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1NldC5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1NldDo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NldCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1NldDo6c19pbmZvID0geyAiU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OwogCiBKU1NldCogSlNTZXQ6OmNs
b25lKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Nl
dEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0
b3IuY3BwCmluZGV4IGJmMTc5YWViZGUxZDJlMTg3ZWY5NGQyYTVmNzkyODkwMTMyMzA4ZGMuLjEy
NWViOTYwNjM3ZWYwZDdlZjdhOWZkOTNlZTMwYmMzODhlMTAyMjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19p
bmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
U2V0SXRlcmF0b3I6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9Owog
CiBKU1NldEl0ZXJhdG9yKiBKU1NldEl0ZXJhdG9yOjpjcmVhdGVXaXRoSW5pdGlhbFZhbHVlcyhW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNTb3VyY2VDb2RlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU291cmNlQ29kZS5jcHAKaW5kZXggOTEzYzU4MTZkNTc4ZmZmMGZiYjhjMjdh
OTA0OGFhMTNlZTM4NTI2Ny4uNGUyMDBlNTZkY2ZhNDczMDM5ZGM4OTA5Yjc4NGJiOWU0MDY2OGVh
MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3VyY2VDb2Rl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3Bw
CkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
SlNTb3VyY2VDb2RlOjpzX2luZm8gPSB7ICJKU1NvdXJjZUNvZGUiLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU291cmNlQ29kZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1NvdXJjZUNvZGU6OnNfaW5mbyA9IHsgIkpTU291cmNlQ29kZSJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NvdXJjZUNvZGUpIH07
CiAKIHZvaWQgSlNTb3VyY2VDb2RlOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcAppbmRleCA1ODI1MjAzYjMyMGNiNzNk
Mzk3NWVjZWE2YmZmOTczYTEwZDBiYjQ4Li5iNjczY2Q4MjEwMjMwZjg2MmZhMTdjNzJjYjA0Njdm
NGVjMjkxNTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0
cmluZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3Bw
CkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJ
bmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
U3RyaW5nOjpzX2luZm8gPSB7ICJzdHJpbmciX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNTdHJpbmcpIH07CiAKIFN0cnVjdHVyZSogSlNTdHJpbmc6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG8pCiB7CkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgSlNTdHJpbmc6OmR1bXBUb1N0
cmVhbShjb25zdCBKU0NlbGwqIGNlbGwsIFByaW50U3RyZWFtJiBvdXQpCiB7CiAgICAgVk0mIHZt
ID0gY2VsbC0+dm0oKTsKICAgICBjb25zdCBKU1N0cmluZyogdGhpc09iamVjdCA9IGpzQ2FzdDxj
b25zdCBKU1N0cmluZyo+KGNlbGwpOwotICAgIG91dC5wcmludGYoIjwlcCwgJXMsIFsldV0sICIs
IHRoaXNPYmplY3QsIHRoaXNPYmplY3QtPmNsYXNzTmFtZSh2bSksIHRoaXNPYmplY3QtPmxlbmd0
aCgpKTsKKyAgICBvdXQucHJpbnRmKCI8JXAsICVzLCBbJXVdLCAiLCB0aGlzT2JqZWN0LCB0aGlz
T2JqZWN0LT5jbGFzc05hbWUodm0pLmNoYXJhY3RlcnMoKSwgdGhpc09iamVjdC0+bGVuZ3RoKCkp
OwogICAgIHVpbnRwdHJfdCBwb2ludGVyID0gdGhpc09iamVjdC0+ZmliZXJDb25jdXJyZW50bHko
KTsKICAgICBpZiAocG9pbnRlciAmIGlzUm9wZUluUG9pbnRlcikgewogICAgICAgICBpZiAocG9p
bnRlciAmIEpTUm9wZVN0cmluZzo6aXNTdWJzdHJpbmdJblBvaW50ZXIpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZ0l0ZXJhdG9yLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwCmluZGV4IGQ0YzEy
ZTliODRiZmE5OGVjY2JjNDk3NzcyYWUyNTNmNTdmY2Y1NWQuLjI5NTViN2NmOGMwMWU0NDE2OTQ5
N2ZhODY4ZjBhN2M4YjE2MjkwN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTU3RyaW5nSXRlcmF0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTdHJpbmdJdGVyYXRvcjo6c19pbmZvID0geyAi
U3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1N0cmluZ0l0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3Ry
aW5nSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N0cmluZ0l0ZXJhdG9y
KSB9OwogCiB2b2lkIEpTU3RyaW5nSXRlcmF0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNT
dHJpbmcqIGl0ZXJhdGVkU3RyaW5nKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNTeW1ib2xUYWJsZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcAppbmRleCA4ZjBhOWNjZWE3MWU1YTEx
MDY3NDRlMTYwMTJlMGQ5Y2FjNTkyODk3Li5mYjYwZmNlMDA4NWUyOGYwYTliOTg3YmY1MWU3MzBi
MmQ5M2FkNzYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5
bWJvbFRhYmxlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1N5bWJvbFRhYmxlT2JqZWN0LmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU3ltYm9sVGFibGVPYmplY3Q6OnNfaW5mbyA9IHsgIlN5
bWJvbFRhYmxlT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1N5bWJvbFRhYmxlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
U3ltYm9sVGFibGVPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbFRhYmxlT2JqZWN0Il9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3ltYm9s
VGFibGVPYmplY3QpIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEpTU3lt
Ym9sVGFibGVPYmplY3Q6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYg
dmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVt
cGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcAppbmRleCA0Mjg5OTBhM2FiNGE0YWJhNTI4
Njg5Njk3NzhlMzFjMzAwNjU5Yzk4Li4wODgzZTg4YjcwM2NmYTE5Y2E4YmUzYTI0NTcxNmEwN2Y2
ZTVhYjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1RlbXBs
YXRlT2JqZWN0RGVzY3JpcHRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0
b3I6OnNfaW5mbyA9IHsgIlRlbXBsYXRlT2JqZWN0RGVzY3JpcHRvciIsIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I6OnNfaW5m
byA9IHsgIlRlbXBsYXRlT2JqZWN0RGVzY3JpcHRvciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcikgfTsK
IAogCiBKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcjo6SlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0
b3IoVk0mIHZtLCBSZWY8VGVtcGxhdGVPYmplY3REZXNjcmlwdG9yPiYmIGRlc2NyaXB0b3IsIGlu
dCBlbmRPZmZzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Q29uc3RydWN0b3JzLmNwcAppbmRleCA5NWFiZWM1NDA5YTMxZWE3ODMx
M2QzYzVmMzlhZGI0NTg1YjhmYWQ0Li5iZTlhMjVhYmMzZTlhYzg4YjhkNjZiN2MzNzhkOWQ0YWU0
ZjM0MmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHAKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKICN1bmRlZiBNQUtFX1NfSU5GTwogI2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBc
Ci0gICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpz
X2luZm8gPSB7IkZ1bmN0aW9uIiwgJkpTIyN0eXBlIyNDb25zdHJ1Y3Rvcjo6QmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNDb25zdHJ1
Y3Rvcil9CisgICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI0NvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkpTIyN0eXBlIyNDb25zdHJ1Y3Rvcjo6QmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBl
IyNDb25zdHJ1Y3RvcikgfQogCiBNQUtFX1NfSU5GTyhJbnQ4QXJyYXkpOwogTUFLRV9TX0lORk8o
SW50MTZBcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTVHlwZWRBcnJheVByb3RvdHlwZXMuY3BwCmluZGV4IGJhODE4ZWEzMDgyZmY0MDRjOWQ0YTdm
MTQxODFlYzk3N2I4MTkzMGEuLjhkMTc2Zjk0NGNlZGQwYjZiNTU2NmFjZDE4NjQ3MTE4NzI4YTgz
NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJh
eVByb3RvdHlwZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlw
ZWRBcnJheVByb3RvdHlwZXMuY3BwCkBAIC0zMSwxMiArMzEsMTEgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpzX2luZm8g
PSB7IlByb3RvdHlwZSIsICZKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsCi0gICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJyYXlW
aWV3UHJvdG90eXBlKX07Citjb25zdCBDbGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiUHJvdG90eXBlIl9zLCAmSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlw
ZWRBcnJheVZpZXdQcm90b3R5cGUpIH07CiAKICN1bmRlZiBNQUtFX1NfSU5GTwogI2RlZmluZSBN
QUtFX1NfSU5GTyh0eXBlKSBcCi0gICAgdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5
cGUjI1Byb3RvdHlwZTo6c19pbmZvID0geyN0eXBlICJQcm90b3R5cGUiLCAmSlMjI3R5cGUjI1By
b3RvdHlwZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTIyN0eXBlIyNQcm90b3R5cGUpfQorICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTIyN0eXBlIyNQcm90b3R5cGU6OnNfaW5mbyA9IHsgI3R5cGUgIlByb3RvdHlwZSJfcywgJkpT
IyN0eXBlIyNQcm90b3R5cGU6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKUyMjdHlwZSMjUHJvdG90eXBlKSB9CiAKIE1BS0VfU19JTkZPKEludDhB
cnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IuY3Bw
CmluZGV4IGZhMzMzODJlZmM4M2MwNWYxOTVkNTRiZTZmNDUwODQzYzEwYWY1MjEuLjQ3MzhmMGVl
ZjU3NGYyMmRmODQ3YTZjNDNhYjg3YTA1NzgyYWNiNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9y
LmNwcApAQCAtMzksNyArMzksNyBAQCBKU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OkpTVHlw
ZWRBcnJheVZpZXdDb25zdHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydQogewogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFy
cmF5Vmlld0NvbnN0cnVjdG9yKSB9OwogCiB2b2lkIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rv
cjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlKiBwcm90b3R5cGUsIEdldHRlclNldHRlciogc3BlY2ll
c1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
VHlwZWRBcnJheVZpZXdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAKaW5kZXggODgyN2IzZGU5OGZlMDVmZTU4
YjkxNzA0MjllMzg2NDk5NWUxOWY1OC4uM2Y5ZWM4NDAwZTllY2Y5ZWFhMDU5MzI3ZDUyMDY1ODc5
ZDY2YWU5YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBl
ZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAKQEAgLTI2Myw3ICsyNjMsNyBAQCBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04odHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcywgKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYQogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BF
KHZtKTsKICAgICBKU1ZhbHVlIHRoaXNWYWx1ZSA9IGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCk7CiAg
ICAgaWYgKCF0aGlzVmFsdWUuaXNPYmplY3QoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmVj
ZWl2ZXIgc2hvdWxkIGJlIGEgdHlwZWQgYXJyYXkgdmlldyBidXQgd2FzIG5vdCBhbiBvYmplY3Qi
KSk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3Jl
YXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIlJlY2VpdmVyIHNob3VsZCBiZSBhIHR5cGVkIGFy
cmF5IHZpZXcgYnV0IHdhcyBub3QgYW4gb2JqZWN0Il9zKSk7CiAgICAgc2NvcGUucmVsZWFzZSgp
OwogICAgIENBTExfR0VORVJJQ19UWVBFREFSUkFZX1BST1RPVFlQRV9GVU5DVElPTihnZW5lcmlj
VHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcyk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlzLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwCmluZGV4IDkwYjMwNDU2NzBhZjBhYmUy
ZjZkMDI3ZWRlOWQ4ODVmZmYwNGFmMzkuLmQ5YjIyNjI5NDQwYzhjNzBhMWQ2YTNmMjkxOWUyN2Nk
MTQ4ZDRkMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlw
ZWRBcnJheXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRB
cnJheXMuY3BwCkBAIC00Niw3ICs0Niw3IEBAIGNvbnN0IEFTQ0lJTGl0ZXJhbCB0eXBlZEFycmF5
QnVmZmVySGFzQmVlbkRldGFjaGVkRXJyb3JNZXNzYWdlIHsgIlVuZGVybHlpbmcgQXJyCiAjdW5k
ZWYgTUFLRV9TX0lORk8KICNkZWZpbmUgTUFLRV9TX0lORk8odHlwZSkgXAogICAgIHRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBlIyNBcnJheTo6c19pbmZvID0geyBcCi0gICAgICAg
ICN0eXBlICJBcnJheSIsICZKUyMjdHlwZSMjQXJyYXk6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgXAorICAgICAgICAjdHlwZSAiQXJyYXkiX3MsICZKUyMjdHlwZSMjQXJyYXk6OkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgXAogICAgICAgICBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTIyN0eXBlIyNBcnJheSkgXAogICAgIH07IFwKICAgICBjb25zdCBDbGFzc0luZm8qIGdl
dCMjdHlwZSMjQXJyYXlDbGFzc0luZm8oKSB7IHJldHVybiAmSlMjI3R5cGUjI0FycmF5OjpzX2lu
Zm87IH0gXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFr
TWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKaW5k
ZXggNDFlYmQ4ZjdlZjU0N2Y0MTBmMjYzMGFlZmVjOWM5ZGZlZDYxNDQxNS4uYzEyMDg1NTRiOTFh
MWQ3ZDEzODVkYjg0MDkwMmQ4ZDk4MjhkZTQyYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1dlYWtNYXAuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtN
YXApIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2Vha01hcCkgfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNXZWFrT2JqZWN0UmVmLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
V2Vha09iamVjdFJlZi5jcHAKaW5kZXggMTU2MTNkMzg5MGE4ZDkxN2FjMjAyZDY3NjIyNzNkZTg2
ODZlZmFlNi4uMjgzZDdlZjI4MzdlZWU1MDA3M2JmYWFjOTBmOGRiYjhjNDY3NTMxNyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwCkBA
IC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNX
ZWFrT2JqZWN0UmVmOjpzX2luZm8gPSB7ICJXZWFrUmVmIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtPYmplY3RSZWYpIH07Citjb25z
dCBDbGFzc0luZm8gSlNXZWFrT2JqZWN0UmVmOjpzX2luZm8gPSB7ICJXZWFrUmVmIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha09i
amVjdFJlZikgfTsKIAogdm9pZCBKU1dlYWtPYmplY3RSZWY6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSwgSlNPYmplY3QqIHZhbHVlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNXZWFrU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
V2Vha1NldC5jcHAKaW5kZXggYmZkZDk0ZWQwOWRmMzhkYWE4YjFmNjJkODU0M2VmMWJiYmJmYTJm
MS4uYTAxYjc4YTc1NDkyZThlODA3OTI1OTA2OTFmZDliNzMxODg3MDk1NyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrU2V0LmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtTZXQuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWFrU2V0OjpzX2luZm8gPSB7
ICJXZWFrU2V0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1dlYWtTZXQpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWFrU2V0OjpzX2luZm8g
PSB7ICJXZWFrU2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV2Vha1NldCkgfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCmluZGV4IGFjMWZhMjVmYmI0ODZiMDRmM2QyZGE0Mzcy
MmI2OWE1NzA3NDU2MWUuLjExOWU4YWMyZDg0NjU5NDJhOGMxZDY4ZjRlYWZlN2U3YTNiNmQ2OWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dpdGhTY29wZS5jcHAKQEAg
LTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dp
dGhTY29wZTo6c19pbmZvID0geyAiV2l0aFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dpdGhTY29wZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1dpdGhTY29wZTo6c19pbmZvID0geyAiV2l0aFNjb3BlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9Owog
CiBKU1dpdGhTY29wZSogSlNXaXRoU2NvcGU6OmNyZWF0ZSgKICAgICBWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTU2NvcGUqIG5leHQsIEpTT2JqZWN0KiBvYmplY3QpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9MaXRlcmFsUGFyc2VyLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwCmluZGV4
IDQxMmUyNThhYjA5NTlmMThiMzJkYTk5MWRiM2Y5NjA0ZjI5OGI3ZjQuLmIzOTUxZGVlYTdlZGNh
MmE5NTJiZjg2OTRkZGI2NjRlZjg1OGJhMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwCkBAIC0xMTYxLDcgKzExNjEsNyBAQCBBTFdBWVNf
SU5MSU5FIEpTVmFsdWUgTGl0ZXJhbFBhcnNlcjxDaGFyVHlwZT46OnBhcnNlUHJpbWl0aXZlVmFs
dWUoVk0mIHZtKQogICAgICAgICAgICAgaWYgKHRva2VuLT5zdHJpbmdMZW5ndGggPiBzaG9ydExl
bmd0aCkKICAgICAgICAgICAgICAgICBlcnJvclN0cmluZyA9IHRyeU1ha2VFcnJvclN0cmluZyhz
aG9ydExlbmd0aCk7CiAgICAgICAgICAgICBpZiAoIWVycm9yU3RyaW5nKQotICAgICAgICAgICAg
ICAgIGVycm9yU3RyaW5nID0gIlVuZXhwZWN0ZWQgaWRlbnRpZmllciI7CisgICAgICAgICAgICAg
ICAgZXJyb3JTdHJpbmcgPSAiVW5leHBlY3RlZCBpZGVudGlmaWVyIl9zOwogICAgICAgICB9CiAK
ICAgICAgICAgbV9wYXJzZUVycm9yTWVzc2FnZSA9IGVycm9yU3RyaW5nOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IGU1YTI4OTg2
NzU4NDgyOWZlYTIxNDFmOTY4ODI0OTUwNjA4Y2I3OGIuLjM1NDAxMmRiZDQ4ZjRjNzgyN2I2Yjlk
NmVhNjlkOTA1YzQyNGE1Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBDb25zdHJ1Y3Rvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1h
cENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShNYXBDb25zdHJ1Y3RvcikgfTsKIAogdm9pZCBNYXBDb25zdHJ1Y3Rvcjo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBNYXBQcm90b3R5cGUqIG1hcFByb3RvdHlwZSwgR2V0dGVy
U2V0dGVyKiBzcGVjaWVzU3ltYm9sKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDZhYzU4N2I1ZTg2OTk3
MTNjY2RjYmNjM2Y1YTIxMTFlY2ZiYTkyMjcuLmY3MzFjNWQzNDVlMmI0MWRhNTljNzIwMDY3MDMy
MGI0NzhhNWI5Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cEl0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0g
eyAiTWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShNYXBJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBN
YXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9y
UHJvdG90eXBlKSB9OwogCiB2b2lkIE1hcEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcAppbmRleCA5M2ViZTAwM2M0NzJi
Yzg5NDNhODU4ZGE4MzUzNGYyYmI3YTE4MDZlLi5mZmNiZDc4ZjE2NDlkNGFiY2M3MjU2NDQ3MjA0
NGI2ZjA1ZTUzNDgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9N
YXBQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFBy
b3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCIsICZCYXNlOjpzX2luZm8s
ICZtYXBQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAi
X3MsICZCYXNlOjpzX2luZm8sICZtYXBQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShNYXBQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgTWFwUHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gbWFwUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL01hdGhPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKaW5kZXggNWIwY2E5NzdkMDg1MWM0YmI2N2M5ZTQ2NGU1
YTEwM2MyMmMxNGIzNy4uZGU2OGFhOTc0NDZlNzA5YThmNDExMTAwYmNkMmZiMGI0YmFlYzE5NiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKQEAgLTYz
LDcgKzYzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04obWF0aFByb3RvRnVu
Y1Rhbik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jVGFu
aCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jSU11bCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBNYXRoT2JqZWN0OjpzX2luZm8gPSB7ICJNYXRoIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0
KSB9OworY29uc3QgQ2xhc3NJbmZvIE1hdGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWF0aE9i
amVjdCkgfTsKIAogTWF0aE9iamVjdDo6TWF0aE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFi
bGUuY3BwCmluZGV4IDFkNTNiZjVkMTBhNmY0NDhkMzkzM2NmMTQxYjcwNDlkZDI2MmNjNzQuLjI0
N2ZhYTY1ZWJjZTZlYTM5NDc2Y2MyNmVmNGQyZTUyNmQ1OWU1NjggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01vZHVsZVByb2dyYW1FeGVjdXRhYmxlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5j
cHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZTo6c19pbmZvID0geyAiTW9kdWxlUHJvZ3JhbUV4ZWN1
dGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE1vZHVsZVByb2dyYW1FeGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIE1vZHVsZVBy
b2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNb2R1
bGVQcm9ncmFtRXhlY3V0YWJsZSkgfTsKIAogTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGU6Ok1vZHVs
ZVByb2dyYW1FeGVjdXRhYmxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNv
dXJjZUNvZGUmIHNvdXJjZSkKICAgICA6IEJhc2UoZ2xvYmFsT2JqZWN0LT52bSgpLm1vZHVsZVBy
b2dyYW1FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCBnbG9iYWxPYmplY3QtPnZtKCksIHNvdXJj
ZSwgZmFsc2UsIERlcml2ZWRDb250ZXh0VHlwZTo6Tm9uZSwgZmFsc2UsIGZhbHNlLCBFdmFsQ29u
dGV4dFR5cGU6Ok5vbmUsIE5vSW50cmluc2ljKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCAyMTNkOWZi
N2E2OGFiMmFjOGY5NmQ4NjcwZDhhZTM0NmYxMzllM2ZjLi43MDJlMzY5MDA2MmY1Y2JkZTY2ZWM3
NmYzNzQ3NGRjZDg0YWQ2OTQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtMjksNyArMjksNyBAQCBu
YW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KE5hdGl2ZUVycm9yQ29uc3RydWN0b3JCYXNlKTsKIAotY29uc3QgQ2xhc3NJbmZvIE5hdGl2ZUVy
cm9yQ29uc3RydWN0b3JCYXNlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1
Y3RvckJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2U6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hdGl2ZUVycm9yQ29uc3RydWN0b3JCYXNlKSB9OwogCiBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsRXZhbEVycm9yKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEV2YWxFcnJvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFeGVjdXRhYmxlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwCmluZGV4IDY0
ZjlkMWZkNjM4ODYzY2ZlZjUxMGQ4NDAxYWZjODljN2Q3YjlhNmEuLmUwOTY2M2IyZGEzMzdmMjMz
MzhlN2U5YmM2MDkzZTVhZGMyZjE2OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTmF0aXZlRXhlY3V0YWJsZTo6c19pbmZvID0g
eyAiTmF0aXZlRXhlY3V0YWJsZSIsICZFeGVjdXRhYmxlQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hdGl2ZUV4ZWN1dGFibGUpIH07Citjb25zdCBD
bGFzc0luZm8gTmF0aXZlRXhlY3V0YWJsZTo6c19pbmZvID0geyAiTmF0aXZlRXhlY3V0YWJsZSJf
cywgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJsZSkgfTsKIAogTmF0aXZlRXhlY3V0YWJsZSogTmF0aXZl
RXhlY3V0YWJsZTo6Y3JlYXRlKFZNJiB2bSwgUmVmPEpJVENvZGU+JiYgY2FsbFRodW5rLCBUYWdn
ZWROYXRpdmVGdW5jdGlvbiBmdW5jdGlvbiwgUmVmPEpJVENvZGU+JiYgY29uc3RydWN0VGh1bmss
IFRhZ2dlZE5hdGl2ZUZ1bmN0aW9uIGNvbnN0cnVjdG9yLCBjb25zdCBTdHJpbmcmIG5hbWUpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVu
Y3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0
aW9uLmNwcAppbmRleCBhYWUyMGE1YmM3NTliMDUyY2YxOTM5Nzg4YjZjMDBjMmFkYjIyY2ZiLi42
MjcwZDUzNDcxNzJjMjQyOWY4N2UwMTg0YTI1ZGY5ZWQzODFlMzdjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKQEAgLTMw
LDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOdWxsR2V0
dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdWxsR2V0dGVyRnVuY3Rpb24pIH07Citj
b25zdCBDbGFzc0luZm8gTnVsbEdldHRlckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShO
dWxsR2V0dGVyRnVuY3Rpb24pIH07CiAKIG5hbWVzcGFjZSBOdWxsR2V0dGVyRnVuY3Rpb25JbnRl
cm5hbCB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxT
ZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0
dGVyRnVuY3Rpb24uY3BwCmluZGV4IGYyMTliOTMyNmJiZGFhZWRmZTNmYTFjNmI4NmYxYWFjM2E1
MThiYzMuLjA5NWM2MDViMTkyMGY3NTEwNWFkYzFkNDRmOGQzM2I4MDcyMjcwYjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNw
cApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IE51bGxTZXR0ZXJGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxTZXR0ZXJGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBOdWxsU2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE51bGxTZXR0ZXJGdW5jdGlvbikgfTsKIAogCiAjaWYgQVNTRVJUX0VOQUJMRUQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9y
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNw
cAppbmRleCA2MjNhMTZiNTIzNWRmODM5ZmI5ZTVkZWVlZmI2NTI4NWFjYTYyN2QwLi5kMmEwNTA1
ZmQ3MjQxZjE3ZTYzYzkzMGEwY2IwNzg2NjM3YzAwZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCkBAIC0zOSw3ICszOSw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoTnVtYmVyQ29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVyQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywg
Jm51bWJlckNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmbnVtYmVy
Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBOdW1iZXJDb25zdHJ1Y3Rvci5sdXQuaAogQGJl
Z2luIG51bWJlckNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL051bWJlck9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJPYmplY3QuY3BwCmluZGV4IGVmZWJiMjlhMTNiOTVkMTc4NzZlMGYxZjJkZGE1
NzZhN2QxMGYyYjcuLjUxMmRlZmU3NjE2MDM1NTEwOTExMjRjNDQwNGQzZjMyNmY1YWM1YjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVjdC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcApAQCAt
MjgsNyArMjgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKE51bWJlck9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJP
YmplY3Q6OnNfaW5mbyA9IHsgIk51bWJlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZv
IE51bWJlck9iamVjdDo6c19pbmZvID0geyAiTnVtYmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlck9iamVjdCkgfTsKIAogTnVt
YmVyT2JqZWN0OjpOdW1iZXJPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9OdW1iZXJQcm90b3R5cGUuY3BwCmluZGV4IDg4ODU5MWRkYzA2ZmZhY2FkMmYwYTA5NzNi
ZjAyNTU0ZDY1MTgwYjYuLjY5YjMwZmY1ZTFlN2M3NmIwYjE3NDUxNzdjYmI4ZmVhMDU2M2YwZWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBl
LmNwcApAQCAtNTEsNyArNTEsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihu
dW1iZXJQcm90b0Z1bmNUb1ByZWNpc2lvbik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gTnVtYmVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIiLCAmTnVtYmVyT2Jq
ZWN0OjpzX2luZm8sICZudW1iZXJQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShOdW1iZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIiX3MsICZOdW1iZXJPYmplY3Q6OnNfaW5mbywgJm51bWJl
clByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlclByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBOdW1iZXJQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBu
dW1iZXJQcm90b3R5cGVUYWJsZQpAQCAtMzc1LDcgKzM3NSw3IEBAIFN0cmluZyB0b1N0cmluZ1dp
dGhSYWRpeChkb3VibGUgZG91YmxlVmFsdWUsIGludDMyX3QgcmFkaXgpCiAgICAgICAgIHJldHVy
biBTdHJpbmc6Om51bWJlcihkb3VibGVWYWx1ZSk7CiAKICAgICBSYWRpeEJ1ZmZlciBidWZmZXI7
Ci0gICAgcmV0dXJuIHRvU3RyaW5nV2l0aFJhZGl4SW50ZXJuYWwoYnVmZmVyLCBkb3VibGVWYWx1
ZSwgcmFkaXgpOworICAgIHJldHVybiBTdHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFs
KGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJhZGl4KSB9OwogfQogCiAvLyB0b0V4cG9uZW50aWFsIGNv
bnZlcnRzIGEgbnVtYmVyIHRvIGEgc3RyaW5nLCBhbHdheXMgZm9ybWF0dGluZyBhcyBhbiBleHBv
bmVudGlhbC4KQEAgLTQxMiw3ICs0MTIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04obnVt
YmVyUHJvdG9GdW5jVG9FeHBvbmVudGlhbCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAg
ICAgICBjb252ZXJ0ZXIuVG9FeHBvbmVudGlhbCh4LCAtMSwgJmJ1aWxkZXIpOwogICAgIGVsc2UK
ICAgICAgICAgY29udmVydGVyLlRvRXhwb25lbnRpYWwoeCwgZGVjaW1hbFBsYWNlcywgJmJ1aWxk
ZXIpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIGJ1aWxkZXIuRmlu
YWxpemUoKSkpOworICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmlu
ZyB7IGJ1aWxkZXIuRmluYWxpemUoKSB9KSk7CiB9CiAKIC8vIHRvRml4ZWQgY29udmVydHMgYSBu
dW1iZXIgdG8gYSBzdHJpbmcsIGFsd2F5cyBmb3JtYXR0aW5nIGFzIGFuIGEgZGVjaW1hbCBmcmFj
dGlvbi4KQEAgLTUxMyw3ICs1MTMsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU1N0cmluZyog
bnVtYmVyVG9TdHJpbmdJbnRlcm5hbChWTSYgdm0sIGRvdWJsZSBkb3VibGVWYWx1ZQogICAgICAg
ICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCBTdHJpbmc6Om51bWJlcihkb3VibGVWYWx1
ZSkpOwogCiAgICAgUmFkaXhCdWZmZXIgYnVmZmVyOwotICAgIHJldHVybiBqc1N0cmluZyh2bSwg
dG9TdHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCkpOwor
ICAgIHJldHVybiBqc1N0cmluZyh2bSwgU3RyaW5nIHsgdG9TdHJpbmdXaXRoUmFkaXhJbnRlcm5h
bChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCkgfSk7CiB9CiAKIEpTU3RyaW5nKiBpbnQzMlRv
U3RyaW5nKFZNJiB2bSwgaW50MzJfdCB2YWx1ZSwgaW50MzJfdCByYWRpeCkKQEAgLTU0MSw3ICs1
NDEsNyBAQCBKU1N0cmluZyogaW50NTJUb1N0cmluZyhWTSYgdm0sIGludDY0X3QgdmFsdWUsIGlu
dDMyX3QgcmFkaXgpCiAgICAgY2hhciogc3RhcnRPZlJlc3VsdFN0cmluZyA9IGRlY2ltYWxQb2lu
dDsKICAgICAqZGVjaW1hbFBvaW50ID0gJ1wwJzsKIAotICAgIHJldHVybiBqc05vbnRyaXZpYWxT
dHJpbmcodm0sIGludDUyVG9TdHJpbmdXaXRoUmFkaXgoc3RhcnRPZlJlc3VsdFN0cmluZywgdmFs
dWUsIHJhZGl4KSk7CisgICAgcmV0dXJuIGpzTm9udHJpdmlhbFN0cmluZyh2bSwgU3RyaW5nIHsg
aW50NTJUb1N0cmluZ1dpdGhSYWRpeChzdGFydE9mUmVzdWx0U3RyaW5nLCB2YWx1ZSwgcmFkaXgp
IH0pOwogfQogCiBKU1N0cmluZyogbnVtYmVyVG9TdHJpbmcoVk0mIHZtLCBkb3VibGUgZG91Ymxl
VmFsdWUsIGludDMyX3QgcmFkaXgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNTg0MDZlYTczMWM5NGFlYjc0OTExOTJl
YmU2ZDE0YzkzYTIzOGM3Ny4uMjZhZjYxOWRjYTNkMjZkOGVkYzU3YjljOTUyNmJhZTA1YzllZjI2
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0
cnVjdG9yLmNwcApAQCAtNTYsNyArNTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FT
U0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKE9iamVjdENvbnN0cnVjdG9yKTsKIAotY29u
c3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZvYmplY3RDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJ
bmZvIE9iamVjdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFs
RnVuY3Rpb246OnNfaW5mbywgJm9iamVjdENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoT2JqZWN0Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgT2Jq
ZWN0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBvYmplY3RDb25zdHJ1Y3RvclRhYmxlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcAppbmRl
eCA5NWJiYTNjYjMyMGVhNWM3MGY5ODA0M2ZlMGQyNjcwMTc3M2EwZTJjLi41OTVjYjQyYTljODcz
OWEzMWIyMzFlNjE1Y2UxMWVmNzQwMmRlMDQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ob2JqZWN0UHJvdG9GdW5jVG9Mb2NhbGVTdHJpbmcp
OwogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0UHJvdG90
eXBlKTsKIAotY29uc3QgQ2xhc3NJbmZvIE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiT2Jq
ZWN0IiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqZWN0UHJvdG90eXBl
KSB9OwogCiBPYmplY3RQcm90b3R5cGU6Ok9iamVjdFByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVy
ZSogc3R1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaAppbmRleCAwOTE5ZTcyMTg2ZDM5
ZDZkNTZlZGQ3MThhOWNmYjhhMzA0ZjU5MTcxLi4yZTgxOGJmZmE3OWM0YWY2ZjBkM2MxMjUyOGZh
YTU2NTU4ZWM1ZjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9P
cGVyYXRpb25zLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9u
cy5oCkBAIC01NzMsNyArNTczLDcgQEAgQUxXQVlTX0lOTElORSBKU1ZhbHVlIGpzQWRkKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdjEsIEpTVmFsdWUgdjIKIH0KIAogdGVt
cGxhdGU8dHlwZW5hbWUgRG91YmxlT3BlcmF0aW9uLCB0eXBlbmFtZSBCaWdJbnRPcD4KLUFMV0FZ
U19JTkxJTkUgSlNWYWx1ZSBhcml0aG1ldGljQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgRG91YmxlT3BlcmF0aW9uJiYgZG91Ymxl
T3AsIEJpZ0ludE9wJiYgYmlnSW50T3AsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0FMV0FZ
U19JTkxJTkUgSlNWYWx1ZSBhcml0aG1ldGljQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgRG91YmxlT3BlcmF0aW9uJiYgZG91Ymxl
T3AsIEJpZ0ludE9wJiYgYmlnSW50T3AsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAg
ICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKQEAgLTc4MCw3ICs3ODAsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFs
dWUgc2hpZnQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1
ZSB2MgogICAgIH0KICNlbmRpZgogCi0gICAgYXV0byBlcnJvck1lc3NhZ2UgPSBpc0xlZnQgPyAi
SW52YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGluIGxlZnQgc2hpZnQgb3BlcmF0
aW9uLiIgOiAiSW52YWxpZCBtaXggb2YgQmlnSW50IGFuZCBvdGhlciB0eXBlIGluIHNpZ25lZCBy
aWdodCBzaGlmdCBvcGVyYXRpb24uIjsKKyAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVmdCA/
ICJJbnZhbGlkIG1peCBvZiBCaWdJbnQgYW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBvcGVy
YXRpb24uIl9zIDogIkludmFsaWQgbWl4IG9mIEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBzaWdu
ZWQgcmlnaHQgc2hpZnQgb3BlcmF0aW9uLiJfczsKICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3Io
Z2xvYmFsT2JqZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKTsKIH0KIApAQCAtODE1LDcgKzgxNSw3
IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1ZSBqc1VSU2hpZnQoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNWYWx1ZSBsZWZ0LCBKU1ZhCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIEludDMy
T3BlcmF0aW9uLCB0eXBlbmFtZSBCaWdJbnRPcD4KLUFMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3
aXNlQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNW
YWx1ZSB2MiwgSW50MzJPcGVyYXRpb24mJiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBj
b25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpCitBTFdBWVNfSU5MSU5FIEpTVmFsdWUgYml0d2lzZUJp
bmFyeU9wKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgdjEsIEpTVmFsdWUg
djIsIEludDMyT3BlcmF0aW9uJiYgaW50MzJPcCwgQmlnSW50T3AmJiBiaWdJbnRPcCwgQVNDSUlM
aXRlcmFsIGVycm9yTWVzc2FnZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7
CiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvZ3JhbUV4ZWN1dGFibGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCmluZGV4IGVh
YmZhODVhY2EzN2VmMGFhN2M3ZGY4OTVlYWU0MTczOWQxNTQ5MGUuLjczMjlmZTI3MDE4Njg0YWIw
NWM2YTQ3NzZmYWQyOTZlNTgyODlkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0YWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm9ncmFtRXhlY3V0YWJsZTo6c19pbmZv
ID0geyAiUHJvZ3JhbUV4ZWN1dGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb2dyYW1FeGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9n
cmFtRXhlY3V0YWJsZSkgfTsKIAogUHJvZ3JhbUV4ZWN1dGFibGU6OlByb2dyYW1FeGVjdXRhYmxl
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSkK
ICAgICA6IEJhc2UoZ2xvYmFsT2JqZWN0LT52bSgpLnByb2dyYW1FeGVjdXRhYmxlU3RydWN0dXJl
LmdldCgpLCBnbG9iYWxPYmplY3QtPnZtKCksIHNvdXJjZSwgZmFsc2UsIERlcml2ZWRDb250ZXh0
VHlwZTo6Tm9uZSwgZmFsc2UsIGZhbHNlLCBFdmFsQ29udGV4dFR5cGU6Ok5vbmUsIE5vSW50cmlu
c2ljKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlU
YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNw
cAppbmRleCBhYjQxNjY5OWU5NjI3N2IyZWNhMTIxODg5MTY4MDE5MWZiMzMyNmZhLi42MjMxNGM3
YmUyYmE5M2E4N2ZkYjY1YWRkYjE5NWY1NWM0Y2ZiYzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogREVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihQcm9w
ZXJ0eVRhYmxlKTsKIAotY29uc3QgQ2xhc3NJbmZvIFByb3BlcnR5VGFibGU6OnNfaW5mbyA9IHsg
IlByb3BlcnR5VGFibGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFByb3BlcnR5VGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6
c19pbmZvID0geyAiUHJvcGVydHlUYWJsZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShQcm9wZXJ0eVRhYmxlKSB9OwogCiBQcm9wZXJ0eVRhYmxlKiBQ
cm9wZXJ0eVRhYmxlOjpjcmVhdGUoVk0mIHZtLCB1bnNpZ25lZCBpbml0aWFsQ2FwYWNpdHkpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eUNvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3Iu
Y3BwCmluZGV4IGY3MmY4ZjdhZWU1MzA5MDcxODYzOTZjMjMxNDVjYmFiZGZiYjFmM2MuLjg4YzE3
NzRmODA4MDljMTc4NThiNWRjMGM0ZDI1NGY5MDM2NjY3ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoUHJveHlDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJQcm94eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBQcm94eUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJQcm94eSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eUNvbnN0cnVjdG9yKSB9
OwogCiBQcm94eUNvbnN0cnVjdG9yKiBQcm94eUNvbnN0cnVjdG9yOjpjcmVhdGUoVk0mIHZtLCBT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKQEAgLTc2LDcgKzc2LDcgQEAgSlNDX0RFRklORV9IT1NU
X0ZVTkNUSU9OKG1ha2VSZXZvY2FibGVQcm94eSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGwKIAogdm9pZCBQcm94eUNvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7Ci0gICAgQmFzZTo6ZmluaXNoQ3JlYXRp
b24odm0sIDIsICJQcm94eSIsIFByb3BlcnR5QWRkaXRpb25Nb2RlOjpXaXRob3V0U3RydWN0dXJl
VHJhbnNpdGlvbik7CisgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0sIDIsICJQcm94eSJfcywg
UHJvcGVydHlBZGRpdGlvbk1vZGU6OldpdGhvdXRTdHJ1Y3R1cmVUcmFuc2l0aW9uKTsKICAgICBK
U0NfTkFUSVZFX0ZVTkNUSU9OX1dJVEhPVVRfVFJBTlNJVElPTigicmV2b2NhYmxlIiwgbWFrZVJl
dm9jYWJsZVByb3h5LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRv
bnRFbnVtKSwgMik7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3h5T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5
T2JqZWN0LmNwcAppbmRleCA0NWY1OGQ5OWQzNWQ1YTEzZGRiOTllMGE2NGNmOTFmYjY2ZDkzOGRm
Li4xYjljZjcwNmRmZDdmZTY3YzQ1OTRjN2Q3ZDNkZTBjOWUyYjFlNjk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eU9iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlPYmplY3QuY3BwCkBAIC0zOCw3ICszOCw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElC
TEUoUHJveHlPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gUHJveHlPYmplY3Q6OnNfaW5mbyA9
IHsgIlByb3h5T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShQcm94eU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eU9iamVj
dDo6c19pbmZvID0geyAiUHJveHlPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlPYmplY3QpIH07CiAKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKHBlcmZvcm1Qcm94eUNhbGwpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04ocGVyZm9ybVByb3h5Q29uc3RydWN0KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5UmV2b2tlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5UmV2b2tlLmNwcAppbmRleCBmNTBjZmU2ODFhY2I5ODRk
ZDg2ODBjZjgwNjc5YWIyNjUxZTk3N2YwLi4zZTYyMWFiNzM0MzI5NzI5MjEwNjQ3YmY4YzEzMTU2
NTg0MGFkMjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94
eVJldm9rZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlSZXZv
a2UuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUHJveHlSZXZva2UpOwogCi1jb25zdCBDbGFzc0lu
Zm8gUHJveHlSZXZva2U6OnNfaW5mbyA9IHsgIlByb3h5UmV2b2tlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJldm9rZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBQcm94eVJldm9rZTo6c19pbmZvID0geyAiUHJveHlSZXZva2UiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlS
ZXZva2UpIH07CiAKIFByb3h5UmV2b2tlKiBQcm94eVJldm9rZTo6Y3JlYXRlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIFByb3h5T2JqZWN0KiBwcm94eSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAKaW5kZXggMDg3MzdkYWE3NTYy
MzdmNmNhMmUwOWRjOGMxYWQ3NWQxZGI4YzUxNi4uMjI3ZTAxMjBlZTE5NWMzZDhhNzhhYzRlMWJh
YmE0NTA3NjQ2NWYxMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVmbGVjdE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVm
bGVjdE9iamVjdC5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShSZWZsZWN0T2JqZWN0KTsKIAotY29u
c3QgQ2xhc3NJbmZvIFJlZmxlY3RPYmplY3Q6OnNfaW5mbyA9IHsgIlJlZmxlY3QiLCAmQmFzZTo6
c19pbmZvLCAmcmVmbGVjdE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFJlZmxlY3RPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUmVmbGVjdE9iamVjdDo6c19pbmZv
ID0geyAiUmVmbGVjdCJfcywgJkJhc2U6OnNfaW5mbywgJnJlZmxlY3RPYmplY3RUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWZsZWN0T2JqZWN0KSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFJlZmxlY3RPYmplY3QubHV0LmgKIEBiZWdpbiByZWZsZWN0T2JqZWN0VGFibGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHAuY3BwCmluZGV4IDQ0OTA5ZDE2OTRiYzU1Yzc1
YjI3N2NjNTE2MDAwMDI4NGI0YWQzMmYuLmM4ZWY2M2Y4OTQ3YTcyYTQ3NzhhZTM1M2YwYjU5NTIw
Yzg3NDQxMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4
cC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcApAQCAt
MzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4
cDo6c19pbmZvID0geyAiUmVnRXhwIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShSZWdFeHApIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwOjpzX2luZm8g
PSB7ICJSZWdFeHAiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUmVnRXhwKSB9OwogCiAjaWYgUkVHRVhQX0ZVTkNfVEVTVF9EQVRBX0dFTgogY29uc3Qg
Y2hhciogY29uc3QgUmVnRXhwRnVuY3Rpb25hbFRlc3RDb2xsZWN0b3I6OnNfZmlsZU5hbWUgPSAi
L3RtcC9SZWdFeHBUZXN0c0RhdGEiOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwQ2FjaGUuY3BwCmluZGV4IDBmNWQ1MGZlYzBiNzQyNDQ0YmQ2Njg1MTVkNmFiYTIzODJi
ZTQ3NzIuLjc0NzcwMWY4YTBkNGFiYjMwNjQ5ZWQ2ZmEyZmE1MTE3ZWY0YzZmM2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5jcHAKQEAgLTU2LDcgKzU2
LDcgQEAgUmVnRXhwQ2FjaGU6OlJlZ0V4cENhY2hlKFZNKiB2bSkKIAogUmVnRXhwKiBSZWdFeHBD
YWNoZTo6ZW5zdXJlRW1wdHlSZWdFeHBTbG93KFZNJiB2bSkKIHsKLSAgICBSZWdFeHAqIHJlZ0V4
cCA9IFJlZ0V4cDo6Y3JlYXRlKHZtLCAiIiwgeyB9KTsKKyAgICBSZWdFeHAqIHJlZ0V4cCA9IFJl
Z0V4cDo6Y3JlYXRlKHZtLCBlbXB0eVN0cmluZygpLCB7IH0pOwogICAgIG1fZW1wdHlSZWdFeHAu
c2V0KHZtLCByZWdFeHApOwogICAgIHJldHVybiByZWdFeHA7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmQ0Yzky
YjM0MTFjNTlkZWJhYTZmYjgwYmY5MDJjMTkzZjhjODhjYS4uMTVmMjdkMGE0YmEyNzlhMTJmNmI5
M2FlY2QyNDJkNDRmMjMxNjk2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcApAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfQ1VTVE9NX1NFVFRFUihzZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGluZSk7CiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlZ0V4cENv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcmVnRXhwQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBDb25zdHJ1Y3Rvcikg
fTsKIAogLyogU291cmNlIGZvciBSZWdFeHBDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlZ0V4
cENvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBPYmplY3QuY3BwCmluZGV4IDNmMzQyNmNlMWVmZDI0MDZlNjM1OTBlMzU5YzgyNjkyOWZkZjM3
MmUuLjc4ZjVjOGE4NTVjZTk0NGJjZTE5ZTc4OTJiZWNkMDRmNzk0NTU4NjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcApAQCAtMjcsNyArMjcs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKFJlZ0V4cE9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBPYmplY3Q6OnNf
aW5mbyA9IHsgIlJlZ0V4cCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9i
amVjdDo6c19pbmZvID0geyAiUmVnRXhwIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cE9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19E
RUNMQVJFX0NVU1RPTV9TRVRURVIocmVnRXhwT2JqZWN0U2V0TGFzdEluZGV4U3RyaWN0KTsKIHN0
YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fU0VUVEVSKHJlZ0V4cE9iamVjdFNldExhc3RJbmRleE5v
blN0cmljdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHBQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwUHJv
dG90eXBlLmNwcAppbmRleCA1ODI0YTQyYzNiNmExNTczZjAwMTY1NWE2OTJkNjc5ZmRmYTAwOWY0
Li45NzU3MDEyYjczZDk1ODgyMjE5ZDA5ZTI3ZjM5NjZjNzIyMTUwMmU1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKQEAgLTQ4LDcg
KzQ4LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0
ZXJVbmljb2RlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3Rv
R2V0dGVyU291cmNlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFBy
b3RvR2V0dGVyRmxhZ3MpOwogCi1jb25zdCBDbGFzc0luZm8gUmVnRXhwUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFJlZ0V4cFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHBQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07CiAKIFJlZ0V4
cFByb3RvdHlwZTo6UmVnRXhwUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCkBAIC0xMDUsNyArMTA1LDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3RvRnVuY0V4ZWMsIChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWwKICAgICBKU1ZhbHVlIHRoaXNWYWx1ZSA9IGNhbGxG
cmFtZS0+dGhpc1ZhbHVlKCk7CiAgICAgYXV0byogcmVnZXhwID0ganNEeW5hbWljQ2FzdDxSZWdF
eHBPYmplY3QqPih2bSwgdGhpc1ZhbHVlKTsKICAgICBpZiAoVU5MSUtFTFkoIXJlZ2V4cCkpCi0g
ICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJCdWls
dGluIFJlZ0V4cCBleGVjIGNhbiBvbmx5IGJlIGNhbGxlZCBvbiBhIFJlZ0V4cCBvYmplY3QiKTsK
KyAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkJ1
aWx0aW4gUmVnRXhwIGV4ZWMgY2FuIG9ubHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVjdCJf
cyk7CiAgICAgSlNTdHJpbmcqIHN0cmluZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkudG9TdHJp
bmdPck51bGwoZ2xvYmFsT2JqZWN0KTsKICAgICBFWENFUFRJT05fQVNTRVJUKCEhc2NvcGUuZXhj
ZXB0aW9uKCkgPT0gIXN0cmluZyk7CiAgICAgaWYgKCFzdHJpbmcpCkBAIC0zNDMsNyArMzQzLDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3RvR2V0dGVyRmxhZ3MsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogICAgIGF1dG8gZmxhZ3MgPSBmbGFnc1N0cmluZyhn
bG9iYWxPYmplY3QsIGFzT2JqZWN0KHRoaXNWYWx1ZSkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1N0cmluZyh2bSwgZmxhZ3MuZGF0YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1N0cmluZyh2bSwgU3RyaW5nIHsgZmxhZ3MuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3RvR2V0dGVyU291cmNlLCAoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90
b3R5cGUuY3BwCmluZGV4IDM5MDI5OTBjN2FlZDk3ZTVlMGFhZGFhYjViYWM0ZGU2OTBhZWI3ZmEu
LjNlNjJlNGMxNTFhZDk0MDYwMjFkMDdiNzQ1NGVkMjk3NjRlYWE0NjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVy
YXRvclByb3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBSZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0g
eyAiUmVnRXhwIFN0cmluZyBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlJlZ0V4cCBTdHJpbmcgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUp
IH07CiAKIHZvaWQgUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVudHMuY3BwCmluZGV4IDYwOTExODEw
NDM4NzA1MWQ2YjZjNWNiYTUyYjhkN2FhOWVjYWU5NDMuLmQzMTMxZTZiOTNmMTdjOWZjMGVmMjE4
ZGZhYTAxNjAwNDY5OGY4YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2NvcGVkQXJndW1lbnRzLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
IAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFNjb3BlZEFyZ3VtZW50
cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHM6OnNfaW5mbyA9IHsgIkFyZ3Vt
ZW50cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU2NvcGVkQXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6
c19pbmZvID0geyAiQXJndW1lbnRzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNjb3BlZEFyZ3VtZW50cykgfTsKIAogU2NvcGVkQXJndW1l
bnRzOjpTY29wZWRBcmd1bWVudHMoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgV3JpdGVC
YXJyaWVyPFVua25vd24+KiBzdG9yYWdlLCB1bnNpZ25lZCB0b3RhbExlbmd0aCkKICAgICA6IEdl
bmVyaWNBcmd1bWVudHModm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmNwcAppbmRleCAxNGZjMmZiNjA0
YjM0ZWY4OTA1MzM5YTY1MWM0ZmU1ZWYwNWYxMGQ5Li5hYTJkZjRjZDE4MGIzYjI1ZGNiMDdjOGNi
ZGM4ZmY3ZGJjMjkwMGEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TY29wZWRBcmd1bWVudHNUYWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2NvcGVkQXJndW1lbnRzVGFibGU6OnNfaW5m
byA9IHsgIlNjb3BlZEFyZ3VtZW50c1RhYmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShTY29wZWRBcmd1bWVudHNUYWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBTY29wZWRBcmd1bWVudHNUYWJsZTo6c19pbmZvID0geyAiU2NvcGVkQXJndW1lbnRzVGFi
bGUiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2Nv
cGVkQXJndW1lbnRzVGFibGUpIH07CiAKIFNjb3BlZEFyZ3VtZW50c1RhYmxlOjpTY29wZWRBcmd1
bWVudHNUYWJsZShWTSYgdm0pCiAgICAgOiBCYXNlKHZtLCB2bS5zY29wZWRBcmd1bWVudHNUYWJs
ZVN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1NjcmlwdEV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2NyaXB0RXhlY3V0YWJsZS5jcHAKaW5kZXggNDIxZDcwMGU0NmFmYjgwOGU3ZDVhNTcwZGNhZjVm
NWM3YmE5YjQxZi4uYzZhOWVhYjY3MTRjZTQyYzQxMDg3YmRiMDhmYzkyMTc0YWM4ZWNiZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5j
cHAKQEAgLTQ0LDcgKzQ0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIiwgJkV4ZWN1
dGFibGVCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2NyaXB0RXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpz
X2luZm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIl9zLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY3JpcHRFeGVjdXRhYmxlKSB9
OwogCiBTY3JpcHRFeGVjdXRhYmxlOjpTY3JpcHRFeGVjdXRhYmxlKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBWTSYgdm0sIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgTGV4aWNhbFNjb3BlRmVhdHVy
ZXMgbGV4aWNhbFNjb3BlRmVhdHVyZXMsIERlcml2ZWRDb250ZXh0VHlwZSBkZXJpdmVkQ29udGV4
dFR5cGUsIGJvb2wgaXNJbkFycm93RnVuY3Rpb25Db250ZXh0LCBib29sIGlzSW5zaWRlT3JkaW5h
cnlGdW5jdGlvbiwgRXZhbENvbnRleHRUeXBlIGV2YWxDb250ZXh0VHlwZSwgSW50cmluc2ljIGlu
dHJpbnNpYykKICAgICA6IEV4ZWN1dGFibGVCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDU0NDMz
YmZlZTRmZGRkYTVmNDcwNjc3YWY0NTdmOWJmNGY3NGU0NS4uMzFmMzA3ZTY5MDcxMjIwYTc2MmI1
OWIyMjdiZGM0MGRlYjAwYjFjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U2V0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFNldENvbnN0cnVjdG9yKSB9OwogCiB2b2lkIFNldENvbnN0cnVjdG9y
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFNldFByb3RvdHlwZSogc2V0UHJvdG90eXBlLCBHZXR0
ZXJTZXR0ZXIqIHNwZWNpZXNTeW1ib2wpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TZXRJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TZXRJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggM2ZhYjZlMzg2NTUz
ZjMxZGQ5OWQ0NGQzMzFhZWU2YWM2OTZlYzIzNC4uOTA2MTcxYmNmZjYzMDZhYWE3NWEzMGM4MWIx
NDgxNTE3YWNkODBkNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2V0SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFNldEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFNldEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQgSXRlcmF0b3IiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0SXRlcmF0
b3JQcm90b3R5cGUpIH07CiAKIHZvaWQgU2V0SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRQcm90b3R5cGUuY3BwCmluZGV4IGE2ZWZjMmZiYjMx
NDQ2ZTgyYTQ2MzQyMTJmMjdiNmQwZDRkNTkyY2UuLjU0YzIyZGMxNzY1MjdiNGJhZGZmNTQ0ZDBk
ZDYzYmU3ZmNiYzI1ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1NldFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
UHJvdG90eXBlLmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIFNldFByb3RvdHlwZTo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5m
bywgJnNldFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNl
dCJfcywgJkJhc2U6OnNfaW5mbywgJnNldFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFNldFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBTZXRJdGVyYXRv
clByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHNldFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3Bw
CmluZGV4IGM4ODZiYWMwNjNiNDJjNjcyZjJmZWM5NTE4MWYxMDE3YjY2YWYxYWYuLjQ1NjQ4NDQ3
NDc5MTRkNjBmOGMzZTU1Njc3NmNiMzYzNmU2ZDliYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwCkBAIC0z
MSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93
UmVhbG1Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlv
bjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNoYWRvd1Jl
YWxtQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3Rv
cikgfTsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFNoYWRvd1Jl
YWxtQ29uc3RydWN0b3IpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAKaW5kZXggMzM2MTQ2YzUyZTRhYjgzYmExMWZhMmZiNzgz
ZTA4YzhkOTI0ZjRhNC4uZTBmZDRlZjZjOTM5YjcyZDNmZmYwMGI5NTBlODE3ZTUwZTVmMjEzZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1PYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtT2Jq
ZWN0LmNwcApAQCAtMzksNyArMzksNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNU
UlVDVElCTEUoU2hhZG93UmVhbG1PYmplY3QpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFNoYWRvd1JlYWxtT2JqZWN0OjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93
UmVhbG1PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1PYmplY3Q6OnNfaW5m
byA9IHsgIlNoYWRvd1JlYWxtIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFNoYWRvd1JlYWxtT2JqZWN0KSB9OwogCiBTaGFkb3dSZWFsbU9i
amVjdDo6U2hhZG93UmVhbG1PYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJvdG90eXBlLmNwcAppbmRleCA4ZTg4NjY2Mzk4M2FmM2E1
N2M2MzExZTdhMDg4ZmM2NWU3ZGEzYTUyLi43NGNjYTA2NTcyNGJiNGE2YWIyOTliYTE3MTUxOTNk
MDEzZWQ3MzAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFk
b3dSZWFsbVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U2hhZG93UmVhbG1Qcm90b3R5cGUuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogQGVuZAogKi8KIAotY29uc3QgQ2xhc3NJbmZvIFNoYWRvd1JlYWxtUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTaGFkb3dSZWFsbSIsICZCYXNlOjpzX2luZm8sICZzaGFkb3dSZWFsbVByb3RvdHlw
ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNoYWRvd1JlYWxtUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIFNoYWRvd1JlYWxtUHJvdG90eXBlOjpzX2luZm8gPSB7ICJT
aGFkb3dSZWFsbSJfcywgJkJhc2U6OnNfaW5mbywgJnNoYWRvd1JlYWxtUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Qcm90b3R5cGUpIH07CiAK
IFNoYWRvd1JlYWxtUHJvdG90eXBlOjpTaGFkb3dSZWFsbVByb3RvdHlwZShWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3BhcnNlQXJyYXlWYWx1
ZU1hcC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVl
TWFwLmNwcAppbmRleCAxNjE1N2NmMDdlMGVhNmFjMGY1MDg5YTczNWFhZTMzYmZiNmQxMGU1Li44
ZGQ2YmQzMzJmYmQyMzBkOTBlYTA1NDk3NDcwNzA5YmNhMTg0ZDJhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcApAQCAt
MzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNwYXJz
ZUFycmF5VmFsdWVNYXA6OnNfaW5mbyA9IHsgIlNwYXJzZUFycmF5VmFsdWVNYXAiLCBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNwYXJzZUFycmF5VmFsdWVN
YXApIH07Citjb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAi
U3BhcnNlQXJyYXlWYWx1ZU1hcCJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTcGFyc2VBcnJheVZhbHVlTWFwKSB9OwogCiBTcGFyc2VBcnJheVZhbHVl
TWFwOjpTcGFyc2VBcnJheVZhbHVlTWFwKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNwYXJz
ZUFycmF5VmFsdWVNYXBTdHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAKaW5kZXggNDRlZGQxNTZh
ZjA3M2EyMjI1Y2NlNjUwZGU1OWZiZmY2MWI0Y2U3ZC4uZWVlMzM1NzAyYjIxNWYxYTM2YWQ0OGUx
Mjk5ODBkZDRmY2EzMmJkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1N0cmljdEV2YWxBY3RpdmF0aW9uLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmlj
dEV2YWxBY3RpdmF0aW9uKTsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9u
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2YWxBY3RpdmF0aW9uKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaWN0RXZhbEFj
dGl2YXRpb24pIH07CiAKIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpTdHJpY3RFdmFsQWN0aXZhdGlv
bihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1Njb3BlKiBjdXJyZW50U2NvcGUpCiAg
ICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUsIGN1cnJlbnRTY29wZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCA5MmRjOTQ2
OWQyYTg0YzU0OTIyMGUyMWY1ZjE2Zjc3YTAwNTVmZDg1Li45MmZlMzkyZDY4YzRmMmEyODBjZjQ5
MmEyY2E2Yzg2Mjg2ZDhlY2I5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBAIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKHN0cmluZ0Zyb21Db2RlUG9pbnQpOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cmluZ0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJG
dW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZzdHJpbmdDb25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ0NvbnN0cnVjdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIFN0cmluZ0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJf
cywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07CiAKIC8qIFNv
dXJjZSBmb3IgU3RyaW5nQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzdHJpbmdDb25zdHJ1Y3Rv
clRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJ
dGVyYXRvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJp
bmdJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggNjE0NGIzMTRkZTBiNDI2YTVjMzZjYmI0ZTU2
M2Q0ZDNiOGEzYTNlMS4uYTZmNzMxZmY2YjExNzIzMDM1ZGU3NTQ0ZGY0M2QzZTk0MTkzMmFjOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nSXRlcmF0b3JQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0
ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJT
dHJpbmcgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3IiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Ry
aW5nSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHZvaWQgU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCmluZGV4
IDYxYmUzMTkyMWQwODI1MzhlZTU5NzdmYmM2OTk2NTBmMTA0ZjY4NGIuLjYwNWNjNDg2MjVlMDQ1
YjZiZWJkYWI3NmRlNjdhMDY5NzA4MmMzNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcApAQCAtMjksNyArMjksNyBAQCBuYW1lc3BhY2UgSlND
IHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmluZ09iamVj
dCk7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdPYmplY3Q6OnNfaW5mbyA9IHsgIlN0cmluZyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Ry
aW5nT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAi
U3RyaW5nIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFN0cmluZ09iamVjdCkgfTsKIAogU3RyaW5nT2JqZWN0OjpTdHJpbmdPYmplY3QoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCmlu
ZGV4IGYzYjM4M2RjYmE0MjUzYTRhYzkyNTU4NGQxOWJjODA3NmI5NGE1NGEuLjI0ZjFlMTY1Mzkz
MjhkOGY5YTg5MmJkZDYwOTU0ZmY1MTQwZmFmY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcApAQCAtODUsNyArODUsNyBAQCBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihzdHJpbmdQcm90b0Z1bmNJdGVyYXRvcik7CiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTdHJpbmciLCAmU3RyaW5nT2JqZWN0OjpzX2luZm8sICZzdHJpbmdQcm90b3R5cGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmciX3MsICZT
dHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0cmluZ1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBTdHJp
bmdDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHN0cmluZ1Byb3RvdHlwZVRhYmxlCkBAIC0xNjIx
LDcgKzE2MjEsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgdG9Mb2NhbGVDYXNlKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSogY2FsbAogICAgIGF1dG8gY29udmVydENh
c2UgPSBtb2RlID09IENhc2VDb252ZXJzaW9uTW9kZTo6TG93ZXIgPyB1X3N0clRvTG93ZXIgOiB1
X3N0clRvVXBwZXI7CiAgICAgYXV0byBzdGF0dXMgPSBjYWxsQnVmZmVyUHJvZHVjaW5nRnVuY3Rp
b24oY29udmVydENhc2UsIGJ1ZmZlciwgU3RyaW5nVmlldyB7IHMgfS51cGNvbnZlcnRlZENoYXJh
Y3RlcnMoKS5nZXQoKSwgcy5sZW5ndGgoKSwgbG9jYWxlLnV0ZjgoKS5kYXRhKCkpOwogICAgIGlm
IChVX0ZBSUxVUkUoc3RhdHVzKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgdV9lcnJvck5hbWUoc3RhdHVzKSk7CisgICAgICAgIHJldHVybiB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsIFN0cmluZyB7IHVfZXJyb3JOYW1l
KHN0YXR1cykgfSk7CiAKICAgICAvLyAxOC4gUmV0dXJuIEwuCiAgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyhidWZmZXIpKSkp
OwpAQCAtMTcxOCw3ICsxNzE4LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHN0cmluZ1By
b3RvRnVuY1N0YXJ0c1dpdGgsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKICAgICBib29s
IGlzUmVndWxhckV4cHJlc3Npb24gPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBhMCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgaWYg
KGlzUmVndWxhckV4cHJlc3Npb24pCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGds
b2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dp
dGggY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBlLnN0YXJ0
c1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIl9zKTsKIAogICAgIFN0cmluZyBzZWFyY2hTdHJpbmcg
PSBhMC50b1dURlN0cmluZyhnbG9iYWxPYmplY3QpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwpAQCAtMTc1Miw3ICsxNzUyLDcgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY0VuZHNXaXRoLCAoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwKICAgICBib29sIGlzUmVndWxhckV4cHJlc3Npb24gPSBpc1JlZ0V4cCh2
bSwgZ2xvYmFsT2JqZWN0LCBhMCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5j
b2RlZEpTVmFsdWUoKSk7CiAgICAgaWYgKGlzUmVndWxhckV4cHJlc3Npb24pCi0gICAgICAgIHJl
dHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBT
dHJpbmcucHJvdG90eXBlLmVuZHNXaXRoIGNhbm5vdCBiZSBhIFJlZ0V4cCIpOworICAgICAgICBy
ZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiQXJndW1lbnQgdG8g
U3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0aCBjYW5ub3QgYmUgYSBSZWdFeHAiX3MpOwogCiAgICAg
U3RyaW5nIHNlYXJjaFN0cmluZyA9IGEwLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAg
UkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CkBAIC0xODAyLDcg
KzE4MDIsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jSW5jbHVk
ZXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LAogICAgIGJvb2wgaXNSZWd1bGFyRXhw
cmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBnbG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZf
RVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhw
cmVzc2lvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgIkFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90IGJlIGEg
UmVnRXhwIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
c2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBlLmluY2x1ZGVzIGNhbm5vdCBiZSBh
IFJlZ0V4cCJfcyk7CiAKICAgICBTdHJpbmcgc2VhcmNoU3RyaW5nID0gYTAudG9XVEZTdHJpbmco
Z2xvYmFsT2JqZWN0KTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNW
YWx1ZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVj
dHVyZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwCmlu
ZGV4IGI2MGUzY2IwZTNiZjU2Mzg3MzJmODVjMGRjYjA3YzM5NmQzZmQ2OGIuLjcyNTg5N2NhNDgy
OGE1MDQ4Yjc4MDAwNWYxMjZjNGZjNGM1OTcyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3RydWN0dXJlLmNwcApAQCAtMjM0LDcgKzIzNCw3IEBAIFN0cnVjdHVyZTo6U3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90
b3R5cGUsIGNvCiAgICAgdmFsaWRhdGVGbGFncygpOwogfQogCi1jb25zdCBDbGFzc0luZm8gU3Ry
dWN0dXJlOjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1
Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1Y3R1cmUpIH07CiAKIFN0cnVjdHVyZTo6U3RydWN0
dXJlKFZNJiB2bSwgQ3JlYXRpbmdFYXJseUNlbGxUYWcpCiAgICAgOiBKU0NlbGwoQ3JlYXRpbmdF
YXJseUNlbGwpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1
Y3R1cmVDaGFpbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVD
aGFpbi5jcHAKaW5kZXggY2E2MGEyZmJmOWIwZWMyZjU2ZDUyOWM2ZTAwZjJmZTIzNGIzMmRjYS4u
YmJiMGIzMWEwODkzNjU1MThkZjhmMGY4Yjk4YzIxMWY4ZjkwNGRiZiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcApAQCAtMzAsNyArMzAs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKICAgICAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVD
aGFpbjo6c19pbmZvID0geyAiU3RydWN0dXJlQ2hhaW4iLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZUNoYWluKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFN0cnVjdHVyZUNoYWluOjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVDaGFpbiJfcywgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVDaGFpbikg
fTsKIAogU3RydWN0dXJlQ2hhaW46OlN0cnVjdHVyZUNoYWluKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFN0cnVjdHVyZUlEKiB2ZWN0b3IpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJl
RGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0
YS5jcHAKaW5kZXggYzIyYWFmYjg2M2JlZTdjMjUxM2VhMGVmNmQ2Y2EzZGQ4ZmQyYzNmNC4uNzM2
MzdkODRjZGNkNjI2OGE3OGRhYzNjZjMzYzAyNDI5YTEzZWUyOCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcApAQCAtMzksNyAr
MzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZVJh
cmVEYXRhOjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVSYXJlRGF0YSIsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlUmFyZURhdGEpIH07Citjb25z
dCBDbGFzc0luZm8gU3RydWN0dXJlUmFyZURhdGE6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZVJhcmVE
YXRhIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0
cnVjdHVyZVJhcmVEYXRhKSB9OwogCiBTdHJ1Y3R1cmUqIFN0cnVjdHVyZVJhcmVEYXRhOjpjcmVh
dGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N5bWJvbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2wuY3BwCmlu
ZGV4IGMzZGIxOTZmYjkzNDZlMDZlMGM1YzFmMGZlNDliNDFiZjBhM2Y3ZWIuLjA3NTg5NDE1ZDkx
MThkYjY1ZjI1ZmRlMGY1NzJlYWExMjg2YmM5NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3ltYm9sLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFN5bWJvbDo6c19pbmZvID0geyAic3ltYm9sIiwgbnVsbHB0ciwgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2wpIH07Citjb25zdCBDbGFz
c0luZm8gU3ltYm9sOjpzX2luZm8gPSB7ICJzeW1ib2wiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sKSB9OwogCiBTeW1ib2w6OlN5bWJvbChW
TSYgdm0pCiAgICAgOiBCYXNlKHZtLCB2bS5zeW1ib2xTdHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggYzVkMDFiNDQzNWJhN2UxYjE5NTQ3MDI5MDk5NGJmMzg2Mzk0YjljOC4uMDZiZjlkNGE2NWI1
ZTU0YWU5M2E1YWRjNmFlZWFhYzEyYTIxZGZkZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU3ltYm9sQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBu
YW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KFN5bWJvbENvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIFN5bWJvbENvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZzeW1ib2xDb25zdHJ1Y3Rv
clRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbENvbnN0cnVjdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgJnN5bWJvbENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
U3ltYm9sQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzeW1ib2xDb25zdHJ1Y3RvclRhYmxlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sT2JqZWN0LmNwcAppbmRleCA3
NDc2OThkYTE4YzEwMDczMjcyZTNhM2YzNDdjYTg5NDZiNjlhMjA1Li5jODU3YmM0MTY3MTNkNzgx
NDZiNzhlYjEyOTZjODRkZWYwYzJlMmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1N5bWJvbE9iamVjdC5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShTeW1ib2xPYmplY3Qp
OwogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sT2JqZWN0OjpzX2luZm8gPSB7ICJTeW1ib2wiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJv
bE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5
bWJvbCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTeW1ib2xPYmplY3QpIH07CiAKIFN5bWJvbE9iamVjdDo6U3ltYm9sT2JqZWN0KFZNJiB2
bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sUHJvdG90eXBlLmNwcAppbmRl
eCBiY2YxNjM1MTY5YzAyNDc3MjRjNzEwMzkxNTUzMWMxMjBkODljMzg4Li4zNWNmMDI3NDc2NzNi
MWI0MGEyMDZiMGYyM2NjN2FlZmRkZmJlNTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oc3ltYm9sUHJvdG9GdW5jVmFsdWVPZik7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU3ltYm9sUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJTeW1ib2wiLCAmQmFzZTo6c19pbmZvLCAmc3ltYm9sUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIFN5bWJvbFByb3RvdHlwZTo6c19pbmZvID0geyAiU3ltYm9sIl9zLCAmQmFzZTo6c19pbmZv
LCAmc3ltYm9sUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3lt
Ym9sUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFN5bWJvbFByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIHN5bWJvbFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TeW1ib2xUYWJsZS5jcHAKaW5kZXggMWMyN2FkNDk2Y2NkNzM3NjEwZmFhMDJhMTkwMzA1
YjZkNTE0ZGYwNi4uYjhiZmM3MmYyNzgwYjAzMDI2NDQ2MzRlMjU5MmQ4YTI3NDI2YjQzMiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcApAQCAtMzcs
NyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFRh
YmxlOjpzX2luZm8gPSB7ICJTeW1ib2xUYWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gU3lt
Ym9sVGFibGU6OnNfaW5mbyA9IHsgIlN5bWJvbFRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbFRhYmxlKSB9OwogCiBERUZJTkVfQUxM
T0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKFN5bWJvbFRhYmxlRW50cnlGYXRFbnRyeSk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5k
YXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5j
cHAKaW5kZXggMDZkZjI1NWI5OTg3YmVmYjNmNDFlNTkxMTU2YWE1MmExZmNiYmRkMi4uM2E1MDNj
ODVkODc0MjI5MWY0N2JkZGRjOWZkM2FmZDFjNWMwYmUyMSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFy
OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXIpIH07Citjb25zdCBDbGFzc0luZm8g
VGVtcG9yYWxDYWxlbmRhcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXIpIH07
CiAKIG5hbWVzcGFjZSBUZW1wb3JhbENhbGVuZGFySW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhw
ciBib29sIHZlcmJvc2UgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwCmluZGV4IGQ5
Nzk5MzE1NjQ2ZDg3NDc1MGNiMDRiZjVlZmQzNTgzNzc3MWFhNzEuLmJlNWQyYzhmODU5OWZkNTll
YjQwZGIxZTUzZGFkM2QyNGI1ZDgxNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcApAQCAt
NDEsNyArNDEsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbENh
bGVuZGFyQ29uc3RydWN0b3JGdW5jRnJvbSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbENhbGVuZGFyQ29u
c3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRl
bXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1w
b3JhbENhbGVuZGFyQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbENhbGVuZGFyQ29u
c3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmNwcAppbmRleCA4ZmIzYTUzNGNkZTQ4YTMz
NDNmODEyOTc2NGY1MmViYzhjN2FiOTM1Li4zMzcwNGIwYzlmOTNiN2MzMzU0MDBjMmQ2ZDgzODY3
OTM5MGRhMmI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbENhbGVuZGFyUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9UZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBzdGF0
aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlR2V0
dGVySWQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2Fs
ZW5kYXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkNhbGVuZGFyIiwgJkJhc2U6OnNf
aW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkNhbGVuZGFy
Il9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07CiAK
IC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHRl
bXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcAppbmRleCA3N2Q5OWFhM2QwYzdmZDgzOTM5
NDE2NjJkMTI1YTFiYjdiZDE5YTBjLi5kN2JlYTQwNjBjY2M1ZTc5ZDY3NTg1M2Y0MDEwOTFkODBj
MTQ5ZWRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bER1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bER1cmF0aW9uLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGlj
IGNvbnN0ZXhwciBkb3VibGUgbmFub3NlY29uZHNQZXJEYXkgPSAyNC4wICogNjAgKiA2MCAqIDEw
MDAgKiAxMDAwICogMTAwMDsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb246OnNf
aW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1w
b3JhbER1cmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvbikgfTsKIAog
VGVtcG9yYWxEdXJhdGlvbiogVGVtcG9yYWxEdXJhdGlvbjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIElTTzg2MDE6OkR1cmF0aW9uJiYgZHVyYXRpb24pCiB7CkBAIC01MTUs
NyArNTE1LDcgQEAgZG91YmxlIFRlbXBvcmFsRHVyYXRpb246OnRvdGFsKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgb3B0aW9uc1ZhbHUKICAgICBKU09iamVjdCogb3B0aW9u
cyA9IGludGxHZXRPcHRpb25zT2JqZWN0KGdsb2JhbE9iamVjdCwgb3B0aW9uc1ZhbHVlKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCAwKTsKIAotICAgIFN0cmluZyB1bml0U3RyaW5n
ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFt
ZXMtPnVuaXQsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIHVuaXRTdHJpbmcg
PSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1l
cy0+dW5pdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkp
OwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIDApOwogCiAgICAgYXV0byB1bml0VHlw
ZSA9IHRlbXBvcmFsVW5pdFR5cGUodW5pdFN0cmluZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmNw
cAppbmRleCBkZDNjZWYxMDU2NjNiNzM4M2ZjOTM4YThkNDY4Yjk3OTZhNThjNjBjLi42MTliZjI3
YjhhZDNlNDlkN2M1ZDUxNWUwMTJkMGQ5YmM4NTk2MTA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rv
ci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04o
dGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVj
dG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvbkNv
bnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0
aW9uQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3Jh
bER1cmF0aW9uQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxEdXJhdGlv
bkNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVy
YXRpb25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxEdXJhdGlvblByb3RvdHlwZS5jcHAKaW5kZXggMGNiNDQyZTI5MGJmOGZhMWEyZDZkZTg4Zjk2
MTlkNzZiMmJhZjNjNC4uMjgyZjg4YWFkMTU4MjA2NjdkYzI2NDc5M2VkNjQ4Yzg1ZmU3MDNiMSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlv
blByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxEdXJhdGlvblByb3RvdHlwZS5jcHAKQEAgLTYyLDcgKzYyLDcgQEAgc3RhdGljIEpTQ19ERUNM
QVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZUdldHRlckJsYW5rKTsK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5EdXJhdGlvbiIsICZCYXNlOjpzX2luZm8sICZk
dXJhdGlvblByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsRHVyYXRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuRHVyYXRpb24iX3MsICZCYXNlOjpzX2lu
Zm8sICZkdXJhdGlvblByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxE
dXJhdGlvblByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGR1cmF0aW9uUHJvdG90eXBlVGFibGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnQuY3BwCmlu
ZGV4IDZmNjhjZjBmZjNjZDJjODU3MTM3NGFiYjNlMDJjNzEzYzIwNWZmNTAuLjVhODUxOWQzY2I3
YTJhNzA4NDczZjQ3OWUyN2QwMGMxZTM4NWUzN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcApAQCAtNDIsNyArNDIsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudDo6c19pbmZv
ID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnQpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJ
bnN0YW50OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxJbnN0YW50KSB9OwogCiBTdHJ1Y3R1
cmUqIFRlbXBvcmFsSW5zdGFudDo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggODYxZDgwYzE4ODdlMjY1MGYwY2Q3NzJhNzM3NWY5OWNkNjRhZTUzZi4uM2Qy
YjEwZjk2OWFiYTQ0ZjY0YWNjMWM0YWVkYjE0NThjNTIxMmVhYSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVj
dG9yLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
Tih0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxJbnN0YW50Q29uc3RydWN0
b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnRDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRD
b25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5z
dGFudENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFudENvbnN0
cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3JUYWJsZQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFu
dFByb3RvdHlwZS5jcHAKaW5kZXggYTQyNmJlMDZmZmQzOTQxMDYzYzFmZjJiNTE4N2I5OWM2MTU2
NWMzMy4uNzMwMWJmMzE0NzUzZDgxMDljMWJiNWFlZmJiNmVhNjA3ZGVjN2JiZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQ
cm90b3R5cGUuY3BwCkBAIC01NSw3ICs1NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
R0VUVEVSKHRlbXBvcmFsSW5zdGFudFByb3RvdHlwZUdldHRlckVwb2NoTmFub3NlY29uZHMpCiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5JbnN0YW50IiwgJkJhc2U6OnNfaW5mbywgJmluc3Rh
bnRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbElu
c3RhbnRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5JbnN0YW50Il9zLCAmQmFzZTo6c19pbmZvLCAmaW5z
dGFudFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFs
SW5zdGFudFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbEluc3RhbnRQcm90
b3R5cGUubHV0LmgKIEBiZWdpbiBpbnN0YW50UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcAppbmRleCA1ZGFlOThjYzY0MGZlOTJj
NjhkMmMxNTAxMGY1NzRmMmI3Njk0Y2I5Li4zZTVmNTRkNjlkZDIwNTI2N2QzZGRjOWY5MzBlZjhl
NWIzNWQyYTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbE5vdy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxO
b3cuY3BwCkBAIC00OCw3ICs0OCw3IEBAIG5hbWVzcGFjZSBKU0MgewogQGVuZAogKi8KIAotY29u
c3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2luZm8gPSB7ICJUZW1wb3JhbC5Ob3ciLCAmQmFz
ZTo6c19pbmZvLCAmdGVtcG9yYWxOb3dUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbE5vdykgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbE5vdzo6c19pbmZvID0g
eyAiVGVtcG9yYWwuTm93Il9zLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxOb3dUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE5vdykgfTsKIAogVGVtcG9yYWxOb3c6
OlRlbXBvcmFsTm93KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZt
LCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bE9iamVjdC5jcHAKaW5kZXggM2NkMmZhMzczM2JhNzAwZmI2YWU3MmRiMDk5MjA0ZTE5Mzg3YmEy
MC4uNjZiOGI5NjVjOWVmMjljZTA1NWZlM2Y5MTk1ZmU0Y2QyYWQzMDIyNCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcApAQCAtMTE2LDcg
KzExNiw3IEBAIG5hbWVzcGFjZSBKU0MgewogQGVuZAogKi8KIAotY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1wb3JhbCIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsT2Jq
ZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1w
b3JhbCJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxPYmplY3QpIH07CiAKIFRlbXBvcmFsT2JqZWN0OjpU
ZW1wb3JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2
bSwgc3RydWN0dXJlKQpAQCAtMjMwLDcgKzIzMCw3IEBAIHN0ZDo6b3B0aW9uYWw8VGVtcG9yYWxV
bml0PiB0ZW1wb3JhbExhcmdlc3RVbml0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNM
QVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIFN0cmluZyBsYXJnZXN0VW5pdCA9IGludGxTdHJp
bmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYXJnZXN0
VW5pdCwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgbGFyZ2VzdFVuaXQgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+
bGFyZ2VzdFVuaXQsIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVs
bCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBzdGQ6Om51bGxvcHQpOwogCiAg
ICAgaWYgKCFsYXJnZXN0VW5pdCkKQEAgLTI2MCw3ICsyNjAsNyBAQCBzdGQ6Om9wdGlvbmFsPFRl
bXBvcmFsVW5pdD4gdGVtcG9yYWxTbWFsbGVzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSgogICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3Bl
ID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBTdHJpbmcgc21hbGxlc3RVbml0ID0g
aW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMt
PnNtYWxsZXN0VW5pdCwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgc21hbGxl
c3RVbml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3Bl
cnR5TmFtZXMtPnNtYWxsZXN0VW5pdCwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlM
aXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVs
bG9wdCk7CiAKICAgICBpZiAoIXNtYWxsZXN0VW5pdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlLmNwcAppbmRleCBkYTJiYjc0ODA3MDdl
YTQ1ODk3ZGZiZDdiN2VhMjYxODg2Yzc3ZjBmLi5iYTJjZGI4MjhjNDRlODUxNTk2YWUzNDQ5M2Y2
MzdiOGQzMGZmYzA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbFBsYWluRGF0ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpbkRhdGUuY3BwCkBAIC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBUZW1wb3Jh
bFBsYWluRGF0ZUludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFs
c2U7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZTo6c19pbmZvID0geyAi
T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShUZW1wb3JhbFBsYWluRGF0ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWlu
RGF0ZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlKSB9OwogCiBUZW1wb3Jh
bFBsYWluRGF0ZSogVGVtcG9yYWxQbGFpbkRhdGU6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBJU084NjAxOjpQbGFpbkRhdGUmJiBwbGFpbkRhdGUpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRl
Q29uc3RydWN0b3IuY3BwCmluZGV4IDM5ZTYwZjE1NzFjYTE5NmE5ZjcwOWZhNzZmMGZhZTkzYjRi
ZjBkM2UuLjU0YzVjOTZmYTViNjliMmI4MDk3ZWYxYzI5MmFiODFkZTI5NjRiZTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxh
aW5EYXRlQ29uc3RydWN0b3IuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3JGdW5jQ29tcGFyZSk7
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpbkRhdGVD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9y
YWxQbGFpbkRhdGVDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9y
YWxQbGFpbkRhdGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sICZ0ZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291
cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9y
YWxQbGFpbkRhdGVDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKaW5kZXgg
Y2Q4ODMwYmJhMjk0ZWU3M2VkODgzNGI2ZWI5Yjg2NDdiNjkzYTAyOC4uYmZlYTkwNzQ5ZmZmOGZh
YzdjMWVlOTAzNzY2YzM4MTc2NDczZjBhMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcApAQCAt
NDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFBs
YWluRGF0ZVByb3RvdHlwZUdldHRlckRheSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFs
LlBsYWluRGF0ZSIsICZCYXNlOjpzX2luZm8sICZwbGFpbkRhdGVQcm90b3R5cGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVtcG9yYWwuUGxhaW5EYXRlIl9zLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5EYXRlUHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGVQcm90
b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUubHV0
LmgKIEBiZWdpbiBwbGFpbkRhdGVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWUuY3BwCmluZGV4IGYzM2Y2YWZmYjkw
ODBmNjAwODhkYzEwNGE5NDU0ZjIyM2JlYjk2ZTUuLmFhNWE1OGMwNjc2ZjQwMTQxMDE2ZjQyZjU0
OTQ4OGM3MjMxMzk1ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsUGxhaW5UaW1lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbFBsYWluVGltZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRlbXBv
cmFsUGxhaW5UaW1lSW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBm
YWxzZTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lOjpzX2luZm8gPSB7
ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFRlbXBvcmFsUGxhaW5UaW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxh
aW5UaW1lOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWUpIH07CiAKIFRlbXBv
cmFsUGxhaW5UaW1lKiBUZW1wb3JhbFBsYWluVGltZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIElTTzg2MDE6OlBsYWluVGltZSYmIHBsYWluVGltZSkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lQ29uc3Ry
dWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDY3Y2ZjOWE1MGE2ZmJmZjk4MmYyODA2NmNlYTc3MmEx
OGMxMzFhOC4uN2YyOGE4MTFmOTAyODQ5MDQ3ZWM5OTNjMDUyNDhmY2Y1NjYwMmFkMCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQ
bGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04odGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3RvckZ1bmNDb21wYXJl
KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluVGlt
ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbFBsYWluVGltZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1w
b3JhbFBsYWluVGltZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFRlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1w
b3JhbFBsYWluVGltZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAppbmRl
eCBlNDk2N2Q0Zjk0OTU4ZDNjYzNhMmI3NTdjNzAzYzFiODQ4NGRkNTQ4Li5mYzg4ZjcyODQxYTZl
ZTk5OTE0ODYxNDVjZWM1ZGMyODQ1MjgwOWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwCkBA
IC01OSw3ICs1OSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFs
UGxhaW5UaW1lUHJvdG90eXBlR2V0dGVyQ2FsZW5kYXIpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZW1wb3JhbC5QbGFpblRpbWUiLCAmQmFzZTo6c19pbmZvLCAmcGxhaW5UaW1lUHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlbXBvcmFsLlBsYWluVGltZSJfcywgJkJhc2U6OnNfaW5mbywgJnBsYWluVGltZVBy
b3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5U
aW1lUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsUGxhaW5UaW1lUHJvdG90
eXBlLmx1dC5oCiBAYmVnaW4gcGxhaW5UaW1lUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAKaW5kZXggMTAxYWQ3
NmU3NjY2NDA3NjY5NTkwNjVhYTVjNzRkZTY5NmFjODFlNC4uMGM2NWMzOGIxOTRlZDY4Yjg5NWYw
YTUxYzQ3M2ZjMWEwZmY2YjNjNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lOjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFRlbXBvcmFsVGltZVpvbmUpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9u
ZTo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmUpIH07CiAKIFRlbXBvcmFsVGlt
ZVpvbmUqIFRlbXBvcmFsVGltZVpvbmU6OmNyZWF0ZUZyb21JRChWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBUaW1lWm9uZUlEIGlkZW50aWZpZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9y
LmNwcAppbmRleCBkZDc1M2MwMzFlMWNkYjdkYTIwMzJjZTg4MDgwYTMzOWVjNGI0MGFmLi40M2M3
YTA2M2RkMmUzOTExOGY4NmYyNGFlZWE5OTMxMjBkZGVlMmQwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1
Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04odGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yRnVuY0Zyb20pOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmdGVtcG9yYWxUaW1l
Wm9uZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9y
YWxUaW1lWm9uZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpv
bmVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9u
OjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IpIH07CiAKIC8qIFNv
dXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9y
YWxUaW1lWm9uZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAKaW5kZXggNmY1
NzU1NzllM2VhZmI2MTM5M2YxNTFjNmJmYmI0YTNjYWNmN2E4MS4uYjNiNDM5MzdjYmU3YzZkM2M1
NDlhNWE2MzE5OTA5ZWIwMDA4YTBmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHAKQEAgLTQzLDcg
KzQzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxUaW1lWm9u
ZVByb3RvdHlwZUdldHRlcklkKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5UaW1lWm9u
ZSIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVab25lUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1w
b3JhbC5UaW1lWm9uZSJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJv
dG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUubHV0
LmgKIEBiZWdpbiB0ZW1wb3JhbFRpbWVab25lUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVQcm9maWxlci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UeXBlUHJvZmlsZXIuY3BwCmluZGV4IDdlMWJjZTI5YmFmZWZm
YmNhNjRmYzU0NWVhNGFiODhjOGVlMWZkNjIuLjVmYWIxYjgzMDUzYzM4MmViYTA4MmE5NGFkOGU2
M2Q2OWY1NzQ1OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5
cGVQcm9maWxlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVBy
b2ZpbGVyLmNwcApAQCAtNTMsOSArNTMsOSBAQCB2b2lkIFR5cGVQcm9maWxlcjo6bG9nVHlwZXNG
b3JUeXBlTG9jYXRpb24oVHlwZUxvY2F0aW9uKiBsb2NhdGlvbiwgVk0mIHZtKQogCiAgICAgZGF0
YUxvZygiXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFZhcmlhYmxlSUQgPT0gVHlwZVByb2ZpbGVy
UmV0dXJuU3RhdGVtZW50ID8gIltSZXR1cm4gU3RhdGVtZW50XSIgOiAiW05vcm1hbCBTdGF0ZW1l
bnRdIiwgIlxuIik7CiAKLSAgICBkYXRhTG9nKCJcdFx0I0xvY2FsI1xuXHRcdCIsIGxvY2F0aW9u
LT5tX2luc3RydWN0aW9uVHlwZVNldC0+ZHVtcFR5cGVzKCkucmVwbGFjZSgiXG4iLCAiXG5cdFx0
IiksICJcbiIpOworICAgIGRhdGFMb2coIlx0XHQjTG9jYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1f
aW5zdHJ1Y3Rpb25UeXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiJfcywgIlxuXHRcdCJf
cyksICJcbiIpOwogICAgIGlmIChsb2NhdGlvbi0+bV9nbG9iYWxUeXBlU2V0KQotICAgICAgICBk
YXRhTG9nKCJcdFx0I0dsb2JhbCNcblx0XHQiLCBsb2NhdGlvbi0+bV9nbG9iYWxUeXBlU2V0LT5k
dW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIsICJcblx0XHQiKSwgIlxuIik7CisgICAgICAgIGRhdGFM
b2coIlx0XHQjR2xvYmFsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQtPmR1bXBU
eXBlcygpLnJlcGxhY2UoIlxuIl9zLCAiXG5cdFx0Il9zKSwgIlxuIik7CiB9CiAKIHZvaWQgVHlw
ZVByb2ZpbGVyOjppbnNlcnROZXdMb2NhdGlvbihUeXBlTG9jYXRpb24qIGxvY2F0aW9uKQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVNldC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcAppbmRleCBkODhiYTI4YzNmMzA5
MjcyZTNkYTJlYzQyNmI5MzllZDFlOTk1MWNmLi43MzNmOTgxMmYxOGU4ZjYxOGU0ZWE5MDdmOTFj
YjI1M2Y3YzA4ZWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
eXBlU2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNw
cApAQCAtMzQ4LDcgKzM0OCw3IEBAIFN0cmluZyBTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNo
KCkKICAgICBidWlsZGVyLmFwcGVuZCgnOicpOwogICAgIGZvciAoYXV0byYga2V5IDogbV9maWVs
ZHMpIHsKICAgICAgICAgU3RyaW5nIHByb3BlcnR5ID0ga2V5LmdldCgpOwotICAgICAgICBwcm9w
ZXJ0eS5yZXBsYWNlKCI6IiwgIlxcOiIpOyAvLyBFbnN1cmUgdGhhdCBoYXNoKHsiZm9vOiIsICJi
YXIifSkgIT0gaGFzaCh7ImZvbyIsICI6YmFyIn0pIGJlY2F1c2Ugd2UncmUgdXNpbmcgY29sb25z
IGFzIGEgc2VwYXJhdG9yIGFuZCBjb2xvbnMgYXJlIGxlZ2FsIGNoYXJhY3RlcnMgaW4gZmllbGQg
bmFtZXMgaW4gSlMuCisgICAgICAgIHByb3BlcnR5LnJlcGxhY2UoIjoiX3MsICJcXDoiX3MpOyAv
LyBFbnN1cmUgdGhhdCBoYXNoKHsiZm9vOiIsICJiYXIifSkgIT0gaGFzaCh7ImZvbyIsICI6YmFy
In0pIGJlY2F1c2Ugd2UncmUgdXNpbmcgY29sb25zIGFzIGEgc2VwYXJhdG9yIGFuZCBjb2xvbnMg
YXJlIGxlZ2FsIGNoYXJhY3RlcnMgaW4gZmllbGQgbmFtZXMgaW4gSlMuCiAgICAgICAgIGJ1aWxk
ZXIuYXBwZW5kKHByb3BlcnR5KTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9XZWFrTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IDdlYjBmZTQ1NTQxNzlh
NTE0YjMzMjhmM2QyZDc2MjQ0ZGJhNGVlNGYuLjE3N2QxZTgxNzM3OGExYzE4MjYyNWI5MGE5Yzgw
NDczOGQ4ZjMzZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha01hcENvbnN0cnVjdG9yLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrTWFwQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKIAogdm9p
ZCBXZWFrTWFwQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgV2Vha01hcFByb3Rv
dHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvV2Vha01hcFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrTWFwUHJvdG90eXBlLmNwcAppbmRleCBiODU2ZDc2MTM1YmY2MWJmYTNkMzgzNGI2Y2Uw
NTNkN2JjNGY2ZjgzLi4xNDQ0Y2Y2YzgyNTc4Mjc4N2Q5YjIwZWRjZWYzNjZiNTVhYjU4Mjg4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBl
LmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQVNDSUlMaXRl
cmFsIFdlYWtNYXBOb25PYmplY3RLZXlFcnJvciB7ICJBdHRlbXB0ZWQgdG8gc2V0IGEgbm9uLW9i
amVjdCBrZXkgaW4gYSBXZWFrTWFwIl9zIH07CiAKLWNvbnN0IENsYXNzSW5mbyBXZWFrTWFwUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIFdlYWtNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYWtNYXAiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcFByb3Rv
dHlwZSkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jV2Vh
a01hcERlbGV0ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNX
ZWFrTWFwR2V0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0b3IuY3BwCmluZGV4IGZiZmFmMzVjNzhiZjZlOTY4NzFj
YzBkNzQxMDFmY2ZiYjA3ZGU5ODYuLmY1NGRhMjU1OWM3ZGViYWI2MzBiMGJmMDJjOTQwNjc3MjI5
M2E2YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmpl
Y3RSZWZDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
V2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWFrT2JqZWN0UmVmQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtP
YmplY3RSZWZDb25zdHJ1Y3RvcikgfTsKIAogdm9pZCBXZWFrT2JqZWN0UmVmQ29uc3RydWN0b3I6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgV2Vha09iamVjdFJlZlByb3RvdHlwZSogcHJvdG90eXBl
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVj
dFJlZlByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2Jq
ZWN0UmVmUHJvdG90eXBlLmNwcAppbmRleCA4M2EyMDQ2MDlkOWFkN2JhZThhYTg4YjEyMjhjMWNi
NzY0OWVmODA4Li44Mjk0YWE1MjFkMmFjNmE4YTE0YWJiNTZlNTYyNzU4MTZjNjE2MDM5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90
eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVm
UHJvdG90eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RSZWZQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYWtSZWYi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdl
YWtPYmplY3RSZWZQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha09iamVjdFJlZlBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1JlZiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrT2JqZWN0UmVmUHJvdG90eXBlKSB9Owog
CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrUmVmRGVyZWYp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0
cnVjdG9yLmNwcAppbmRleCBjOGRhYWI0NmIwM2RiMDNlMGU3YWFhZjcxMGY5MTM0ODQxNWY2YWIw
Li44NzRjYTk2YjdhOWRkMWRlN2YzM2Y3NTQ2MDQ4NWNlZjQ0NWM0MDhiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKQEAg
LTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWFr
U2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrU2V0Q29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gV2Vha1NldENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWFrU2V0Q29uc3RydWN0b3IpIH07CiAKIHZvaWQgV2Vha1NldENvbnN0cnVjdG9yOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0sIFdlYWtTZXRQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtTZXRQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAKaW5k
ZXggYzE3ZmZjZjA3YjY4MWVjOGFhZGZjOGExOWZmMzc1MDAwMDhjZTBkNy4uNDJhMjJhZjgwMjY4
NWIyNWY2NmJhNDA5NDlkMjEyMzhiNWUxOWMyYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFt
ZXNwYWNlIEpTQyB7CiAKIGNvbnN0IEFTQ0lJTGl0ZXJhbCBXZWFrU2V0Tm9uT2JqZWN0VmFsdWVF
cnJvciB7ICJBdHRlbXB0ZWQgdG8gYWRkIGEgbm9uLW9iamVjdCB2YWx1ZSB0byBhIFdlYWtTZXQi
X3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtTZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldl
YWtTZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYWtTZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha1NldFByb3RvdHlw
ZTo6c19pbmZvID0geyAiV2Vha1NldCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrU2V0UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrU2V0RGVsZXRlKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHByb3RvRnVuY1dlYWtTZXRIYXMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RSZWdFeHAuY3BwCmluZGV4IDg0YmM3Y2YyZGJhNmU2MWYzNGZhZTVjNGVkZTMz
Yzc3MzUwNGFkMTIuLjdkMjZiMTZiZjlmM2ZjYmQzMGFlZWZkMDZjZmRkOTk5ODVjMDEwNTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0UmVnRXhwLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAKQEAgLTEyMiw3ICsxMjIsNyBAQCBwcml2
YXRlOgogfTsKIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEdsb2JhbE9iamVj
dCwgSlNHbG9iYWxPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0OjpzX2lu
Zm8gPSB7ICJnbG9iYWwiLCAmSlNHbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8g
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJnbG9iYWwiX3MsICZKU0dsb2JhbE9iamVjdDo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbE9iamVjdCkg
fTsKIAogR2xvYmFsT2JqZWN0OjpHbG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIGFyZ3VtZW50cykKICAgICA6IEpTR2xvYmFsT2Jq
ZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9v
bHMvRnVuY3Rpb25BbGxvd2xpc3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1
bmN0aW9uQWxsb3dsaXN0LmNwcAppbmRleCBhYWNkNzVkYTg3YWI5M2MyZDQwYmY3YmVjNTkxNmQ3
YzY3MDY5NTc5Li4yNDJmMTA3Nzg0NGQ0NzYxZDQwODg4ZGVhYjRiYjFkYTc4MjExNTZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3QuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAK
QEAgLTQ0LDcgKzQ0LDcgQEAgRnVuY3Rpb25BbGxvd2xpc3Q6OkZ1bmN0aW9uQWxsb3dsaXN0KGNv
bnN0IGNoYXIqIGZpbGVuYW1lKQogICAgIGlmICghZikgewogICAgICAgICBpZiAoZXJybm8gPT0g
RU5PRU5UKSB7CiAgICAgICAgICAgICBtX2hhc0FjdGl2ZUFsbG93bGlzdCA9IHRydWU7Ci0gICAg
ICAgICAgICBtX2VudHJpZXMuYWRkKGZpbGVuYW1lKTsKKyAgICAgICAgICAgIG1fZW50cmllcy5h
ZGQoU3RyaW5nIHsgZmlsZW5hbWUgfSk7CiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgZGF0
YUxvZ0YoIkZhaWxlZCB0byBvcGVuIGZpbGUgJXMuIERpZCB5b3UgYWRkIHRoZSBmaWxlLXJlYWQt
ZGF0YSBlbnRpdGxlbWVudCB0byBXZWJQcm9jZXNzLnNiPyBFcnJvciBjb2RlOiAlc1xuIiwgZmls
ZW5hbWUsIHNhZmVTdHJlcnJvcihlcnJubykuZGF0YSgpKTsKICAgICAgICAgcmV0dXJuOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9GdW5jdGlvbk92ZXJyaWRlcy5jcHAKaW5k
ZXggN2EzYjM3OTI0YmU1NjA1NDdmYzJkZmZlMzMyZDNlNjZiZjhhOTVmNi4uOTU2ODZiYTE5MjBi
YjBlYjEyNzQwNGYxMzkxYmIwMmY1YmIxNjA4OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdG9vbHMvRnVuY3Rpb25PdmVycmlkZXMuY3BwCkBAIC0xMzAsOCArMTMwLDggQEAgc3Rh
dGljIHZvaWQgaW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyhjb25zdCBTb3VyY2VDb2RlJiBvcmlnQ29k
ZSwgY29uc3QgU3RyaW5nJiBuZXcKICAgICBGdW5jdGlvbk92ZXJyaWRlc0Fzc2VydFNjb3BlIGFz
c2VydFNjb3BlOwogICAgIFN0cmluZyBvcmlnUHJvdmlkZXJTdHIgPSBvcmlnQ29kZS5wcm92aWRl
cigpLT5zb3VyY2UoKS50b1N0cmluZygpOwogICAgIHVuc2lnbmVkIG9yaWdTdGFydCA9IG9yaWdD
b2RlLnN0YXJ0T2Zmc2V0KCk7Ci0gICAgdW5zaWduZWQgb3JpZ0Z1bmN0aW9uU3RhcnQgPSBvcmln
UHJvdmlkZXJTdHIucmV2ZXJzZUZpbmQoImZ1bmN0aW9uIiwgb3JpZ1N0YXJ0KTsKLSAgICB1bnNp
Z25lZCBvcmlnQnJhY2VTdGFydCA9IG9yaWdQcm92aWRlclN0ci5maW5kKCJ7Iiwgb3JpZ1N0YXJ0
KTsKKyAgICB1bnNpZ25lZCBvcmlnRnVuY3Rpb25TdGFydCA9IG9yaWdQcm92aWRlclN0ci5yZXZl
cnNlRmluZCgiZnVuY3Rpb24iX3MsIG9yaWdTdGFydCk7CisgICAgdW5zaWduZWQgb3JpZ0JyYWNl
U3RhcnQgPSBvcmlnUHJvdmlkZXJTdHIuZmluZCgneycsIG9yaWdTdGFydCk7CiAgICAgdW5zaWdu
ZWQgaGVhZGVyTGVuZ3RoID0gb3JpZ0JyYWNlU3RhcnQgLSBvcmlnRnVuY3Rpb25TdGFydDsKICAg
ICBTdHJpbmcgb3JpZ0hlYWRlciA9IG9yaWdQcm92aWRlclN0ci5zdWJzdHJpbmcob3JpZ0Z1bmN0
aW9uU3RhcnQsIGhlYWRlckxlbmd0aCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90b29scy9KU0RvbGxhclZNLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9K
U0RvbGxhclZNLmNwcAppbmRleCAzZmM3MTE4NmJlMjNjNDc4NjE5ZjM3ODUwNmRlNDEyYmJkNTdh
YzY2Li5kMTliMDE3NzllODBjMGI4ZTI5YTE0MzUxMmYyYWE3NDY2OWRmZThjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvSlNEb2xsYXJWTS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pTRG9sbGFyVk0uY3BwCkBAIC0yMDMsNyArMjAzLDcgQEAg
cHJpdmF0ZToKICAgICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNEb2xsYXJWTUNhbGxGcmFt
ZTo6c19pbmZvID0geyAiQ2FsbEZyYW1lIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNQ2FsbEZyYW1lKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTRG9sbGFyVk1DYWxsRnJhbWU6OnNfaW5mbyA9IHsgIkNhbGxGcmFtZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxh
clZNQ2FsbEZyYW1lKSB9OwogCiBjbGFzcyBFbGVtZW50SGFuZGxlT3duZXI7CiBjbGFzcyBSb290
OwpAQCAtMTc4MCwzMiArMTc4MCwzMiBAQCB2b2lkIEpTVGVzdEN1c3RvbUdldHRlclNldHRlcjo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogCiB9CiAKLWNvbnN0IENsYXNzSW5mbyBFbGVtZW50Ojpz
X2luZm8gPSB7ICJFbGVtZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShFbGVtZW50KSB9OwotY29uc3QgQ2xhc3NJbmZvIFJvb3Q6OnNfaW5m
byA9IHsgIlJvb3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFJvb3QpIH07Ci1jb25zdCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8g
PSB7ICJTaW1wbGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFNpbXBsZU9iamVjdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBJbXB1cmVH
ZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVyZUdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW1wdXJlR2V0dGVyKSB9OwotY29uc3QgQ2xh
c3NJbmZvIEN1c3RvbUdldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVyIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0ZXIp
IH07Ci1jb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJy
YXkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFJ1bnRpbWVBcnJheSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8gPSB7ICJF
bGVtZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEVsZW1lbnQpIH07Citjb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9v
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShSb290KSB9OworY29uc3QgQ2xhc3NJbmZvIFNpbXBsZU9iamVjdDo6c19pbmZvID0geyAiU2lt
cGxlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFNpbXBsZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbXB1cmVHZXR0ZXI6
OnNfaW5mbyA9IHsgIkltcHVyZUdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbXB1cmVHZXR0ZXIpIH07Citjb25zdCBDbGFzc0lu
Zm8gQ3VzdG9tR2V0dGVyOjpzX2luZm8gPSB7ICJDdXN0b21HZXR0ZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyKSB9
OworY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFJ1bnRpbWVBcnJheSkgfTsKICNpZiBFTkFCTEUoSklUKQotY29uc3QgQ2xhc3NJbmZvIERPTUpJ
VE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJVE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCAm
RE9NSklUTm9kZTo6Y2hlY2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9N
SklUTm9kZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBET01KSVROb2RlOjpzX2luZm8gPSB7ICJET01K
SVROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCAmRE9NSklUTm9kZTo6Y2hlY2tTdWJD
bGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsKICNlbHNlCi1j
b25zdCBDbGFzc0luZm8gRE9NSklUTm9kZTo6c19pbmZvID0geyAiRE9NSklUTm9kZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9k
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBET01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2Rl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERPTUpJVE5vZGUpIH07CiAjZW5kaWYKLWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXI6OnNf
aW5mbyA9IHsgIkRPTUpJVEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyKSB9OwotY29uc3QgQ2xhc3NJbmZvIERP
TUpJVEdldHRlck5vRWZmZWN0czo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyTm9FZmZlY3RzIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01K
SVRHZXR0ZXJOb0VmZmVjdHMpIH07Ci1jb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQ29tcGxl
eDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQ29tcGxleCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyQ29tcGxleCkgfTsK
LWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJCYXNlSlNPYmplY3Q6OnNfaW5mbyA9IHsgIkRP
TUpJVEdldHRlckJhc2VKU09iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIERPTUpJVEdldHRlcjo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdl
dHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXJOb0VmZmVjdHM6OnNfaW5mbyA9
IHsgIkRPTUpJVEdldHRlck5vRWZmZWN0cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJOb0VmZmVjdHMpIH07Citjb25z
dCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQ29tcGxleDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVy
Q29tcGxleCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShET01KSVRHZXR0ZXJDb21wbGV4KSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdl
dHRlckJhc2VKU09iamVjdDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERP
TUpJVEdldHRlckJhc2VKU09iamVjdCkgfTsKICNpZiBFTkFCTEUoSklUKQotY29uc3QgQ2xhc3NJ
bmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsICZET01KSVRGdW5jdGlvbk9iamVjdDo6Y2hlY2tT
dWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmplY3Qp
IH07Citjb25zdCBDbGFzc0luZm8gRE9NSklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRP
TUpJVEZ1bmN0aW9uT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCAmRE9NSklURnVu
Y3Rpb25PYmplY3Q6OmNoZWNrU3ViQ2xhc3NTbmlwcGV0LCBDUkVBVEVfTUVUSE9EX1RBQkxFKERP
TUpJVEZ1bmN0aW9uT2JqZWN0KSB9OwogI2Vsc2UKLWNvbnN0IENsYXNzSW5mbyBET01KSVRGdW5j
dGlvbk9iamVjdDo6c19pbmZvID0geyAiRE9NSklURnVuY3Rpb25PYmplY3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9u
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2luZm8g
PSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRGdW5jdGlvbk9iamVjdCkgfTsKICNlbmRp
ZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJVENoZWNrSlNDYXN0T2JqZWN0OjpzX2luZm8gPSB7ICJE
T01KSVRDaGVja0pTQ2FzdE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3QpIH07Ci1jb25zdCBD
bGFzc0luZm8gSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyOjpzX2luZm8gPSB7ICJKU1Rlc3RDdXN0
b21HZXR0ZXJTZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdEN1c3RvbUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5m
byBET01KSVRDaGVja0pTQ2FzdE9iamVjdDo6c19pbmZvID0geyAiRE9NSklUQ2hlY2tKU0Nhc3RP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
Q3VzdG9tR2V0dGVyU2V0dGVyOjpzX2luZm8gPSB7ICJKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCi1jb25zdCBDbGFzc0luZm8gU3RhdGljQ3Vz
dG9tQWNjZXNzb3I6OnNfaW5mbyA9IHsgIlN0YXRpY0N1c3RvbUFjY2Vzc29yIiwgJkJhc2U6OnNf
aW5mbywgJnN0YXRpY0N1c3RvbUFjY2Vzc29yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU3RhdGljQ3VzdG9tQWNjZXNzb3IpIH07Ci1jb25zdCBDbGFzc0luZm8gU3RhdGljQ3Vz
dG9tVmFsdWU6OnNfaW5mbyA9IHsgIlN0YXRpY0N1c3RvbVZhbHVlIiwgJkJhc2U6OnNfaW5mbywg
JnN0YXRpY0N1c3RvbVZhbHVlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3Rh
dGljQ3VzdG9tVmFsdWUpIH07Ci1jb25zdCBDbGFzc0luZm8gT2JqZWN0RG9pbmdTaWRlRWZmZWN0
UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzOjpzX2luZm8gPSB7ICJPYmplY3REb2luZ1NpZGVF
ZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGlj
Q3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RE
b2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMpIH07Citjb25zdCBDbGFz
c0luZm8gU3RhdGljQ3VzdG9tQWNjZXNzb3I6OnNfaW5mbyA9IHsgIlN0YXRpY0N1c3RvbUFjY2Vz
c29yIl9zLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdGF0aWNDdXN0b21BY2Nlc3NvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBTdGF0aWNDdXN0b21WYWx1ZTo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tVmFsdWUi
X3MsICZCYXNlOjpzX2luZm8sICZzdGF0aWNDdXN0b21WYWx1ZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFN0YXRpY0N1c3RvbVZhbHVlKSB9OworY29uc3QgQ2xhc3NJbmZvIE9i
amVjdERvaW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1czo6c19pbmZvID0g
eyAiT2JqZWN0RG9pbmdTaWRlRWZmZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzIl9zLCAm
QmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RT
dGF0dXMpIH07CiAKIEVsZW1lbnRIYW5kbGVPd25lciogRWxlbWVudDo6aGFuZGxlT3duZXIoKQog
ewpAQCAtMTg5NSw3ICsxODk1LDcgQEAgcHVibGljOgogICAgIFdhc206OlN0cmVhbWluZ1BhcnNl
ciBtX3N0cmVhbWluZ1BhcnNlcjsKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBXYXNtU3RyZWFtaW5n
UGFyc2VyOjpzX2luZm8gPSB7ICJXYXNtU3RyZWFtaW5nUGFyc2VyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nUGFyc2Vy
KSB9OworY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdQYXJzZXI6OnNfaW5mbyA9IHsgIldh
c21TdHJlYW1pbmdQYXJzZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ1BhcnNlcikgfTsKIAogSlNDX0RFRklORV9I
T1NUX0ZVTkNUSU9OKGZ1bmN0aW9uV2FzbVN0cmVhbWluZ1BhcnNlckFkZEJ5dGVzLCAoSlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpAQCAtMTk5
Niw3ICsxOTk2LDcgQEAgdm9pZCBXYXNtU3RyZWFtaW5nQ29tcGlsZXI6OnZpc2l0Q2hpbGRyZW5J
bXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKIAogREVGSU5FX1ZJU0lUX0NISUxE
UkVOKFdhc21TdHJlYW1pbmdDb21waWxlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBXYXNtU3RyZWFt
aW5nQ29tcGlsZXI6OnNfaW5mbyA9IHsgIldhc21TdHJlYW1pbmdDb21waWxlciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWlu
Z0NvbXBpbGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIFdhc21TdHJlYW1pbmdDb21waWxlcjo6c19p
bmZvID0geyAiV2FzbVN0cmVhbWluZ0NvbXBpbGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdhc21TdHJlYW1pbmdDb21waWxlcikgfTsK
IAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uV2FzbVN0cmVhbWluZ0NvbXBpbGVy
QWRkQnl0ZXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxG
cmFtZSkpCiB7CkBAIC0yMTQzLDcgKzIxNDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihmdW5jdGlvblJlc2V0SklUU2l6ZVN0YXRpc3RpY3MpOwogCiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkVuc3VyZUFycmF5U3RvcmFnZSk7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU0RvbGxhclZNOjpzX2luZm8gPSB7ICJEb2xsYXJWTSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEb2xsYXJWTSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNOjpzX2luZm8gPSB7ICJEb2xsYXJWTSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxh
clZNKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgZG9QcmludChKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSwgYm9vbCBhZGRMaW5lRmVlZCkKIHsK
QEAgLTI3MzAsNyArMjczMCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkhh
dmVBQmFkVGltZSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhCiAgICAgaWYgKCFj
YWxsRnJhbWUtPmFyZ3VtZW50KDApLmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNPYmplY3Qq
IG9iaiA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkuZ2V0T2JqZWN0KCk7CiAgICAgICAgIGlmICgh
b2JqKQotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBz
Y29wZSwgImhhdmVBQmFkVGltZSBleHBlY3RzIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGFuIG9iamVj
dCBpZiBwcm92aWRlZCIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgImhhdmVBQmFkVGltZSBleHBlY3RzIGZpcnN0IGFyZ3VtZW50IHRv
IGJlIGFuIG9iamVjdCBpZiBwcm92aWRlZCJfcyk7CiAgICAgICAgIHRhcmdldCA9IG9iai0+Z2xv
YmFsT2JqZWN0KCk7CiAgICAgfQogCkBAIC0yNzQ5LDcgKzI3NDksNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25Jc0hhdmluZ0FCYWRUaW1lLCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdAogICAgIGlmICghY2FsbEZyYW1lLT5hcmd1bWVudCgwKS5pc1VuZGVmaW5lZCgp
KSB7CiAgICAgICAgIEpTT2JqZWN0KiBvYmogPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmdldE9i
amVjdCgpOwogICAgICAgICBpZiAoIW9iaikKLSAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJpc0hhdmluZ0FCYWRUaW1lIGV4cGVjdHMgZmly
c3QgYXJndW1lbnQgdG8gYmUgYW4gb2JqZWN0IGlmIHByb3ZpZGVkIik7CisgICAgICAgICAgICBy
ZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiaXNIYXZpbmdBQmFk
VGltZSBleHBlY3RzIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCBpZiBwcm92aWRlZCJf
cyk7CiAgICAgICAgIHRhcmdldCA9IG9iai0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgfQogCkBAIC0y
Nzk4LDIwICsyNzk4LDIwIEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVU
RVMoZnVuY3Rpb25DYWxsV2l0aFN0YWNrU2l6ZSwgU1VQUFJFU1NfQVNBCiAjZW5kaWYKIAogICAg
IGlmICghaXNTdXBwb3J0ZWRCeVBsYXRmb3JtKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9y
KGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIk5vdCBzdXBwb3J0ZWQgZm9yIHRoaXMgcGxhdGZv
cm0iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsICJOb3Qgc3VwcG9ydGVkIGZvciB0aGlzIHBsYXRmb3JtIl9zKTsKIAogI2lmIEVOQUJMRShB
U1NFTUJMRVIpCiAgICAgaWYgKGdfanNjQ29uZmlnLmlzUGVybWFuZW50bHlGcm96ZW4oKSB8fCAh
Z19qc2NDb25maWcuZGlzYWJsZWRGcmVlemluZ0ZvclRlc3RpbmcpCi0gICAgICAgIHJldHVybiB0
aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiT3B0aW9ucyBhcmUgZnJvemVu
Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3Bl
LCAiT3B0aW9ucyBhcmUgZnJvemVuIl9zKTsKIAogICAgIGlmIChjYWxsRnJhbWUtPmFyZ3VtZW50
Q291bnQoKSA8IDIpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0
aHJvd1Njb3BlLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiSW52YWxpZCBudW1iZXIg
b2YgYXJndW1lbnRzIl9zKTsKICAgICBKU1ZhbHVlIGFyZzAgPSBjYWxsRnJhbWUtPmFyZ3VtZW50
KDApOwogICAgIEpTVmFsdWUgYXJnMSA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7CiAgICAgaWYg
KCFhcmcwLmlzQ2FsbGFibGUodm0pKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2Jh
bE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzAgc2hvdWxkIGJlIGEgZnVuY3Rpb24iKTsKKyAgICAg
ICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJhcmcwIHNo
b3VsZCBiZSBhIGZ1bmN0aW9uIl9zKTsKICAgICBpZiAoIWFyZzEuaXNOdW1iZXIoKSkKLSAgICAg
ICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJhcmcxIHNo
b3VsZCBiZSBhIG51bWJlciIpOworICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9i
amVjdCwgdGhyb3dTY29wZSwgImFyZzEgc2hvdWxkIGJlIGEgbnVtYmVyIl9zKTsKIAogICAgIEpT
RnVuY3Rpb24qIGZ1bmN0aW9uID0ganNDYXN0PEpTRnVuY3Rpb24qPihhcmcwKTsKICAgICBzaXpl
X3QgZGVzaXJlZFN0YWNrU2l6ZSA9IGFyZzEuYXNOdW1iZXIoKTsKQEAgLTI4MjEsNyArMjgyMSw3
IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25DYWxs
V2l0aFN0YWNrU2l6ZSwgU1VQUFJFU1NfQVNBCiAgICAgdWludDhfdCogZW5kID0gYml0d2lzZV9j
YXN0PHVpbnQ4X3QqPihib3VuZHMuZW5kKCkpOwogICAgIHVpbnQ4X3QqIGRlc2lyZWRTdGFydCA9
IGVuZCArIGRlc2lyZWRTdGFja1NpemU7CiAgICAgaWYgKGRlc2lyZWRTdGFydCA+PSBjdXJyZW50
U3RhY2tQb3NpdGlvbikKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3Qs
IHRocm93U2NvcGUsICJVbmFibGUgdG8gc2V0dXAgZGVzaXJlZCBzdGFjayBzaXplIik7CisgICAg
ICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiVW5hYmxl
IHRvIHNldHVwIGRlc2lyZWQgc3RhY2sgc2l6ZSJfcyk7CiAKICAgICBKU0RvbGxhclZNSGVscGVy
IGhlbHBlcih2bSk7CiAKQEAgLTMwMzUsNyArMzAzNSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTihmdW5jdGlvbkNyZWF0ZVdhc21TdHJlYW1pbmdDb21waWxlckZvckNvbXBpbGUsIChKU0ds
b2JhCiAgICAgYXV0byBjb21waWxlciA9IFdhc21TdHJlYW1pbmdDb21waWxlcjo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIFdhc206OkNvbXBpbGVyTW9kZTo6VmFsaWRhdGlvbiwgbnVsbHB0cik7
CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBhcmdzLmFwcGVuZChjb21waWxl
cik7Ci0gICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdz
LCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiIpOworICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBj
YWxsYmFjaywganNVbmRlZmluZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4i
X3MpOwogICAgIGlmIChVTkxJS0VMWShzY29wZS5leGNlcHRpb24oKSkpCiAgICAgICAgIHNjb3Bl
LmNsZWFyRXhjZXB0aW9uKCk7CiAgICAgY29tcGlsZXItPnN0cmVhbWluZ0NvbXBpbGVyKCkuZmlu
YWxpemUoZ2xvYmFsT2JqZWN0KTsKQEAgLTMwNjIsNyArMzA2Miw3IEBAIEpTQ19ERUZJTkVfSE9T
VF9GVU5DVElPTihmdW5jdGlvbkNyZWF0ZVdhc21TdHJlYW1pbmdDb21waWxlckZvckluc3RhbnRp
YXRlLCAoSlNHCiAgICAgYXV0byBjb21waWxlciA9IFdhc21TdHJlYW1pbmdDb21waWxlcjo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIFdhc206OkNvbXBpbGVyTW9kZTo6RnVsbENvbXBpbGUsIGlt
cG9ydE9iamVjdCk7CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBhcmdzLmFw
cGVuZChjb21waWxlcik7Ci0gICAgY2FsbChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVm
aW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhpcy4uLiIpOworICAgIGNhbGwoZ2xv
YmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmluZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qg
c2VlIHRoaXMuLi4iX3MpOwogICAgIGlmIChVTkxJS0VMWShzY29wZS5leGNlcHRpb24oKSkpCiAg
ICAgICAgIHNjb3BlLmNsZWFyRXhjZXB0aW9uKCk7CiAgICAgY29tcGlsZXItPnN0cmVhbWluZ0Nv
bXBpbGVyKCkuZmluYWxpemUoZ2xvYmFsT2JqZWN0KTsKQEAgLTMxNzAsNyArMzE3MCw3IEBAIEpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkdldFByaXZhdGVQcm9wZXJ0eSwgKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplCiAKICAgICBTeW1ib2xJbXBsKiBzeW1ib2wgPSB2bS5wcm9w
ZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMoKS5sb29rVXBQcml2YXRlTmFtZShzdHIpOwogICAgIGlm
ICghc3ltYm9sKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJVbmtub3duIHByaXZhdGUgbmFtZS4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJv
cihnbG9iYWxPYmplY3QsIHNjb3BlLCAiVW5rbm93biBwcml2YXRlIG5hbWUuIl9zKTsKIAogICAg
IFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgSlNWYWx1ZTo6ZW5jb2RlKGNhbGxGcmFtZS0+YXJn
dW1lbnQoMCkuZ2V0KGdsb2JhbE9iamVjdCwgc3ltYm9sKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwCmluZGV4IGY2YTU5
YjBiN2FjMjI0MTRmYzY3NjY0ZDE3ZmU2NzYwMzZiMTY5YmMuLjZkNjlhNGRmMmUyMzcxMzAwNGU1
MzA3MDA1Y2ZkODIwZTBkMjEyMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
b29scy9TaWdpbGxDcmFzaEFuYWx5emVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXplci5jcHAKQEAgLTI3Nyw3ICsyNzcsNyBAQCBhdXRvIFNp
Z2lsbENyYXNoQW5hbHl6ZXI6OmFuYWx5emUoU2lnbmFsQ29udGV4dCYgY29udGV4dCkgLT4gQ3Jh
c2hTb3VyY2UKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgbG9nKCJw
YyAlcCBiZWxvbmdzIHRvIENvZGVCbG9jayAlcCBvZiB0eXBlICVzIiwgcGMsIGNvZGVCbG9jaywg
SklUQ29kZTo6dHlwZU5hbWUoY29kZUJsb2NrLT5qaXRUeXBlKCkpKTsKKyAgICAgICAgbG9nKCJw
YyAlcCBiZWxvbmdzIHRvIENvZGVCbG9jayAlcCBvZiB0eXBlICVzIiwgcGMsIGNvZGVCbG9jaywg
SklUQ29kZTo6dHlwZU5hbWUoY29kZUJsb2NrLT5qaXRUeXBlKCkpLmNoYXJhY3RlcnMoKSk7CiAK
ICAgICAgICAgZHVtcENvZGVCbG9jayhjb2RlQmxvY2ssIHBjKTsKICAgICB9IHdoaWxlIChmYWxz
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNwcAppbmRleCA3
ZTNhZTdkODk1ODJmMjFlZTJkNjcwNGNlYjdiMGU0ZGZhZmZhYmMzLi5iNTZkN2Y0YTIxMzM0OTY0
ZTJkZGNlNzc5OGRlNDVhNTkzOWQyODY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29s
cy9WTUluc3BlY3Rvci5jcHAKQEAgLTQxMSw3ICs0MTEsNyBAQCB2b2lkIFZNSW5zcGVjdG9yOjpk
dW1wUmVnaXN0ZXJzKENhbGxGcmFtZSogY2FsbEZyYW1lKQogICAgICAgICAgICAgSlNWYWx1ZSB2
ID0gaXQtPmpzVmFsdWUoKTsKICAgICAgICAgICAgIGludCByZWdpc3Rlck51bWJlciA9IGl0IC0g
Y2FsbEZyYW1lLT5yZWdpc3RlcnMoKTsKICAgICAgICAgICAgIFN0cmluZyBuYW1lID0gKGl0ID4g
ZW5kT2ZDYWxsZWVTYXZlcykKLSAgICAgICAgICAgICAgICA/ICJDYWxsZWVTYXZlUmVnIgorICAg
ICAgICAgICAgICAgID8gIkNhbGxlZVNhdmVSZWciX3MKICAgICAgICAgICAgICAgICA6IGNvZGVC
bG9jay0+bmFtZUZvclJlZ2lzdGVyKFZpcnR1YWxSZWdpc3RlcihyZWdpc3Rlck51bWJlcikpOwog
ICAgICAgICAgICAgZGF0YUxvZ0YoIltyJSAzZCAlMTRzXSAgICAgIHwgJTEwcCB8IDB4JS0xNmxs
eCAlc1xuIiwgcmVnaXN0ZXJOdW1iZXIsIG5hbWUuYXNjaWkoKS5kYXRhKCksIGl0LCAobG9uZyBs
b25nKUpTVmFsdWU6OmVuY29kZSh2KSwgdmFsdWVBc1N0cmluZyh2KS5kYXRhKCkpOwogICAgICAg
ICAgICAgLS1pdDsKQEAgLTUxOSw3ICs1MTksNyBAQCB2b2lkIFZNSW5zcGVjdG9yOjpkdW1wQ2Vs
bE1lbW9yeVRvU3RyZWFtKEpTQ2VsbCogY2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKICAgICAgICAg
b3V0LnByaW50KCJcbiIpOwogICAgIH07CiAKLSAgICBvdXQucHJpbnRmKCI8JXAsICVzPlxuIiwg
Y2VsbCwgY2VsbC0+Y2xhc3NOYW1lKHZtKSk7CisgICAgb3V0LnByaW50ZigiPCVwLCAlcz5cbiIs
IGNlbGwsIGNlbGwtPmNsYXNzTmFtZSh2bSkuY2hhcmFjdGVycygpKTsKICAgICBJbmRlbnRhdGlv
blNjb3BlIHNjb3BlKGluZGVudGF0aW9uKTsKIAogICAgIElOREVOVCBkdW1wU2xvdChzbG90cywg
MCwgImhlYWRlciIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUV4Y2VwdGlvblR5cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21FeGNlcHRp
b25UeXBlLmgKaW5kZXggMjg1ZDM1MjRiZWUyYjVkMTlmMTJiNTUzNGViZTM2NzU4NWI0ZGU3NC4u
M2FmMDhhNjFlNGEyNzg4ZmI3Yjg3NGQxMDAxY2E0OWMzMTFiMzRmNiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4Y2VwdGlvblR5cGUuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRXhjZXB0aW9uVHlwZS5oCkBAIC0zMiwxOCArMzIsMTgg
QEAgbmFtZXNwYWNlIEpTQyB7CiBuYW1lc3BhY2UgV2FzbSB7CiAKICNkZWZpbmUgRk9SX0VBQ0hf
RVhDRVBUSU9OKG1hY3JvKSBcCi0gICAgbWFjcm8oT3V0T2ZCb3VuZHNNZW1vcnlBY2Nlc3MsICAi
T3V0IG9mIGJvdW5kcyBtZW1vcnkgYWNjZXNzIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzVGFi
bGVBY2Nlc3MsICJPdXQgb2YgYm91bmRzIHRhYmxlIGFjY2VzcyIpIFwKLSAgICBtYWNybyhPdXRP
ZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91dCBvZiBib3VuZHMgY2FsbF9pbmRpcmVjdCIpIFwKLSAg
ICBtYWNybyhOdWxsVGFibGVFbnRyeSwgICJjYWxsX2luZGlyZWN0IHRvIGEgbnVsbCB0YWJsZSBl
bnRyeSIpIFwKLSAgICBtYWNybyhOdWxsUmVmZXJlbmNlLCAgImNhbGxfcmVmIHRvIGEgbnVsbCBy
ZWZlcmVuY2UiKSBcCi0gICAgbWFjcm8oQmFkU2lnbmF0dXJlLCAiY2FsbF9pbmRpcmVjdCB0byBh
IHNpZ25hdHVyZSB0aGF0IGRvZXMgbm90IG1hdGNoIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRz
VHJ1bmMsICJPdXQgb2YgYm91bmRzIFRydW5jIG9wZXJhdGlvbiIpIFwKLSAgICBtYWNybyhVbnJl
YWNoYWJsZSwgIlVucmVhY2hhYmxlIGNvZGUgc2hvdWxkIG5vdCBiZSBleGVjdXRlZCIpIFwKLSAg
ICBtYWNybyhEaXZpc2lvbkJ5WmVybywgIkRpdmlzaW9uIGJ5IHplcm8iKSBcCi0gICAgbWFjcm8o
SW50ZWdlck92ZXJmbG93LCAiSW50ZWdlciBvdmVyZmxvdyIpIFwKLSAgICBtYWNybyhTdGFja092
ZXJmbG93LCAiU3RhY2sgb3ZlcmZsb3ciKSBcCi0gICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJG
dW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIpCisgICAgbWFjcm8oT3V0
T2ZCb3VuZHNNZW1vcnlBY2Nlc3MsICAiT3V0IG9mIGJvdW5kcyBtZW1vcnkgYWNjZXNzIl9zKSBc
CisgICAgbWFjcm8oT3V0T2ZCb3VuZHNUYWJsZUFjY2VzcywgIk91dCBvZiBib3VuZHMgdGFibGUg
YWNjZXNzIl9zKSBcCisgICAgbWFjcm8oT3V0T2ZCb3VuZHNDYWxsSW5kaXJlY3QsICJPdXQgb2Yg
Ym91bmRzIGNhbGxfaW5kaXJlY3QiX3MpIFwKKyAgICBtYWNybyhOdWxsVGFibGVFbnRyeSwgICJj
YWxsX2luZGlyZWN0IHRvIGEgbnVsbCB0YWJsZSBlbnRyeSJfcykgXAorICAgIG1hY3JvKE51bGxS
ZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8gYSBudWxsIHJlZmVyZW5jZSJfcykgXAorICAgIG1hY3Jv
KEJhZFNpZ25hdHVyZSwgImNhbGxfaW5kaXJlY3QgdG8gYSBzaWduYXR1cmUgdGhhdCBkb2VzIG5v
dCBtYXRjaCJfcykgXAorICAgIG1hY3JvKE91dE9mQm91bmRzVHJ1bmMsICJPdXQgb2YgYm91bmRz
IFRydW5jIG9wZXJhdGlvbiJfcykgXAorICAgIG1hY3JvKFVucmVhY2hhYmxlLCAiVW5yZWFjaGFi
bGUgY29kZSBzaG91bGQgbm90IGJlIGV4ZWN1dGVkIl9zKSBcCisgICAgbWFjcm8oRGl2aXNpb25C
eVplcm8sICJEaXZpc2lvbiBieSB6ZXJvIl9zKSBcCisgICAgbWFjcm8oSW50ZWdlck92ZXJmbG93
LCAiSW50ZWdlciBvdmVyZmxvdyJfcykgXAorICAgIG1hY3JvKFN0YWNrT3ZlcmZsb3csICJTdGFj
ayBvdmVyZmxvdyJfcykgXAorICAgIG1hY3JvKEZ1bmNyZWZOb3RXYXNtLCAiRnVuY3JlZiBtdXN0
IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpCiAKIGVudW0gY2xhc3MgRXhjZXB0aW9u
VHlwZSA6IHVpbnQzMl90IHsKICNkZWZpbmUgTUFLRV9FTlVNKGVudW1OYW1lLCBlcnJvcikgZW51
bU5hbWUsCkBAIC01MSw3ICs1MSw3IEBAIGVudW0gY2xhc3MgRXhjZXB0aW9uVHlwZSA6IHVpbnQz
Ml90IHsKICN1bmRlZiBNQUtFX0VOVU0KIH07CiAKLUFMV0FZU19JTkxJTkUgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZShFeGNlcHRpb25UeXBlIHR5cGUpCitBTFdBWVNf
SU5MSU5FIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlv
blR5cGUgdHlwZSkKIHsKICAgICBzd2l0Y2ggKHR5cGUpIHsKICNkZWZpbmUgU1dJVENIX0NBU0Uo
ZW51bU5hbWUsIGVycm9yKSBcCkBAIC02MSw3ICs2MSw3IEBAIEFMV0FZU19JTkxJTkUgY29uc3Qg
Y2hhciogZXJyb3JNZXNzYWdlRm9yRXhjZXB0aW9uVHlwZShFeGNlcHRpb25UeXBlIHR5cGUpCiAj
dW5kZWYgU1dJVENIX0NBU0UKICAgICB9CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuICIiOworICAgIHJldHVybiAiIl9zOwogfQogCiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6
V2FzbQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5oCmluZGV4IGM3OWUzMzdj
N2E3YWNkMTI4MjBjMmU2OTQwMzQ0ZmY0YmRkMTBhOWUuLjk3MDYzYWFiOWU2YjdmNTYwZmUyOGQ1
NDIwNjBjNTJiODg0NmU1ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21Gb3JtYXQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0
LmgKQEAgLTg0LDcgKzg0LDcgQEAgaW5saW5lIEpTU3RyaW5nKiB0eXBlVG9TdHJpbmcoVk0mIHZt
LCBUeXBlS2luZCB0eXBlKQogewogI2RlZmluZSBUWVBFX0NBU0UobWFjcm9OYW1lLCB2YWx1ZSwg
YjMsIGluYywgd2FzbU5hbWUpIFwKICAgICBjYXNlIFR5cGVLaW5kOjptYWNyb05hbWU6IFwKLSAg
ICAgICAgcmV0dXJuIGpzTm9udHJpdmlhbFN0cmluZyh2bSwgI3dhc21OYW1lKTsgXAorICAgICAg
ICByZXR1cm4ganNOb250cml2aWFsU3RyaW5nKHZtLCAjd2FzbU5hbWUiIl9zKTsgXAogCiAgICAg
c3dpdGNoICh0eXBlKSB7CiAgICAgICAgIEZPUl9FQUNIX1dBU01fVFlQRShUWVBFX0NBU0UpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtR2xvYmFsLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwCmluZGV4IGNiM2QxNjNiYmUw
OGI2YTU3NThjZDlkYzI4ZGUwNjhhMWRlNTZmMTcuLmVkMWIwZjdkMTY5MjJlNjJhNmU3NzZmMThl
YTBhOTViNDNlM2E0M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21HbG9iYWwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwu
Y3BwCkBAIC05MCw3ICs5MCw3IEBAIHZvaWQgR2xvYmFsOjpzZXQoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNWYWx1ZSBhcmd1bWVudCkKICAgICAgICAgaWYgKGlzRXh0ZXJucmVmKG1f
dHlwZSkpIHsKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1fb3duZXIpOwogICAgICAgICAg
ICAgaWYgKCFtX3R5cGUuaXNOdWxsYWJsZSgpICYmIGFyZ3VtZW50LmlzTnVsbCgpKSB7Ci0gICAg
ICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVh
dGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJOb24tbnVsbCBF
eHRlcm5yZWYgY2Fubm90IGJlIG51bGwiKSk7CisgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVy
cm9yKGdsb2JhbE9iamVjdCwgdm0sICJOb24tbnVsbCBFeHRlcm5yZWYgY2Fubm90IGJlIG51bGwi
X3MpKTsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBtX3ZhbHVlLm1fZXh0ZXJucmVmLnNldChtX293bmVyLT52bSgpLCBtX293bmVyLCBhcmd1bWVu
dCk7CkBAIC05OSw3ICs5OSw3IEBAIHZvaWQgR2xvYmFsOjpzZXQoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNWYWx1ZSBhcmd1bWVudCkKICAgICAgICAgICAgIFdlYkFzc2VtYmx5RnVu
Y3Rpb24qIHdhc21GdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAgICAgICBXZWJBc3NlbWJseVdy
YXBwZXJGdW5jdGlvbiogd2FzbVdyYXBwZXJGdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAgICAg
ICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0RnVuY3Rpb24odm0sIGFyZ3VtZW50LCB3YXNtRnVuY3Rp
b24sIHdhc21XcmFwcGVyRnVuY3Rpb24pICYmICghbV90eXBlLmlzTnVsbGFibGUoKSB8fCAhYXJn
dW1lbnQuaXNOdWxsKCkpKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFs
T2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIp
KTsKKyAgICAgICAgICAgICAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1
bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRlZCB3YXNtIGZ1bmN0aW9uIl9zKSk7CiAgICAgICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQogCkBAIC0xMDcsNyArMTA3LDcgQEAgdm9pZCBH
bG9iYWw6OnNldChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGFyZ3VtZW50
KQogICAgICAgICAgICAgICAgIFdhc206OlNpZ25hdHVyZUluZGV4IHBhcmFtSW5kZXggPSBtX3R5
cGUuaW5kZXg7CiAgICAgICAgICAgICAgICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggYXJnSW5kZXgg
PSB3YXNtRnVuY3Rpb24gPyB3YXNtRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCkgOiB3YXNtV3Jh
cHBlckZ1bmN0aW9uLT5zaWduYXR1cmVJbmRleCgpOwogICAgICAgICAgICAgICAgIGlmIChwYXJh
bUluZGV4ICE9IGFyZ0luZGV4KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9u
KGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJv
cihnbG9iYWxPYmplY3QsIHZtLCAiQXJndW1lbnQgZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0aGUg
cmVmZXJlbmNlIHR5cGUiKSk7CisgICAgICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9uKGds
b2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihn
bG9iYWxPYmplY3QsIHZtLCAiQXJndW1lbnQgZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0aGUgcmVm
ZXJlbmNlIHR5cGUiX3MpKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL1dhc21MTEludFBsYW4uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2Fz
bUxMSW50UGxhbi5jcHAKaW5kZXggYWUxNWY4ZGVkZmJlMDE5OTAxNzljZWQzYzFkMmYwNzQwZGJj
OGQ2Ni4uYzI0OWY5MmNmMDViYjBjOGMzNDRlYTVhYjcxYjM5NmYxYWRiOTRjMSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50UGxhbi5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50UGxhbi5jcHAKQEAgLTEzMCw3ICsxMzAs
NyBAQCB2b2lkIExMSW50UGxhbjo6ZGlkQ29tcGxldGVDb21waWxhdGlvbigpCiAKICAgICAgICAg
TGlua0J1ZmZlciBsaW5rQnVmZmVyKGppdCwgR0xPQkFMX1RIVU5LX0lELCBMaW5rQnVmZmVyOjpQ
cm9maWxlOjpXYXNtLCBKSVRDb21waWxhdGlvbkNhbkZhaWwpOwogICAgICAgICBpZiAoVU5MSUtF
TFkobGlua0J1ZmZlci5kaWRGYWlsVG9BbGxvY2F0ZSgpKSkgewotICAgICAgICAgICAgQmFzZTo6
ZmFpbCgiT3V0IG9mIGV4ZWN1dGFibGUgbWVtb3J5IGluIFdhc20gTExJbnQgZW50cnkgdGh1bmtz
Iik7CisgICAgICAgICAgICBCYXNlOjpmYWlsKCJPdXQgb2YgZXhlY3V0YWJsZSBtZW1vcnkgaW4g
V2FzbSBMTEludCBlbnRyeSB0aHVua3MiX3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21PcGVyYXRp
b25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21PcGVyYXRpb25zLmNwcApp
bmRleCAxMDgwNDQ5ZGE2MzhmNjc2ZTA3ZWNhMGY1ODJlM2I5ZmM3YjVlNjkxLi5iYjQ2ZjhhODEz
MmQxZWQ1NWUxYzM0YWY2YTAwZjBkMjQ5ZmYwZmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vV2FzbU9wZXJhdGlvbnMuY3BwCkBAIC01MzcsMTIgKzUzNywxMiBAQCBKU0NfREVG
SU5FX0pJVF9PUEVSQVRJT04ob3BlcmF0aW9uSXRlcmF0ZVJlc3VsdHMsIHZvaWQsIChDYWxsRnJh
bWUqIGNhbGxGcmFtZSwgSQogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7
CiAKICAgICBpZiAoYnVmZmVyLmhhc092ZXJmbG93ZWQoKSkgewotICAgICAgICB0aHJvd091dE9m
TWVtb3J5RXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkpTIHJlc3VsdHMgdG8gV2FzbSBhcmUg
dG9vIGxhcmdlIik7CisgICAgICAgIHRocm93T3V0T2ZNZW1vcnlFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiSlMgcmVzdWx0cyB0byBXYXNtIGFyZSB0b28gbGFyZ2UiX3MpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCiAgICAgaWYgKGl0ZXJhdGlvbkNvdW50ICE9IHNpZ25hdHVyZS0+cmV0
dXJuQ291bnQoKSkgewotICAgICAgICB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJJbmNvcnJlY3QgbnVtYmVyIG9mIHZhbHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMi
KTsKKyAgICAgICAgdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW5jb3Jy
ZWN0IG51bWJlciBvZiB2YWx1ZXMgcmV0dXJuZWQgdG8gV2FzbSBmcm9tIEpTIl9zKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvSlNUb1dhc21JQ0NhbGxlZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9KU1RvV2FzbUlDQ2FsbGVlLmNwcAppbmRleCBiNTA1ZGYwNWJjNjZkZGQ4YjNkZmFmN2YxZTc2
YzdkZTc0N2ZlM2IzLi5jOTgzZWI2NDk3YmI1MGU5ODAwYjk1NDRhNzY1MDllODRjYTU2M2YwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVl
LmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVG9XYXNtSUNDYWxsZWU6OnNfaW5mbyA9IHsgIkpTVG9XYXNtSUNDYWxsZWUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVG9XYXNt
SUNDYWxsZWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUb1dhc21JQ0NhbGxlZTo6c19pbmZvID0g
eyAiSlNUb1dhc21JQ0NhbGxlZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1RvV2FzbUlDQ2FsbGVlKSB9OwogCiBKU1RvV2FzbUlDQ2Fs
bGVlKiBKU1RvV2FzbUlDQ2FsbGVlOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBXZWJBc3NlbWJseUZ1bmN0aW9uKiBmdW5jdGlvbikKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKaW5kZXggODJkNjMxOWM2
MTYzNWI1N2Y2NDQ4Mzg5NDkyNjA0N2NiMzgzM2ZjOC4uYzU0MWI1OTQ2NjY4ZWRkMDhhYWI4ZDM1
ZmMzODg1YjQ1ZmM1ZmY2NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvSlNXZWJBc3NlbWJseS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseS5jcHAKQEAgLTczLDcgKzczLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hP
U1RfRlVOQ1RJT04od2ViQXNzZW1ibHlWYWxpZGF0ZUZ1bmMpOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5
IiwgJkJhc2U6OnNfaW5mbywgJndlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXZWJBc3NlbWJseSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseSJfcywgJkJhc2U6OnNfaW5mbywgJndlYkFzc2VtYmx5
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseSkgfTsKIAog
LyogU291cmNlIGZvciBKU1dlYkFzc2VtYmx5Lmx1dC5oCiBAYmVnaW4gd2ViQXNzZW1ibHlUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJs
eUV4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2Vt
Ymx5RXhjZXB0aW9uLmNwcAppbmRleCBkZTQxNDE5MDczOWQwYzgyOGZlMGI2NzdiMTk3NTFjNmQ4
NzZmMzIxLi4wMmY4YmIwZDhjYzVkODQ2YWFhZTBkMTkxYjNhMzUwMTQyODVjZWJkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9u
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhj
ZXB0aW9uLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlFeGNlcHRpb246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5
LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXZWJBc3NlbWJseUV4Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dl
YkFzc2VtYmx5RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWJBc3NlbWJseUV4Y2VwdGlvbikgfTsKIAogSlNXZWJBc3NlbWJseUV4Y2VwdGlvbjo6SlNXZWJB
c3NlbWJseUV4Y2VwdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBXYXNt
OjpUYWcmIHRhZywgRml4ZWRWZWN0b3I8dWludDY0X3Q+JiYgcGF5bG9hZCkKICAgICA6IEJhc2Uo
dm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L0pTV2ViQXNzZW1ibHlHbG9iYWwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseUdsb2JhbC5jcHAKaW5kZXggOTc5MDg5MTMzOGI0NDkwYzJhNDA0MTdlNmMx
ZjliNWRmOTc3OTNjZS4uYjMzZDg4NTExZTNiMWIwOGUyMjgzMWE0ZjAwMjJiN2ExNTNiZTI5NSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUds
b2JhbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJs
eUdsb2JhbC5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5R2xvYmFsOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5H
bG9iYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTV2ViQXNzZW1ibHlHbG9iYWwpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJs
eUdsb2JhbDo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuR2xvYmFsIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlHbG9i
YWwpIH07CiAKIEpTV2ViQXNzZW1ibHlHbG9iYWwqIEpTV2ViQXNzZW1ibHlHbG9iYWw6OnRyeUNy
ZWF0ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBSZWY8V2FzbTo6R2xvYmFsPiYmIGdsb2JhbCkKIHsKQEAgLTk0LDIyICs5NCwyMiBA
QCBKU09iamVjdCogSlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0KQogICAgIEpTU3RyaW5nKiB2YWx1ZVN0cmluZyA9IG51bGxwdHI7CiAgICAgc3dp
dGNoICh2YWx1ZVR5cGUua2luZCkgewogICAgIGNhc2UgV2FzbTo6VHlwZUtpbmQ6OkkzMjoKLSAg
ICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJpMzIiKTsKKyAgICAg
ICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJpMzIiX3MpOwogICAgICAg
ICBicmVhazsKICAgICBjYXNlIFdhc206OlR5cGVLaW5kOjpJNjQ6Ci0gICAgICAgIHZhbHVlU3Ry
aW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiaTY0Iik7CisgICAgICAgIHZhbHVlU3RyaW5n
ID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiaTY0Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAg
Y2FzZSBXYXNtOjpUeXBlS2luZDo6RjMyOgotICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJp
dmlhbFN0cmluZyh2bSwgImYzMiIpOworICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlh
bFN0cmluZyh2bSwgImYzMiJfcyk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgV2FzbTo6VHlw
ZUtpbmQ6OkY2NDoKLSAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0s
ICJmNjQiKTsKKyAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJm
NjQiX3MpOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OiB7CiAgICAgICAgIGlmIChXYXNt
Ojppc0Z1bmNyZWYodmFsdWVUeXBlKSkKLSAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250
cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVuYyIpOworICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBq
c05vbnRyaXZpYWxTdHJpbmcodm0sICJhbnlmdW5jIl9zKTsKICAgICAgICAgZWxzZSBpZiAoV2Fz
bTo6aXNFeHRlcm5yZWYodmFsdWVUeXBlKSkKLSAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNO
b250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIik7CisgICAgICAgICAgICB2YWx1ZVN0cmlu
ZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImV4dGVybnJlZiJfcyk7CiAgICAgICAgIGVsc2UK
ICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgK
aW5kZXggN2M1NGQzNDBlMzY3ZDc0NmUwMjE4MjFlZTBiZTExMjBiMjZjMmExNC4uODdlNTBiNDUz
NWZlNDUxM2M4MmRiYWQ3ZjEzM2YyMGZkZTgwMDI5YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SGVscGVycy5oCkBAIC0xOTEsMTcgKzE5
MSwxNyBAQCBBTFdBWVNfSU5MSU5FIHVpbnQ2NF90IGZyb21KU1ZhbHVlKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIGNvbnN0IFdhc206OlR5cAogICAgIGRlZmF1bHQ6IHsKICAgICAgICAg
aWYgKFdhc206OmlzRXh0ZXJucmVmKHR5cGUpKSB7CiAgICAgICAgICAgICBpZiAoIXR5cGUuaXNO
dWxsYWJsZSgpICYmIHZhbHVlLmlzTnVsbCgpKQotICAgICAgICAgICAgICAgIHJldHVybiB0aHJv
d1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50
aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUg
bnVsbCIpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxP
YmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVj
dCwgdm0sICJOb24tbnVsbCBFeHRlcm5yZWYgY2Fubm90IGJlIG51bGwiX3MpKTsKICAgICAgICAg
fSBlbHNlIGlmIChXYXNtOjppc0Z1bmNyZWYodHlwZSkgfHwgaXNSZWZXaXRoVHlwZUluZGV4KHR5
cGUpKSB7CiAgICAgICAgICAgICBXZWJBc3NlbWJseUZ1bmN0aW9uKiB3YXNtRnVuY3Rpb24gPSBu
dWxscHRyOwogICAgICAgICAgICAgV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHdhc21XcmFw
cGVyRnVuY3Rpb24gPSBudWxscHRyOwogICAgICAgICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9z
dEZ1bmN0aW9uKHZtLCB2YWx1ZSwgd2FzbUZ1bmN0aW9uLCB3YXNtV3JhcHBlckZ1bmN0aW9uKSAm
JiAoIXR5cGUuaXNOdWxsYWJsZSgpIHx8ICF2YWx1ZS5pc051bGwoKSkpCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJl
IGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iKSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHRo
cm93Vk1FeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1
bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVk
IHdhc20gZnVuY3Rpb24iX3MpKTsKICAgICAgICAgICAgIGlmIChpc1JlZldpdGhUeXBlSW5kZXgo
dHlwZSkgJiYgIXZhbHVlLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICAgICAgV2FzbTo6U2lnbmF0
dXJlSW5kZXggcGFyYW1JbmRleCA9IHR5cGUuaW5kZXg7CiAgICAgICAgICAgICAgICAgV2FzbTo6
U2lnbmF0dXJlSW5kZXggYXJnSW5kZXggPSB3YXNtRnVuY3Rpb24gPyB3YXNtRnVuY3Rpb24tPnNp
Z25hdHVyZUluZGV4KCkgOiB3YXNtV3JhcHBlckZ1bmN0aW9uLT5zaWduYXR1cmVJbmRleCgpOwog
ICAgICAgICAgICAgICAgIGlmIChwYXJhbUluZGV4ICE9IGFyZ0luZGV4KQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVh
dGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBm
dW5jdGlvbiBkaWQgbm90IG1hdGNoIHRoZSByZWZlcmVuY2UgdHlwZSIpKTsKKyAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3Jl
YXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiQXJndW1lbnQg
ZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0aGUgcmVmZXJlbmNlIHR5cGUiX3MpKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVB
Q0hFRCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseUluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlJbnN0YW5jZS5jcHAKaW5kZXggNDljZDAwN2ZiNzdkYzc3MjM0ZWE0Yzk1M2U1ZWM3
MzhjMDczOTE5Ni4uOWE1YzA4MzUzMzc0OWY1ZDg1YTI4NDc1YTZhZWQ2ZDY2MGQxYzg1NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3Rh
bmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
SW5zdGFuY2UuY3BwCkBAIC00MCw3ICs0MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUluc3RhbmNlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eS5JbnN0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXZWJBc3NlbWJseUluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2Vi
QXNzZW1ibHlJbnN0YW5jZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuSW5zdGFuY2UiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJB
c3NlbWJseUluc3RhbmNlKSB9OwogCiBTdHJ1Y3R1cmUqIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6
Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNW
YWx1ZSBwcm90b3R5cGUpCiB7CkBAIC0xNTUsNyArMTU1LDcgQEAgdm9pZCBKU1dlYkFzc2VtYmx5
SW5zdGFuY2U6OmZpbmFsaXplQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWMKIAogSWRlbnRpZmllciBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVN
b2R1bGVLZXkoKQogewotICAgIHJldHVybiBJZGVudGlmaWVyOjpmcm9tVWlkKFByaXZhdGVOYW1l
KFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIldlYkFzc2VtYmx5SW5zdGFuY2UiKSk7CisgICAg
cmV0dXJuIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2Ny
aXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0YW5jZSJfcykpOwogfQogCiBKU1dlYkFzc2VtYmx5SW5z
dGFuY2UqIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgSWRlbnRpZmllciYgbW9kdWxlS2V5LCBKU1dlYkFz
c2VtYmx5TW9kdWxlKiBqc01vZHVsZSwgSlNPYmplY3QqIGltcG9ydE9iamVjdCwgU3RydWN0dXJl
KiBpbnN0YW5jZVN0cnVjdHVyZSwgUmVmPFdhc206Ok1vZHVsZT4mJiBtb2R1bGUsIFdhc206OkNy
ZWF0aW9uTW9kZSBjcmVhdGlvbk1vZGUpCkBAIC0yMDEsNyArMjAxLDcgQEAgSlNXZWJBc3NlbWJs
eUluc3RhbmNlKiBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZShWTSYgdm0sIEpTR2xv
YmFsT2JqZWN0KgogICAgICAgICAgICAgV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OkltcG9ydEVu
dHJ5VHlwZTo6U2luZ2xlLAogICAgICAgICAgICAgbW9kdWxlTmFtZSwKICAgICAgICAgICAgIGZp
ZWxkTmFtZSwKLSAgICAgICAgICAgIElkZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJp
dmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbXBvcnROYW1lIikpLAorICAgICAg
ICAgICAgSWRlbnRpZmllcjo6ZnJvbVVpZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3Jp
cHRpb24sICJXZWJBc3NlbWJseUltcG9ydE5hbWUiX3MpKSwKICAgICAgICAgfSk7CiAgICAgfQog
ICAgIEFTU0VSVChtb2R1bGVSZWNvcmQtPmltcG9ydEVudHJpZXMoKS5zaXplKCkgPT0gbW9kdWxl
SW5mb3JtYXRpb24uaW1wb3J0cy5zaXplKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseU1lbW9yeS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcAppbmRleCAzNWVkZTQxNDkyNmQ2
MTk4NTlkMmU4NThiOWM4YTRmMjk5MWFmNjI5Li5mNGE0MDIzNjg2NzdjMDcyOThkMjdlOTU4NzQ4
MDU1NThhNGYwM2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9K
U1dlYkFzc2VtYmx5TWVtb3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlNZW1vcnk6OnNfaW5mbyA9IHsg
IldlYkFzc2VtYmx5Lk1lbW9yeSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseU1lbW9yeSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1dlYkFzc2VtYmx5TWVtb3J5OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNX
ZWJBc3NlbWJseU1lbW9yeSkgfTsKIAogSlNXZWJBc3NlbWJseU1lbW9yeSogSlNXZWJBc3NlbWJs
eU1lbW9yeTo6dHJ5Q3JlYXRlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TW9kdWxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNb2R1bGUuY3BwCmluZGV4IDBmMGI5Y2M1YTUyZjBlYzQ4
YzZmN2NmMzUxYTc1NjdmNmExYzQyMmYuLmJjNDRhMTJhNmUwMDM3MzM2Mjg3MGMzMzc4ODFkM2E5
ZjJlMTBiOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2Vi
QXNzZW1ibHlNb2R1bGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pT
V2ViQXNzZW1ibHlNb2R1bGUuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseU1vZHVsZTo6c19pbmZvID0geyAiV2Vi
QXNzZW1ibHkuTW9kdWxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TW9kdWxlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
V2ViQXNzZW1ibHlNb2R1bGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1vZHVsZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFz
c2VtYmx5TW9kdWxlKSB9OwogCiBKU1dlYkFzc2VtYmx5TW9kdWxlKiBKU1dlYkFzc2VtYmx5TW9k
dWxlOjpjcmVhdGVTdHViKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc206Ok1vZHVsZTo6VmFsaWRhdGlvblJlc3VsdCYmIHJlc3Vs
dCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNz
ZW1ibHlUYWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2Vt
Ymx5VGFibGUuY3BwCmluZGV4IGMwMjA2ZTRkNWNkOTdhMWQyMWE4YTJmY2ZkMWZmNTc0YWRiMWMz
MDAuLjIyZDUyMGRhMjA1Mzg3ZjdkZDQ1YTAzNGVjYjcyNTAzM2JmN2UxZjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcApA
QCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
V2ViQXNzZW1ibHlUYWJsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFibGUiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1i
bHlUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFibGU6OnNfaW5mbyA9
IHsgIldlYkFzc2VtYmx5LlRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlUYWJsZSkgfTsKIAogSlNXZWJBc3Nl
bWJseVRhYmxlKiBKU1dlYkFzc2VtYmx5VGFibGU6OnRyeUNyZWF0ZShKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V2FzbTo6VGFi
bGU+JiYgdGFibGUpCiB7CkBAIC0xMjcsMTAgKzEyNywxMCBAQCBKU09iamVjdCogSlNXZWJBc3Nl
bWJseVRhYmxlOjp0eXBlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgSlNTdHJp
bmcqIGVsZW1lbnRTdHJpbmcgPSBudWxscHRyOwogICAgIHN3aXRjaCAoZWxlbWVudCkgewogICAg
IGNhc2UgV2FzbTo6VGFibGVFbGVtZW50VHlwZTo6RnVuY3JlZjoKLSAgICAgICAgZWxlbWVudFN0
cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImFueWZ1bmMiKTsKKyAgICAgICAgZWxlbWVu
dFN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBi
cmVhazsKICAgICBjYXNlIFdhc206OlRhYmxlRWxlbWVudFR5cGU6OkV4dGVybnJlZjoKLSAgICAg
ICAgZWxlbWVudFN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImV4dGVybnJlZiIpOwor
ICAgICAgICBlbGVtZW50U3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVm
Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgUkVMRUFTRV9BU1NF
UlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL0pTV2ViQXNzZW1ibHlUYWcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseVRhZy5jcHAKaW5kZXggNjk0MWZjNGNiNTNiMjM1NWNhYzcwNWNkYzVkMWRm
YjZiZjI3YjRhNS4uYmRkYzE0OWNmMGJmNDE1ZTE5NGFkNjkyNGQ1NGMzODdkMzk1NWVmNSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5j
cHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBKU1dlYkFzc2VtYmx5VGFnOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5UYWciLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1i
bHlUYWcpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseVRhZzo6c19pbmZvID0geyAi
V2ViQXNzZW1ibHkuVGFnIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlUYWcpIH07CiAKIEpTV2ViQXNzZW1ibHlUYWcq
IEpTV2ViQXNzZW1ibHlUYWc6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBXYXNtOjpUYWcmIHRhZykKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGls
ZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggOGJiNmU1NGMyYjVhMDIy
Y2ZiODI0ZjY2YWNlNTgwYTJkMjEyOGViZC4uOTA2ZGI3ZDYzOGJhOWJmM2MzNjE5YTVkZGUwNDk5
NDFkNTA0ZThmYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAg
LTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZC
YXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9y
VGFibGVXZWJBc3NlbWJseUNvbXBpbGVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5Q29tcGls
ZUVycm9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlLmNwcAppbmRleCBhNWJlMDE3
MmJhZTNiMGJjOWZhMTRjNmM3MWViNGJmZWUzMzY2ZjViLi45MjBiOTJiNDMyYWViMjZkNjlhZjI3
MDU0M2M3ZjUxYjlmNjZhNWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseUNvbXBpbGVFcnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3Bw
CkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
V2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5
LkNvbXBpbGVFcnJvciIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29t
cGlsZUVycm9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGls
ZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5Db21waWxlRXJyb3IiX3Ms
ICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5Q29tcGlsZUVycm9yLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90
eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBl
Lmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0
aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggMzdhNmZhMGJkNmZhNDU4NzUyNDhj
ODM1MDA3MWE2ZTY0MmZmMzIzOS4uZjRiMWUyM2Y5Y2I5OGIyNTA4MWE2NTAwZTEwMzI0MzEzMjll
NGI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUV4Y2Vw
dGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZj
b25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlFeGNlcHRpb24sIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUV4Y2VwdGlv
biwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0
cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RK
U1dlYkFzc2VtYmx5RXhjZXB0aW9uKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGNhbGxKU1dlYkFzc2VtYmx5RXhjZXB0aW9uKTsKQEAgLTU4LDcgKzU4LDcgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlFeGNlcHRpb24sIChKU0dsb2Jh
bE9iamVjdCogZ2xvYmEKIAogICAgIGF1dG8gdGFnID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2Vt
Ymx5VGFnKj4odm0sIHRhZ1ZhbHVlKTsKICAgICBpZiAoIXRhZykKLSAgICAgICAgcmV0dXJuIHRo
cm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlv
biBjb25zdHJ1Y3RvciBleHBlY3RzIHRoZSBmaXJzdCBhcmd1bWVudCB0byBiZSBhIFdlYkFzc2Vt
Ymx5LlRhZyIpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNvbnN0cnVjdG9yIGV4cGVjdHMgdGhlIGZp
cnN0IGFyZ3VtZW50IHRvIGJlIGEgV2ViQXNzZW1ibHkuVGFnIl9zKTsKIAogICAgIE1hcmtlZEFy
Z3VtZW50QnVmZmVyIHZhbHVlczsKICAgICBmb3JFYWNoSW5JdGVyYWJsZShnbG9iYWxPYmplY3Qs
IHRhZ1BhcmFtZXRlcnMsIFsmXSAoVk0mLCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgbmV4dFZh
bHVlKSB7CkBAIC02Nyw3ICs2Nyw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1
Y3RKU1dlYkFzc2VtYmx5RXhjZXB0aW9uLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhCiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIGlmICh2YWx1ZXMuc2l6ZSgpICE9
IHRhZy0+c2lnbmF0dXJlKCkuYXJndW1lbnRDb3VudCgpKQotICAgICAgICByZXR1cm4gdGhyb3dW
TVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNv
bnN0cnVjdG9yIGV4cGVjdHMgdGhlIG51bWJlciBvZiBwYXJlbWV0ZXJzIGluIFdlYkFzc2VtYmx5
LlRhZyB0byBtYXRjaCB0aGUgdGFncyBwYXJhbWV0ZXIgY291bnQuIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNl
cHRpb24gY29uc3RydWN0b3IgZXhwZWN0cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2Vi
QXNzZW1ibHkuVGFnIHRvIG1hdGNoIHRoZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iX3MpOwogCiAg
ICAgLy8gQW55IEdDJ2QgdmFsdWVzIGluIGhlcmUgd2lsbCBiZSBtYXJrZWQgYnkgdGhlIE1hcmtl
ZEFydWdlbWVudEJ1ZmZlciB1bnRpbCBzdG9yZWQgaW4gdGhlIEV4Y2VwdGlvbi4KICAgICBGaXhl
ZFZlY3Rvcjx1aW50NjRfdD4gcGF5bG9hZCh2YWx1ZXMuc2l6ZSgpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9u
UHJvdG90eXBlLmNwcAppbmRleCA3MzExMTU2NzA1Y2YyYWZiMDJiODg1MGRlZDE0MTdjMGVkMGIw
OThiLi43ZTFlZmQ2N2RkYTgwMGI2NzdhZmU2NmQ2M2NhNGY1NGEzNjFmZGQyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvblByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlF
eGNlcHRpb25Qcm90b3R5cGUuY3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG9GdW5jSXMpOwogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHku
RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUV4
Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlv
blByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseUV4Y2VwdGlvblByb3Rv
dHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uCkBA
IC0xNDMsNyArMTQzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5RXhj
ZXB0aW9uUHJvdG9GdW5jSXMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKIAogICAgIEpTV2ViQXNz
ZW1ibHlUYWcqIHRhZyA9IGdldFRhZyh2bSwgY2FsbEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAg
aWYgKCF0YWcpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwg
dGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbi5pcygpOiBGaXJzdCBhcmd1bWVudCBt
dXN0IGJlIGEgV2ViQXNzZW1ibHkuVGFnIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbi5pcygp
OiBGaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgV2ViQXNzZW1ibHkuVGFnIl9zKTsKIAogICAgIFJF
TEVBU0VfQU5EX1JFVFVSTih0aHJvd1Njb3BlLCBKU1ZhbHVlOjplbmNvZGUoanNCb29sZWFuKGpz
RXhjZXB0aW9uLT50YWcoKSA9PSB0YWctPnRhZygpKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcAppbmRleCBjNzg3
MzczZjdjOTJkYWJmNGQ0MTAzY2FiN2RjZTgzZjhhMzAyZDgzLi44ODkxMjA3ZGMxMjAzYjUxOTEz
NjQxNWZkNDAzOGM1ZjczYjkwYzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uLmNwcApAQCAtNTQsNyArNTQsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5RnVuY3Rpb246OnNf
aW5mbyA9IHsgIldlYkFzc2VtYmx5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5RnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihjYWxsV2ViQXNzZW1ibHlGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcApp
bmRleCBiNTMwNmIxZmMzOGJmYTI3MzFlOTIyYjkzN2Y3NThkMjkwMTA2MjFmLi5hOTRiYzQzM2Ez
N2U0M2E2NzlkNThlNTA2ZDViOWVmNTUyYWFkMzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0aW9uQmFzZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwCkBAIC0z
NSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNz
ZW1ibHlGdW5jdGlvbkJhc2U6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5RnVuY3Rpb25CYXNlIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJB
c3NlbWJseUZ1bmN0aW9uQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0
aW9uQmFzZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlG
dW5jdGlvbkJhc2UpIH07CiAKIFdlYkFzc2VtYmx5RnVuY3Rpb25CYXNlOjpXZWJBc3NlbWJseUZ1
bmN0aW9uQmFzZShWTSYgdm0sIE5hdGl2ZUV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBXYXNtVG9XYXNtSW1w
b3J0YWJsZUZ1bmN0aW9uIGltcG9ydGFibGVGdW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1
dGFibGUsIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNw
cAppbmRleCAwYjk2MzFlYTU0NjU0NWY3NmEzMmU4NzJkMzk3OGUwZjU4YzgwOGVjLi40OWVlOGI0
NjEwNzA3M2I4YWMzZWQ4ZTYwY2FjNTJmNmFhMWVlM2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVj
dG9yLmNwcApAQCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yR2xvYmFsV2ViQXNzZW1ibHlHbG9iYWwsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9iYWxDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yR2xvYmFsV2ViQXNz
ZW1ibHlHbG9iYWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9i
YWxDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29u
c3RydWN0SlNXZWJBc3NlbWJseUdsb2JhbCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihjYWxsSlNXZWJBc3NlbWJseUdsb2JhbCk7CkBAIC0xNDIsNyArMTQyLDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlHbG9iYWwsIChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2IKICAgICAgICAgICAgIGlmIChhcmd1bWVudC5pc1VuZGVmaW5lZCgp
KQogICAgICAgICAgICAgICAgIGFyZ3VtZW50ID0gZGVmYXVsdFZhbHVlRm9yUmVmZXJlbmNlVHlw
ZSh0eXBlKTsKICAgICAgICAgICAgIGlmICghaXNXZWJBc3NlbWJseUhvc3RGdW5jdGlvbih2bSwg
YXJndW1lbnQpICYmICFhcmd1bWVudC5pc051bGwoKSkgewotICAgICAgICAgICAgICAgIHRocm93
RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1
bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVk
IHdhc20gZnVuY3Rpb24iKSk7CisgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFs
T2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2Jh
bE9iamVjdCwgdm0sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJf
cykpOwogICAgICAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBpbml0aWFsVmFsdWUgPSBKU1ZhbHVlOjplbmNvZGUoYXJndW1lbnQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5
cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQ
cm90b3R5cGUuY3BwCmluZGV4IDE4YTRkMWY5MWRmZmU0ZDQ4NWJjNjdjOTkxMWJiODA0ZDIzOWNk
YTEuLmE1YmRmOWI2MzYwMDU4ZTIxNDVmYzBhMjk3ZTYxYjgyZWZkY2I5NzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2Jh
bFByb3RvdHlwZS5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04od2ViQXNzZW1ibHlHbG9iYWxQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZTo6c19pbmZv
ID0geyAiV2ViQXNzZW1ibHkuR2xvYmFsIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZUdsb2Jh
bFdlYkFzc2VtYmx5R2xvYmFsLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2Vt
Ymx5R2xvYmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFs
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpzX2lu
Zm8sICZwcm90b3R5cGVHbG9iYWxXZWJBc3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBXZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVHbG9i
YWxXZWJBc3NlbWJseUdsb2JhbApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
NzUyMzMzMzMyZmZmNjY4NzBjZGE5NTkzZWFlYzcxNDkxMTM1ZWQ0ZS4uZTAwYzU4N2MxMDNiMzNh
ODc4YzczYTA2YzRkNGNmNjk1NjEyNjI3MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3Iu
Y3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlJbnN0YW5jZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJB
c3NlbWJseUluc3RhbmNlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5
SW5zdGFuY2VDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oY29uc3RydWN0SlNXZWJBc3NlbWJseUluc3RhbmNlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5SW5zdGFuY2UpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJv
dG90eXBlLmNwcAppbmRleCA2OTM4ODkxNWE3ZjA2NGQ0ZTJiMjQxMDlkMDk0ODhmZWMyZTk5YzY5
Li5hZTRiOTMxZTZjYzZhODIzNmY3MzQ2YmNhZTljMjM0ZWQwNzE3NDU2IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3Rh
bmNlUHJvdG90eXBlLmNwcApAQCAtNDIsNyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VT
VE9NX0dFVFRFUih3ZWJBc3NlbWJseUluc3RhbmNlUHJvdG9HZXR0ZXJFeHBvcnRzKTsKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSIsICZCYXNlOjpzX2luZm8sICZw
cm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5SW5zdGFuY2UsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBX
ZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0
YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlJbnN0YW5j
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUubHV0
LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUluc3RhbmNlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlu
a0Vycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDgzMDM4MTQ3MWJmYWRkYzhiMzM0YmJmMTZhNTVh
NTBjNzc2N2ZhZGIuLjY0MWZhNjBjMjNhY2NhMjgwOTc2MWMyNzRlMmIxODNiZTEyNTRjN2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vy
cm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0
b3JUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFdlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZC
YXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlMaW5rRXJyb3IsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvcikg
fTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3Nl
bWJseUxpbmtFcnJvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNX
ZWJBc3NlbWJseUxpbmtFcnJvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKaW5kZXgg
MzhkOGFjYWYxZWJjYThkMzBlY2Y4MDhkMDg4N2IyZmI2MjNlNmUyYi4uNDdkZTdjNTkwYWIwYjQz
YjZhMzYzZDVlYWQ4MzY3YWQ0ZDUzM2EwNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlMaW5rRXJyb3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNw
cApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFdlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5M
aW5rRXJyb3IiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUxpbmtF
cnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlw
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTGlua0Vycm9yIl9zLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBXZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVU
YWJsZVdlYkFzc2VtYmx5TGlua0Vycm9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCmluZGV4
IDcyODI4YWM2NzlhYzlhMDNiNjk5MDA3YWUyMjE1MGY2NTJkZTBmZTIuLjZlOTQ3YjY0YTQxMzZk
MzZhNGQxNTM5MWZkMjgxODQwMzY4YmY0ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3Bw
CkBAIC00Miw3ICs0Miw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
V2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1v
cnksIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNX
ZWJBc3NlbWJseU1lbW9yeSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxs
SlNXZWJBc3NlbWJseU1lbW9yeSk7CkBAIC03OSw3ICs3OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9G
VU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iCiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpT
VmFsdWUoKSk7CiAgICAgICAgIGlmICghbWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIWlu
aXRTaXplVmFsdWUuaXNVbmRlZmluZWQoKSkgewogICAgICAgICAgICAgLy8gRXJyb3IgYmVjYXVz
ZSBib3RoIHNwZWNpZmllZC4KLSAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGds
b2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5k
ICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAg
ICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3Bl
LCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdpbml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJl
IHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0aW1lIl9zKTsKICAgICAgICAgfQogICAgICAgICBpZiAo
IWluaXRTaXplVmFsdWUuaXNVbmRlZmluZWQoKSkKICAgICAgICAgICAgIG1pblNpemVWYWx1ZSA9
IGluaXRTaXplVmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZS5jcHAKaW5kZXggN2VjY2MzZTA4ZmNm
OTQ0ZGE3MDVhM2E0MzlmYWQzNThkM2Y4YjM5YS4uYTcyNmVlZjAyMmFiNzZhNDhmYmJhNzMwZTQ5
N2E2NDI0MDA3OGVlZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBA
QCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseU1lbW9yeVByb3Rv
RnVuY1R5cGUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2Vt
Ymx5TWVtb3J5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiLCAmQmFz
ZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1i
bHkuTWVtb3J5Il9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1l
bW9yeSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeVByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZS5sdXQu
aAogQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlNZW1vcnkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25z
dHJ1Y3Rvci5jcHAKaW5kZXggZDMxNzU2NTBmM2QzM2I0MTE4ZDM0ZDc4NDQ4ZmIxNDI2YjdiNWU2
OS4uMTFhYzE2YTcxOTA0Yzc1M2Q5MjQ4Y2FkYTliODNkY2M1MGRhMzVmYiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1
bGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hP
U1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseU1vZHVsZSk7CiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFz
c2VtYmx5TW9kdWxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9k
dWxlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1
Y3RvclRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3Nl
bWJseU1vZHVsZUNvbnN0cnVjdG9yLmx1dC5oCiAgQGJlZ2luIGNvbnN0cnVjdG9yVGFibGVXZWJB
c3NlbWJseU1vZHVsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUuY3BwCmluZGV4IGIwODllNjZiZGVjOGU4
ODZiMmVhNjIzMWYyZjk1NDYzMmZlNzYzMDEuLjk2Y2ViNWYzZjdlNzE4MWEwNTJkMjZhNzMzZTAw
YjkzNWUyZGNhMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5TW9kdWxlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIiwgJkJhc2U6OnNfaW5mbywg
JnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlNb2R1bGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1vZHVsZSJf
cywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUpIH07CiAK
IC8qIFNvdXJjZSBmb3IgV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUubHV0LmgKICBAYmVnaW4g
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1vZHVsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDdm
YTgxZTc5NzMyYjIyNTU2MzJhNzQ4ZjY5MmViYWFiOTgzZDVmN2IuLjI1ZTA4OWZhMjA3MWIzZjQ3
ZjQ1OWVjNjM2ODE4ZWJkYjExM2E5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5jcHAKQEAgLTQ0LDcgKzQ0
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1v
ZHVsZVJlY29yZDo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5
TW9kdWxlUmVjb3JkKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3Jk
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseU1vZHVsZVJlY29yZCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVJl
Y29yZCkgfTsKIAogU3RydWN0dXJlKiBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6Y3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90
b3R5cGUpCiB7CkBAIC00NjcsNyArNDY3LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29y
ZDo6aW5pdGlhbGl6ZUV4cG9ydHMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICAg
ICAgICAgIC8vIFdlIGNyZWF0ZSBhIFRhYmxlIHdoZW4gaXQncyBhIFRhYmxlIGRlZmluaXRpb24u
CiAgICAgICAgICAgICBSZWZQdHI8V2FzbTo6VGFibGU+IHdhc21UYWJsZSA9IFdhc206OlRhYmxl
Ojp0cnlDcmVhdGUobW9kdWxlSW5mb3JtYXRpb24udGFibGVzW2ldLmluaXRpYWwoKSwgbW9kdWxl
SW5mb3JtYXRpb24udGFibGVzW2ldLm1heGltdW0oKSwgbW9kdWxlSW5mb3JtYXRpb24udGFibGVz
W2ldLnR5cGUoKSk7CiAgICAgICAgICAgICBpZiAoIXdhc21UYWJsZSkKLSAgICAgICAgICAgICAg
ICByZXR1cm4gZXhjZXB0aW9uKGNyZWF0ZUpTV2ViQXNzZW1ibHlMaW5rRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCB2bSwgImNvdWxkbid0IGNyZWF0ZSBUYWJsZSIpKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gZXhjZXB0aW9uKGNyZWF0ZUpTV2ViQXNzZW1ibHlMaW5rRXJyb3IoZ2xvYmFsT2JqZWN0LCB2
bSwgImNvdWxkbid0IGNyZWF0ZSBUYWJsZSJfcykpOwogICAgICAgICAgICAgSlNXZWJBc3NlbWJs
eVRhYmxlKiB0YWJsZSA9IEpTV2ViQXNzZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKGdsb2JhbE9iamVj
dCwgdm0sIGdsb2JhbE9iamVjdC0+d2ViQXNzZW1ibHlUYWJsZVN0cnVjdHVyZSgpLCB3YXNtVGFi
bGUucmVsZWFzZU5vbk51bGwoKSk7CiAgICAgICAgICAgICAvLyBXZSBzaG91bGQgYWx3YXlzIGJl
IGFibGUgdG8gYWxsb2NhdGUgYSBKU1dlYkFzc2VtYmx5VGFibGUgd2UndmUgZGVmaW5lZC4KICAg
ICAgICAgICAgIC8vIElmIGl0J3MgZGVmaW5lZCB0byBiZSB0b28gbGFyZ2UsIHdlIHNob3VsZCBo
YXZlIHRocm93biBhIHZhbGlkYXRpb24gZXJyb3IuCkBAIC02NjEsNyArNjYxLDcgQEAgdm9pZCBX
ZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6aW5pdGlhbGl6ZUV4cG9ydHMoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIFdhc206OkNhbGxl
ZSYgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlID0gY2FsbGVlR3JvdXAtPmVtYmVkZGVyRW50cnlw
b2ludENhbGxlZUZyb21GdW5jdGlvbkluZGV4U3BhY2Uoc3RhcnRGdW5jdGlvbkluZGV4U3BhY2Up
OwogICAgICAgICAgICAgV2FzbTo6V2FzbVRvV2FzbUltcG9ydGFibGVGdW5jdGlvbjo6TG9hZExv
Y2F0aW9uIGVudHJ5cG9pbnRMb2FkTG9jYXRpb24gPSBjYWxsZWVHcm91cC0+ZW50cnlwb2ludExv
YWRMb2NhdGlvbkZyb21GdW5jdGlvbkluZGV4U3BhY2Uoc3RhcnRGdW5jdGlvbkluZGV4U3BhY2Up
OwotICAgICAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogZnVuY3Rpb24gPSBXZWJBc3NlbWJs
eUZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53ZWJBc3Nl
bWJseUZ1bmN0aW9uU3RydWN0dXJlKCksIHNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICJzdGFy
dCIsIG1faW5zdGFuY2UuZ2V0KCksIGVtYmVkZGVyRW50cnlwb2ludENhbGxlZSwgZW50cnlwb2lu
dExvYWRMb2NhdGlvbiwgc2lnbmF0dXJlSW5kZXgpOworICAgICAgICAgICAgV2ViQXNzZW1ibHlG
dW5jdGlvbiogZnVuY3Rpb24gPSBXZWJBc3NlbWJseUZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUZ1bmN0aW9uU3RydWN0dXJlKCksIHNp
Z25hdHVyZS5hcmd1bWVudENvdW50KCksICJzdGFydCJfcywgbV9pbnN0YW5jZS5nZXQoKSwgZW1i
ZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBlbnRyeXBvaW50TG9hZExvY2F0aW9uLCBzaWduYXR1cmVJ
bmRleCk7CiAgICAgICAgICAgICBtX3N0YXJ0RnVuY3Rpb24uc2V0KHZtLCB0aGlzLCBmdW5jdGlv
bik7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCmluZGV4IDQ0ZmE1ZTM4ZDFiMWIyOWJmMGNmZThiZjc4MjVhNzZkODY2ZDRkMzcuLmFhN2Q4
ZGE1MGQ0YThkZWJhZmZjYzY0MjIwYmZlNzA3ZDVlMWEwNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGlt
ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdl
YkFzc2VtYmx5UnVudGltZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNz
ZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZC
YXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1
Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElP
TihjYWxsSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclBy
b3RvdHlwZS5jcHAKaW5kZXggMjBjMzU5OTdmNmIxZTg5NTI5MzU1ODFiNzIxN2FkYTFjMWU2YTk0
ZS4uZWI3NjEzYWZiNzhkMGU3OWZlYmM2MTAxZWYzZTFkNTVhODJhNzBjZCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
UnVudGltZUVycm9yUHJvdG90eXBlLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5SdW50aW1lRXJyb3IiLCAmQmFzZTo6c19pbmZvLCAm
cHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vi
QXNzZW1ibHkuUnVudGltZUVycm9yIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVX
ZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJB
c3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3Nl
bWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdl
YkFzc2VtYmx5UnVudGltZUVycm9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA1OWQ5
YjczYTAzNmI2ZWVjMjM5ODYzM2ZhNTQ4Y2Y0NTk2ZGE1ZDk1Li5kYWFmMGZmMDE2OGYxMzYzOGUw
OGUyMmU3ZGZjNTY2MWY0Y2JkNDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTQw
LDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3Nl
bWJseVRhYmxlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5m
bywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFdlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAm
QmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OwogCiBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNXZWJBc3NlbWJseVRhYmxlKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlU
YWJsZSk7CkBAIC04OSw3ICs4OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1
Y3RKU1dlYkFzc2VtYmx5VGFibGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSlNW
YWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1vcnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBt
aW5pbXVtSWRlbnQpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2Rl
ZEpTVmFsdWUoKSk7CiAgICAgaWYgKCFpbml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYg
IW1pblNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlh
bCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIp
OworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2Nv
cGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFy
ZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSJfcyk7CiAKICAgICBpZiAoIW1pblNpemVWYWx1
ZS5pc1VuZGVmaW5lZCgpKQogICAgICAgICBpbml0aWFsU2l6ZVZhbHVlID0gbWluU2l6ZVZhbHVl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlU
YWJsZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlLmNwcAppbmRleCA0Y2M1M2I3YWFjMzNmNjVhNjhiZGZlM2QxYTRi
M2RkZmRiOTBmMGQ4Li4zZjlkMGFiMDIxODEyNjdhYWRjYWMyOTM3YjQzNGM4Y2Y3NTJmNjgyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxl
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVRhYmxlUHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTih3ZWJBc3NlbWJseVRhYmxlUHJvdG9GdW5jVHlwZSk7CiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZTo6
c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFibGUiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBl
VGFibGVXZWJBc3NlbWJseVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5VGFibGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWJs
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFibGUiX3MsICZCYXNlOjpzX2lu
Zm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBX
ZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2Vi
QXNzZW1ibHlUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yLmNwcAppbmRleCA3NGRhMDVmMjcxNzVkZTI4
OTBjNTljZmJhMDU4NmJhOWU1YTkwMDM4Li5kNjcxZTBjNDIzYzNjYTY1MGQwZWFkYTJiN2Q1OGZl
NTQxZDdkMzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseVRhZ0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5VGFnKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlUYWcpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3Bw
CmluZGV4IGU0YTQ2MDdhMDA1ZTA4OTljMzc1ZTdmMGRlYjMzYWNhM2U1ZWExYWMuLjI5YjVmMmRk
YmQzMzQ0ZGVmNmRmOTdkMGE0MDk0YjcwY2Q2MGY0MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFnUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAKQEAg
LTQzLDcgKzQzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1i
bHlUYWdQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseVRhZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIiwg
JkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlUYWcsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gV2ViQXNzZW1ibHlUYWdQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRh
ZyJfcywgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlUYWcsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUpIH07CiAKIC8q
IFNvdXJjZSBmb3IgV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90
eXBlVGFibGVXZWJBc3NlbWJseVRhZwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24uY3BwCmluZGV4IDJmYjZh
NGVjN2JiNjI3YThjYjg3ZWQ4ZGY0YmU0NTk1N2QxZmM5YmYuLmI1ZDc4Y2U0OGRhNzBkMjY5YzNl
NTk5ZGE3ZjM5ZGNmOTAwNmZiOWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKQEAgLTM0LDcg
KzM0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJs
eVdyYXBwZXJGdW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdl
YkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
V3JhcHBlckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShX
ZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY2FsbFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKTsKIApAQCAtNDUsNyArNDUs
NyBAQCBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbjo6V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rp
b24oVk0mIHZtLCBOYXRpdmVFeGVjdXRhYmxlKgogV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24q
IFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNPYmplY3QqIGZ1bmN0aW9u
LCB1bnNpZ25lZCBpbXBvcnRJbmRleCwgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBpbnN0YW5jZSwg
V2FzbTo6U2lnbmF0dXJlSW5kZXggc2lnbmF0dXJlSW5kZXgpCiB7CiAgICAgQVNTRVJUX1dJVEhf
TUVTU0FHRSghZnVuY3Rpb24tPmluaGVyaXRzPFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uPih2
bSksICJXZSBzaG91bGQgbmV2ZXIgZG91YmxlIHdyYXAgYSB3cmFwcGVyIGZ1bmN0aW9uLiIpOwot
ICAgIFN0cmluZyBuYW1lID0gIiI7CisgICAgU3RyaW5nIG5hbWUgPSBlbXB0eVN0cmluZygpOwog
ICAgIE5hdGl2ZUV4ZWN1dGFibGUqIGV4ZWN1dGFibGUgPSB2bS5nZXRIb3N0RnVuY3Rpb24oY2Fs
bFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uLCBOb0ludHJpbnNpYywgY2FsbEhvc3RGdW5jdGlv
bkFzQ29uc3RydWN0b3IsIG51bGxwdHIsIG5hbWUpOwogICAgIFdlYkFzc2VtYmx5V3JhcHBlckZ1
bmN0aW9uKiByZXN1bHQgPSBuZXcgKE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxXZWJBc3NlbWJseVdy
YXBwZXJGdW5jdGlvbj4odm0pKSBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbih2bSwgZXhlY3V0
YWJsZSwgZ2xvYmFsT2JqZWN0LCBzdHJ1Y3R1cmUsIFdhc206Oldhc21Ub1dhc21JbXBvcnRhYmxl
RnVuY3Rpb24geyBzaWduYXR1cmVJbmRleCwgJmluc3RhbmNlLT5pbnN0YW5jZSgpLmltcG9ydEZ1
bmN0aW9uSW5mbyhpbXBvcnRJbmRleCktPndhc21Ub0VtYmVkZGVyU3R1YiB9ICk7CiAgICAgY29u
c3QgV2FzbTo6U2lnbmF0dXJlJiBzaWduYXR1cmUgPSBXYXNtOjpTaWduYXR1cmVJbmZvcm1hdGlv
bjo6Z2V0KHNpZ25hdHVyZUluZGV4KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJy
L1JlZ3VsYXJFeHByZXNzaW9uLmNwcAppbmRleCBlZTRmNThiZDQyMGQzOWExNGFkODFlZmNhZTdk
Mzc4ZDdmMzhjZGQ3Li4zNzkwMzZlYjM2Yjg2YjhiN2I3ODYyMDJlMjZiYjhmMTY3OTQzMzM0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Npb24uY3Bw
CkBAIC02NCw3ICs2NCw3IEBAIHByaXZhdGU6CiAKICAgICAgICAgSlNDOjpZYXJyOjpZYXJyUGF0
dGVybiBwYXR0ZXJuKHBhdHRlcm5TdHJpbmcsIGZsYWdzLCBtX2NvbnN0cnVjdGlvbkVycm9yQ29k
ZSk7CiAgICAgICAgIGlmIChKU0M6OllhcnI6Omhhc0Vycm9yKG1fY29uc3RydWN0aW9uRXJyb3JD
b2RlKSkgewotICAgICAgICAgICAgTE9HX0VSUk9SKCJSZWd1bGFyRXhwcmVzc2lvbjogWUFSUiBj
b21waWxlIGZhaWxlZCB3aXRoICclcyciLCBKU0M6OllhcnI6OmVycm9yTWVzc2FnZShtX2NvbnN0
cnVjdGlvbkVycm9yQ29kZSkpOworICAgICAgICAgICAgTE9HX0VSUk9SKCJSZWd1bGFyRXhwcmVz
c2lvbjogWUFSUiBjb21waWxlIGZhaWxlZCB3aXRoICclcyciLCBKU0M6OllhcnI6OmVycm9yTWVz
c2FnZShtX2NvbnN0cnVjdGlvbkVycm9yQ29kZSkuY2hhcmFjdGVycygpKTsKICAgICAgICAgICAg
IHJldHVybiBudWxscHRyOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS95YXJyL1lhcnJFcnJvckNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lh
cnIvWWFyckVycm9yQ29kZS5jcHAKaW5kZXggNGYwM2UwNzQ2MjQwMGI1YzE2ZTRjZjlhNjhhMzIz
ODk4NDFkMTE0OS4uZmU2YjJlYjJmNWY5ZDM4NmUyMGQyOGVhOWZjNDYyMDg3YTMxMzQ4MCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5jcHAKQEAgLTMwLDM4
ICszMCwzOCBAQAogCiBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNlIFlhcnIgewogCi1jb25zdCBj
aGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JDb2RlIGVycm9yKQorQVNDSUlMaXRlcmFsIGVycm9yTWVz
c2FnZShFcnJvckNvZGUgZXJyb3IpCiB7CiAjZGVmaW5lIFJFR0VYUF9FUlJPUl9QUkVGSVggIklu
dmFsaWQgcmVndWxhciBleHByZXNzaW9uOiAiCiAgICAgLy8gVGhlIG9yZGVyIG9mIHRoaXMgYXJy
YXkgbXVzdCBtYXRjaCB0aGUgRXJyb3JDb2RlIGVudW0uCi0gICAgc3RhdGljIGNvbnN0IGNoYXIq
IGNvbnN0IGVycm9yTWVzc2FnZXNbXSA9IHsKLSAgICAgICAgbnVsbHB0ciwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v
IE5vRXJyb3IKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9u
IHRvbyBsYXJnZSIsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhdHRlcm5Ub29MYXJnZQot
ICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJudW1iZXJzIG91dCBvZiBvcmRlciBpbiB7fSBx
dWFudGlmaWVyIiwgICAgICAgICAgICAgICAgLy8gUXVhbnRpZmllck91dE9mT3JkZXIKLSAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibm90aGluZyB0byByZXBlYXQiLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIFF1YW50aWZpZXJXaXRob3V0QXRvbQotICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJudW1iZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXIiLCAg
ICAgICAgICAgICAgICAgICAgLy8gUXVhbnRpZmllclRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggImluY29tcGxldGUge30gcXVhbnRpZmllciBmb3IgVW5pY29kZSBwYXR0ZXJu
IiwgICAgICAgICAvLyBRdWFudGlmaWVySW5jb21wbGV0ZQotICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJtaXNzaW5nICkiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLy8gTWlzc2luZ1BhcmVudGhlc2VzCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVgg
InVubWF0Y2hlZCBdIG9yIH0gYnJhY2tldCBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAv
LyBCcmFja2V0VW5tYXRjaGVkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hl
ZCBwYXJlbnRoZXNlcyIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRo
ZXNlc1VubWF0Y2hlZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ1bnJlY29nbml6ZWQg
Y2hhcmFjdGVyIGFmdGVyICg/IiwgICAgICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNU
eXBlSW52YWxpZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGdyb3VwIHNw
ZWNpZmllciBuYW1lIiwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZEdyb3VwTmFt
ZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJkdXBsaWNhdGUgZ3JvdXAgc3BlY2lmaWVy
IG5hbWUiLCAgICAgICAgICAgICAgICAgICAgICAgLy8gRHVwbGljYXRlR3JvdXBOYW1lCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm1pc3NpbmcgdGVybWluYXRpbmcgXSBmb3IgY2hhcmFj
dGVyIGNsYXNzIiwgICAgICAgICAgICAvLyBDaGFyYWN0ZXJDbGFzc1VubWF0Y2hlZAotICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJyYW5nZSBvdXQgb2Ygb3JkZXIgaW4gY2hhcmFjdGVyIGNs
YXNzIiwgICAgICAgICAgICAgICAgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZU91dE9mT3JkZXIKLSAg
ICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCByYW5nZSBpbiBjaGFyYWN0ZXIgY2xh
c3MgZm9yIFVuaWNvZGUgcGF0dGVybiIsIC8vIENoYXJhY3RlckNsYXNzUmFuZ2VJbnZhbGlkCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIlxcIGF0IGVuZCBvZiBwYXR0ZXJuIiwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFc2NhcGVVbnRlcm1pbmF0ZWQKLSAgICAgICAg
UkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBVbmljb2RlIFxcdSBlc2NhcGUiLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlRXNjYXBlCi0gICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImludmFsaWQgVW5pY29kZSBjb2RlIHBvaW50IFxcdXt9IGVzY2FwZSIs
ICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5pY29kZUNvZGVQb2ludEVzY2FwZQotICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGJhY2tyZWZlcmVuY2UgZm9yIFVuaWNvZGUgcGF0
dGVybiIsICAgICAgICAgICAgLy8gSW52YWxpZEJhY2tyZWZlcmVuY2UKLSAgICAgICAgUkVHRVhQ
X0VSUk9SX1BSRUZJWCAiaW52YWxpZCBcXGs8PiBuYW1lZCBiYWNrcmVmZXJlbmNlIiwgICAgICAg
ICAgICAgICAgICAgIC8vIEludmFsaWROYW1lZEJhY2tSZWZlcmVuY2UKLSAgICAgICAgUkVHRVhQ
X0VSUk9SX1BSRUZJWCAiaW52YWxpZCBlc2NhcGVkIGNoYXJhY3RlciBmb3IgVW5pY29kZSBwYXR0
ZXJuIiwgICAgICAgIC8vIEludmFsaWRJZGVudGl0eUVzY2FwZQotICAgICAgICBSRUdFWFBfRVJS
T1JfUFJFRklYICJpbnZhbGlkIG9jdGFsIGVzY2FwZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAg
ICAgICAgICAgLy8gSW52YWxpZE9jdGFsRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggImludmFsaWQgXFxjIGVzY2FwZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAgICAg
ICAvLyBJbnZhbGlkQ29udHJvbExldHRlckVzY2FwZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJpbnZhbGlkIHByb3BlcnR5IGV4cHJlc3Npb24iLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gSW52YWxpZFVuaWNvZGVQcm9wZXJ0eUV4cHJlc3Npb24KLSAgICAgICAgUkVHRVhQX0VS
Uk9SX1BSRUZJWCAidG9vIG1hbnkgbmVzdGVkIGRpc2p1bmN0aW9ucyIsICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIFRvb01hbnlEaXNqdW5jdGlvbnMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BS
RUZJWCAicGF0dGVybiBleGNlZWRzIHN0cmluZyBsZW5ndGggbGltaXRzIiwgICAgICAgICAgICAg
ICAgIC8vIE9mZnNldFRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFs
aWQgZmxhZ3MiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZh
bGlkUmVndWxhckV4cHJlc3Npb25GbGFncworICAgIHN0YXRpYyBjb25zdCBBU0NJSUxpdGVyYWwg
ZXJyb3JNZXNzYWdlc1tdID0geworICAgICAgICBBU0NJSUxpdGVyYWw6Om51bGwoKSwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBOb0Vy
cm9yCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInJlZ3VsYXIgZXhwcmVzc2lvbiB0b28g
bGFyZ2UiX3MsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhdHRlcm5Ub29MYXJnZQorICAg
ICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJudW1iZXJzIG91dCBvZiBvcmRlciBpbiB7fSBxdWFu
dGlmaWVyIl9zLCAgICAgICAgICAgICAgICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgorICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJub3RoaW5nIHRvIHJlcGVhdCJfcywgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyBRdWFudGlmaWVyV2l0aG91dEF0b20KKyAgICAgICAg
UkVHRVhQX0VSUk9SX1BSRUZJWCAibnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyIl9z
LCAgICAgICAgICAgICAgICAgICAgLy8gUXVhbnRpZmllclRvb0xhcmdlCisgICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImluY29tcGxldGUge30gcXVhbnRpZmllciBmb3IgVW5pY29kZSBwYXR0
ZXJuIl9zLCAgICAgICAgIC8vIFF1YW50aWZpZXJJbmNvbXBsZXRlCisgICAgICAgIFJFR0VYUF9F
UlJPUl9QUkVGSVggIm1pc3NpbmcgKSJfcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vIE1pc3NpbmdQYXJlbnRoZXNlcworICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJ1bm1hdGNoZWQgXSBvciB9IGJyYWNrZXQgZm9yIFVuaWNvZGUgcGF0dGVybiJfcywg
ICAgICAgICAvLyBCcmFja2V0VW5tYXRjaGVkCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVgg
InVubWF0Y2hlZCBwYXJlbnRoZXNlcyJfcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8vIFBhcmVudGhlc2VzVW5tYXRjaGVkCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVu
cmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIgKD8iX3MsICAgICAgICAgICAgICAgICAgICAgIC8v
IFBhcmVudGhlc2VzVHlwZUludmFsaWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52
YWxpZCBncm91cCBzcGVjaWZpZXIgbmFtZSJfcywgICAgICAgICAgICAgICAgICAgICAgICAgLy8g
SW52YWxpZEdyb3VwTmFtZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJkdXBsaWNhdGUg
Z3JvdXAgc3BlY2lmaWVyIG5hbWUiX3MsICAgICAgICAgICAgICAgICAgICAgICAvLyBEdXBsaWNh
dGVHcm91cE5hbWUKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibWlzc2luZyB0ZXJtaW5h
dGluZyBdIGZvciBjaGFyYWN0ZXIgY2xhc3MiX3MsICAgICAgICAgICAgLy8gQ2hhcmFjdGVyQ2xh
c3NVbm1hdGNoZWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicmFuZ2Ugb3V0IG9mIG9y
ZGVyIGluIGNoYXJhY3RlciBjbGFzcyJfcywgICAgICAgICAgICAgICAgLy8gQ2hhcmFjdGVyQ2xh
c3NSYW5nZU91dE9mT3JkZXIKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBy
YW5nZSBpbiBjaGFyYWN0ZXIgY2xhc3MgZm9yIFVuaWNvZGUgcGF0dGVybiJfcywgLy8gQ2hhcmFj
dGVyQ2xhc3NSYW5nZUludmFsaWQKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiXFwgYXQg
ZW5kIG9mIHBhdHRlcm4iX3MsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXNj
YXBlVW50ZXJtaW5hdGVkCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgVW5p
Y29kZSBcXHUgZXNjYXBlIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRV
bmljb2RlRXNjYXBlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgVW5pY29k
ZSBjb2RlIHBvaW50IFxcdXt9IGVzY2FwZSJfcywgICAgICAgICAgICAgIC8vIEludmFsaWRVbmlj
b2RlQ29kZVBvaW50RXNjYXBlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQg
YmFja3JlZmVyZW5jZSBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgICAgIC8vIEludmFs
aWRCYWNrcmVmZXJlbmNlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxr
PD4gbmFtZWQgYmFja3JlZmVyZW5jZSJfcywgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRO
YW1lZEJhY2tSZWZlcmVuY2UKKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBl
c2NhcGVkIGNoYXJhY3RlciBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgLy8gSW52YWxp
ZElkZW50aXR5RXNjYXBlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgb2N0
YWwgZXNjYXBlIGZvciBVbmljb2RlIHBhdHRlcm4iX3MsICAgICAgICAgICAgIC8vIEludmFsaWRP
Y3RhbEVzY2FwZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIFxcYyBlc2Nh
cGUgZm9yIFVuaWNvZGUgcGF0dGVybiJfcywgICAgICAgICAgICAgICAvLyBJbnZhbGlkQ29udHJv
bExldHRlckVzY2FwZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHByb3Bl
cnR5IGV4cHJlc3Npb24iX3MsICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5p
Y29kZVByb3BlcnR5RXhwcmVzc2lvbgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ0b28g
bWFueSBuZXN0ZWQgZGlzanVuY3Rpb25zIl9zLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBU
b29NYW55RGlzanVuY3Rpb25zCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInBhdHRlcm4g
ZXhjZWVkcyBzdHJpbmcgbGVuZ3RoIGxpbWl0cyJfcywgICAgICAgICAgICAgICAgIC8vIE9mZnNl
dFRvb0xhcmdlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZmxhZ3MiX3Mg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRSZWd1bGFy
RXhwcmVzc2lvbkZsYWdzCiAgICAgfTsKIAogICAgIHJldHVybiBlcnJvck1lc3NhZ2VzW3N0YXRp
Y19jYXN0PHVuc2lnbmVkPihlcnJvcildOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3lhcnIvWWFyckVycm9yQ29kZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckVycm9yQ29kZS5oCmluZGV4IGQyNzdmY2JjNGRjYTgzYmQ4ODMwOTdjN2MwMDNhZDM2NzliYjU1
ZjkuLmViZmY1OTZlNWU0MWY1YjlhNDIyY2Y3MjRmZDFkYzc0YjUwMjEyMzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJFcnJvckNvZGUuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJyRXJyb3JDb2RlLmgKQEAgLTI1LDYgKzI1LDggQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgorCiBuYW1lc3BhY2UgSlND
IHsKIAogY2xhc3MgQ2FsbEZyYW1lOwpAQCAtNjMsNyArNjUsNyBAQCBlbnVtIGNsYXNzIEVycm9y
Q29kZSA6IHVpbnQ4X3QgewogICAgIEludmFsaWRSZWd1bGFyRXhwcmVzc2lvbkZsYWdzLAogfTsK
IAotSlNfRVhQT1JUX1BSSVZBVEUgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKEVycm9yQ29kZSk7
CitKU19FWFBPUlRfUFJJVkFURSBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKEVycm9yQ29kZSk7
CiBpbmxpbmUgYm9vbCBoYXNFcnJvcihFcnJvckNvZGUgZXJyb3JDb2RlKQogewogICAgIHJldHVy
biBlcnJvckNvZGUgIT0gRXJyb3JDb2RlOjpOb0Vycm9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvUmVzb3VyY2VVc2FnZS5oIGIvU291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5oCmlu
ZGV4IDgzZDJhNmRiOTg1MDU5ODA4ZTU4OWYxODZmZGViMDk4MmRmNTE1ODYuLmVlNTFmYmI4ZGRl
MGQ2Mjc0YmZkNmJiY2FjMWI4YjI4ZjE2MDE5YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3Rm
L1Jlc291cmNlVXNhZ2UuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmgKQEAg
LTI2LDYgKzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YXJyYXk+CisjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTM5LDcgKzQwLDcgQEAg
c3RydWN0IFRhZ0luZm8gewogICAgIHNpemVfdCByZXNlcnZlZCB7IDAgfTsKIH07CiAKLVdURl9F
WFBPUlRfUFJJVkFURSBjb25zdCBjaGFyKiBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkKTsK
K1dURl9FWFBPUlRfUFJJVkFURSBBU0NJSUxpdGVyYWwgZGlzcGxheU5hbWVGb3JWTVRhZyh1bnNp
Z25lZCk7CiBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IHZtUGFnZVNpemUoKTsKIFdURl9FWFBP
UlRfUFJJVkFURSBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4gcGFnZXNQZXJWTVRhZygpOwogV1RG
X0VYUE9SVF9QUklWQVRFIHZvaWQgbG9nRm9vdHByaW50Q29tcGFyaXNvbihjb25zdCBzdGQ6OmFy
cmF5PFRhZ0luZm8sIDI1Nj4mLCBjb25zdCBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4mKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL2NvY29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAgYi9T
b3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwCmluZGV4IDMxNDA3YmFh
ZDU0MDc0NmI4NTk3NmRkODkzYWM0ODk5NGJiMTc3MDMuLjQ4Y2ZiNjQ3YzU2OTM4ZTY2NDRmZDEy
MGMxNDY1N2MyODhmMTEzOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL2NvY29hL1Jlc291
cmNlVXNhZ2VDb2NvYS5jcHAKKysrIGIvU291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2Fn
ZUNvY29hLmNwcApAQCAtNjksMzYgKzY5LDM2IEBAIHZvaWQgbG9nRm9vdHByaW50Q29tcGFyaXNv
bihjb25zdCBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4mIGJlZm9yZSwgY29uc3Qgc3RkOjphCiAg
ICAgfQogfQogCi1jb25zdCBjaGFyKiBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkIHRhZykK
K0FTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkIHRhZykKIHsKICAgICBz
d2l0Y2ggKHRhZykgewotICAgIGNhc2UgVk1fTUVNT1JZX0NHSU1BR0U6IHJldHVybiAiQ0cgaW1h
Z2UiOwotICAgIGNhc2UgVk1fTUVNT1JZX0NPUkVHUkFQSElDU19EQVRBOiByZXR1cm4gIkNHIHJh
c3RlciBkYXRhIjsKLSAgICBjYXNlIFZNX01FTU9SWV9DT1JFU0VSVklDRVM6IHJldHVybiAiQ29y
ZVNlcnZpY2VzIjsKLSAgICBjYXNlIFZNX01FTU9SWV9EWUxJQjogcmV0dXJuICJkeWxpYiI7Ci0g
ICAgY2FzZSBWTV9NRU1PUllfRk9VTkRBVElPTjogcmV0dXJuICJGb3VuZGF0aW9uIjsKLSAgICBj
YXNlIFZNX01FTU9SWV9JTUFHRUlPOiByZXR1cm4gIkltYWdlSU8iOwotICAgIGNhc2UgVk1fTUVN
T1JZX0lPQUNDRUxFUkFUT1I6IHJldHVybiAiSU9BY2NlbGVyYXRvciI7Ci0gICAgY2FzZSBWTV9N
RU1PUllfSU9TVVJGQUNFOiByZXR1cm4gIklPU3VyZmFjZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllf
SU9LSVQ6IHJldHVybiAiSU9LaXQiOwotICAgIGNhc2UgVk1fTUVNT1JZX0pBVkFTQ1JJUFRfQ09S
RTogcmV0dXJuICJHaWdhY2FnZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRf
RVhFQ1VUQUJMRV9BTExPQ0FUT1I6IHJldHVybiAiSlNDIEpJVCI7Ci0gICAgY2FzZSBWTV9NRU1P
UllfSkFWQVNDUklQVF9KSVRfUkVHSVNURVJfRklMRTogcmV0dXJuICJJc29IZWFwIjsKLSAgICBj
YXNlIFZNX01FTU9SWV9MQVlFUktJVDogcmV0dXJuICJDb3JlQW5pbWF0aW9uIjsKLSAgICBjYXNl
IFZNX01FTU9SWV9MSUJESVNQQVRDSDogcmV0dXJuICJsaWJkaXNwYXRjaCI7Ci0gICAgY2FzZSBW
TV9NRU1PUllfTUFMTE9DOiByZXR1cm4gIm1hbGxvYyI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFM
TE9DX0hVR0U6IHJldHVybiAibWFsbG9jIChodWdlKSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFM
TE9DX0xBUkdFOiByZXR1cm4gIm1hbGxvYyAobGFyZ2UpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9N
QUxMT0NfTUVESVVNOiByZXR1cm4gIm1hbGxvYyAobWVkaXVtKSI7Ci0gICAgY2FzZSBWTV9NRU1P
UllfTUFMTE9DX05BTk86IHJldHVybiAibWFsbG9jIChuYW5vKSI7Ci0gICAgY2FzZSBWTV9NRU1P
UllfTUFMTE9DX1NNQUxMOiByZXR1cm4gIm1hbGxvYyAoc21hbGwpIjsKLSAgICBjYXNlIFZNX01F
TU9SWV9NQUxMT0NfVElOWTogcmV0dXJuICJtYWxsb2MgKHRpbnkpIjsKLSAgICBjYXNlIFZNX01F
TU9SWV9PU19BTExPQ19PTkNFOiByZXR1cm4gIm9zX2FsbG9jX29uY2UiOwotICAgIGNhc2UgVk1f
TUVNT1JZX1NRTElURTogcmV0dXJuICJTUUxpdGUiOwotICAgIGNhc2UgVk1fTUVNT1JZX1NUQUNL
OiByZXR1cm4gIlN0YWNrIjsKLSAgICBjYXNlIFZNX01FTU9SWV9UQ01BTExPQzogcmV0dXJuICJi
bWFsbG9jIjsKLSAgICBjYXNlIFZNX01FTU9SWV9VTlNIQVJFRF9QTUFQOiByZXR1cm4gInBtYXAg
KHVuc2hhcmVkKSI7Ci0gICAgZGVmYXVsdDogcmV0dXJuIG51bGxwdHI7CisgICAgY2FzZSBWTV9N
RU1PUllfQ0dJTUFHRTogcmV0dXJuICJDRyBpbWFnZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9D
T1JFR1JBUEhJQ1NfREFUQTogcmV0dXJuICJDRyByYXN0ZXIgZGF0YSJfczsKKyAgICBjYXNlIFZN
X01FTU9SWV9DT1JFU0VSVklDRVM6IHJldHVybiAiQ29yZVNlcnZpY2VzIl9zOworICAgIGNhc2Ug
Vk1fTUVNT1JZX0RZTElCOiByZXR1cm4gImR5bGliIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0ZP
VU5EQVRJT046IHJldHVybiAiRm91bmRhdGlvbiJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JTUFH
RUlPOiByZXR1cm4gIkltYWdlSU8iX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9BQ0NFTEVSQVRP
UjogcmV0dXJuICJJT0FjY2VsZXJhdG9yIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0lPU1VSRkFD
RTogcmV0dXJuICJJT1N1cmZhY2UiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSU9LSVQ6IHJldHVy
biAiSU9LaXQiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9DT1JFOiByZXR1cm4g
IkdpZ2FjYWdlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0pBVkFTQ1JJUFRfSklUX0VYRUNVVEFC
TEVfQUxMT0NBVE9SOiByZXR1cm4gIkpTQyBKSVQiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSkFW
QVNDUklQVF9KSVRfUkVHSVNURVJfRklMRTogcmV0dXJuICJJc29IZWFwIl9zOworICAgIGNhc2Ug
Vk1fTUVNT1JZX0xBWUVSS0lUOiByZXR1cm4gIkNvcmVBbmltYXRpb24iX3M7CisgICAgY2FzZSBW
TV9NRU1PUllfTElCRElTUEFUQ0g6IHJldHVybiAibGliZGlzcGF0Y2giX3M7CisgICAgY2FzZSBW
TV9NRU1PUllfTUFMTE9DOiByZXR1cm4gIm1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9N
QUxMT0NfSFVHRTogcmV0dXJuICJtYWxsb2MgKGh1Z2UpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X01BTExPQ19MQVJHRTogcmV0dXJuICJtYWxsb2MgKGxhcmdlKSJfczsKKyAgICBjYXNlIFZNX01F
TU9SWV9NQUxMT0NfTUVESVVNOiByZXR1cm4gIm1hbGxvYyAobWVkaXVtKSJfczsKKyAgICBjYXNl
IFZNX01FTU9SWV9NQUxMT0NfTkFOTzogcmV0dXJuICJtYWxsb2MgKG5hbm8pIl9zOworICAgIGNh
c2UgVk1fTUVNT1JZX01BTExPQ19TTUFMTDogcmV0dXJuICJtYWxsb2MgKHNtYWxsKSJfczsKKyAg
ICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfVElOWTogcmV0dXJuICJtYWxsb2MgKHRpbnkpIl9zOwor
ICAgIGNhc2UgVk1fTUVNT1JZX09TX0FMTE9DX09OQ0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSJf
czsKKyAgICBjYXNlIFZNX01FTU9SWV9TUUxJVEU6IHJldHVybiAiU1FMaXRlIl9zOworICAgIGNh
c2UgVk1fTUVNT1JZX1NUQUNLOiByZXR1cm4gIlN0YWNrIl9zOworICAgIGNhc2UgVk1fTUVNT1JZ
X1RDTUFMTE9DOiByZXR1cm4gImJtYWxsb2MiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfVU5TSEFS
RURfUE1BUDogcmV0dXJuICJwbWFwICh1bnNoYXJlZCkiX3M7CisgICAgZGVmYXVsdDogcmV0dXJu
IEFTQ0lJTGl0ZXJhbDo6bnVsbCgpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdJbXBsLmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwu
aAppbmRleCBjNzZjZDUyMzY3NjExYzk0MmQzNDJiZjA5MWIxNjJhMGE2Nzc0NGUwLi44ZDgwZjc4
Nzc4M2Q0M2M1NjJmOGUwY2QzZTM2NzViOTc2YmE4MjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RG
L3d0Zi90ZXh0L1N0cmluZ0ltcGwuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0lt
cGwuaApAQCAtNDMxLDcgKzQzMSw3IEBAIHB1YmxpYzoKICAgICBzaXplX3QgZmluZChjaGFyIGNo
YXJhY3RlciwgdW5zaWduZWQgc3RhcnQgPSAwKTsKICAgICBzaXplX3QgZmluZChVQ2hhciBjaGFy
YWN0ZXIsIHVuc2lnbmVkIHN0YXJ0ID0gMCk7CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVf
dCBmaW5kKENvZGVVbml0TWF0Y2hGdW5jdGlvbiwgdW5zaWduZWQgaW5kZXggPSAwKTsKLSAgICBz
aXplX3QgZmluZChjb25zdCBMQ2hhciosIHVuc2lnbmVkIGluZGV4ID0gMCk7CisgICAgV1RGX0VY
UE9SVF9QUklWQVRFIHNpemVfdCBmaW5kKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAw
KTsKICAgICBBTFdBWVNfSU5MSU5FIHNpemVfdCBmaW5kKGNvbnN0IGNoYXIqIHN0cmluZywgdW5z
aWduZWQgaW5kZXggPSAwKSB7IHJldHVybiBmaW5kKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgTENo
YXIqPihzdHJpbmcpLCBpbmRleCk7IH0KICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZp
bmQoU3RyaW5nSW1wbCopOwogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzaXplX3QgZmluZChTdHJp
bmdJbXBsKiwgdW5zaWduZWQgaW5kZXgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4
dC9XVEZTdHJpbmcuY3BwIGIvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCmluZGV4
IDNhOTFhNjc3ZDVjMDM4ZTAzYjdjNWViMzJmMzczM2JlZmMwOGNhNTUuLmYzNDU5MzRiNzNjYzhk
NDUyMDVlM2E0NmFjNjE5MjBhOWEzOTk5YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3Rl
eHQvV1RGU3RyaW5nLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAK
QEAgLTgwLDcgKzgwLDcgQEAgU3RyaW5nOjpTdHJpbmcoY29uc3QgY2hhciogbnVsbFRlcm1pbmF0
ZWRTdHJpbmcpCiB9CiAKIFN0cmluZzo6U3RyaW5nKEFTQ0lJTGl0ZXJhbCBjaGFyYWN0ZXJzKQot
ICAgIDogbV9pbXBsKFN0cmluZ0ltcGw6OmNyZWF0ZUZyb21MaXRlcmFsKGNoYXJhY3RlcnMpKQor
ICAgIDogbV9pbXBsKGNoYXJhY3RlcnMuaXNOdWxsKCkgPyBudWxscHRyIDogUmVmUHRyPFN0cmlu
Z0ltcGw+IHsgU3RyaW5nSW1wbDo6Y3JlYXRlRnJvbUxpdGVyYWwoY2hhcmFjdGVycykgfSkKIHsK
IH0KIApAQCAtNDY1LDMxICs0NjUsMzEgQEAgU3RyaW5nIFN0cmluZzo6bnVtYmVyKHVuc2lnbmVk
IGxvbmcgbG9uZyBudW1iZXIpCiBTdHJpbmcgU3RyaW5nOjpudW1iZXJUb1N0cmluZ0ZpeGVkUHJl
Y2lzaW9uKGZsb2F0IG51bWJlciwgdW5zaWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1
bmNhdGluZ1BvbGljeSB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAgICBOdW1i
ZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvRml4ZWRQcmVjaXNp
b25TdHJpbmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwgdHJhaWxpbmdaZXJvc1RydW5jYXRp
bmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsKKyAgICByZXR1cm4gU3RyaW5nIHsg
bnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0
cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpIH07
CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24oZG91Ymxl
IG51bWJlciwgdW5zaWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGlj
eSB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1
ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVt
YmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwgdHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0g
VHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhl
ZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9z
VHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmlu
ZyBTdHJpbmc6Om51bWJlcihmbG9hdCBudW1iZXIpCiB7CiAgICAgTnVtYmVyVG9TdHJpbmdCdWZm
ZXIgYnVmZmVyOwotICAgIHJldHVybiBudW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1ZmZlcik7Cisg
ICAgcmV0dXJuIFN0cmluZyB7IG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVyKSB9OwogfQog
CiBTdHJpbmcgU3RyaW5nOjpudW1iZXIoZG91YmxlIG51bWJlcikKIHsKICAgICBOdW1iZXJUb1N0
cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVm
ZmVyKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIp
IH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRXaWR0aChkb3VibGUg
bnVtYmVyLCB1bnNpZ25lZCBkZWNpbWFsUGxhY2VzKQogewogICAgIE51bWJlclRvU3RyaW5nQnVm
ZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwg
ZGVjaW1hbFBsYWNlcywgYnVmZmVyKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhl
ZFdpZHRoU3RyaW5nKG51bWJlciwgZGVjaW1hbFBsYWNlcywgYnVmZmVyKSB9OwogfQogCiBkb3Vi
bGUgU3RyaW5nOjp0b0RvdWJsZShib29sKiBvaykgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL3RleHQvV1RGU3RyaW5nLmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5o
CmluZGV4IDUxMWI5YzE2NGExYTU4YzExZDRjZmQ1MzIxZTMyZjUyN2I0YzllZDYuLjQxZWQzNWNj
YTZlOWY3MWYyNmVkZGJkMzVhNzhhZTZhZTY0NzgwODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL3RleHQvV1RGU3RyaW5nLmgKKysrIGIvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcu
aApAQCAtMTcxLDYgKzE3MSw3IEBAIHB1YmxpYzoKIAogICAgIHNpemVfdCBmaW5kKENvZGVVbml0
TWF0Y2hGdW5jdGlvbiBtYXRjaEZ1bmN0aW9uLCB1bnNpZ25lZCBzdGFydCA9IDApIGNvbnN0IHsg
cmV0dXJuIG1faW1wbCA/IG1faW1wbC0+ZmluZChtYXRjaEZ1bmN0aW9uLCBzdGFydCkgOiBub3RG
b3VuZDsgfQogICAgIHNpemVfdCBmaW5kKGNvbnN0IExDaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0
YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3Rh
cnQpIDogbm90Rm91bmQ7IH0KKyAgICBzaXplX3QgZmluZChjb25zdCBjaGFyKiBzdHJpbmcsIHVu
c2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKHN0
cmluZywgc3RhcnQpIDogbm90Rm91bmQ7IH0KIAogICAgIC8vIEZpbmQgdGhlIGxhc3QgaW5zdGFu
Y2Ugb2YgYSBzaW5nbGUgY2hhcmFjdGVyIG9yIHN0cmluZy4KICAgICBzaXplX3QgcmV2ZXJzZUZp
bmQoVUNoYXIgY2hhcmFjdGVyLCB1bnNpZ25lZCBzdGFydCA9IE1heExlbmd0aCkgY29uc3QgeyBy
ZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5yZXZlcnNlRmluZChjaGFyYWN0ZXIsIHN0YXJ0KSA6IG5v
dEZvdW5kOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1
ZGlvV29ya2xldEdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IGFjMDUwNWQ1NDk2NDIzZmM1ZmRl
ZTY2MzBlYjdmOTUzODAyMTMzNTguLmZmOTM3MTBmMjA5NzQ2YmFhZWY5YTY2YzU3Y2QwMjRjMDk1
M2NiMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9X
b3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCkBAIC0xNDYsNyArMTQ2LDcgQEAgUmVmUHRy
PEF1ZGlvV29ya2xldFByb2Nlc3Nvcj4gQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGU6OmNyZWF0ZVBy
b2Nlc3Nvcihjb25zdCBTdHIKICAgICBhcmdzLmFwcGVuZChhcmcpOwogICAgIEFTU0VSVCghYXJn
cy5oYXNPdmVyZmxvd2VkKCkpOwogCi0gICAgYXV0byogb2JqZWN0ID0gSlNDOjpjb25zdHJ1Y3Qo
Z2xvYmFsT2JqZWN0LCBqc0NvbnN0cnVjdG9yLCBhcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBB
dWRpb1dvcmtsZXRQcm9jZXNzb3IiKTsKKyAgICBhdXRvKiBvYmplY3QgPSBKU0M6OmNvbnN0cnVj
dChnbG9iYWxPYmplY3QsIGpzQ29uc3RydWN0b3IsIGFyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0
IEF1ZGlvV29ya2xldFByb2Nlc3NvciJfcyk7CiAgICAgQVNTRVJUKCEhc2NvcGUuZXhjZXB0aW9u
KCkgPT0gIW9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNv
bnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25z
dHJ1Y3Rvci5oCmluZGV4IGY1NTNjMjVkZTc5ZjczMWMwNzlmNWFlMGZlMWUxOGEwYzcwYzVkNjUu
LjI0YTQxYWI4N2ZmNTkxOTFiOGVhYmU4ZmNlMThlZTY0YmIyOTBmZjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaApAQCAt
OTgsNyArOTgsNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSgogICAgICAgICByZXR1cm4geyB9
OwogCiAgICAgYXV0byoganNPYmplY3QgPSBKU0NsYXNzOjpjcmVhdGUoc3RydWN0dXJlLCBjYXN0
ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSk7Ci0gICAgSlNDOjpjYWxsKGxleGljYWxHbG9iYWxPYmpl
Y3QsIGNhc3RlZFRoaXMtPmluaXRpYWxpemVGdW5jdGlvbigpLCBqc09iamVjdCwgSlNDOjpBcmdM
aXN0KGNhbGxGcmFtZSksICJUaGlzIGVycm9yIHNob3VsZCBuZXZlciBvY2N1cjogaW5pdGlhbGl6
ZSBmdW5jdGlvbiBpcyBndWFyYW50ZWVkIHRvIGJlIGNhbGxhYmxlLiIpOworICAgIEpTQzo6Y2Fs
bChsZXhpY2FsR2xvYmFsT2JqZWN0LCBjYXN0ZWRUaGlzLT5pbml0aWFsaXplRnVuY3Rpb24oKSwg
anNPYmplY3QsIEpTQzo6QXJnTGlzdChjYWxsRnJhbWUpLCAiVGhpcyBlcnJvciBzaG91bGQgbmV2
ZXIgb2NjdXI6IGluaXRpYWxpemUgZnVuY3Rpb24gaXMgZ3VhcmFudGVlZCB0byBiZSBjYWxsYWJs
ZS4iX3MpOwogICAgIHJldHVybiBKU0M6OkpTVmFsdWU6OmVuY29kZShqc09iamVjdCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcApp
bmRleCBiMjYyNmZlYjRhMDUzNzM4ZWE3ZGVkMTgyNzc4NjVjNGY4MTM0YjU4Li43MWFiMTJiMTUw
ZjBlNzJmZGE5NTdjOTk0MWEwNDA3YmI0YjRlY2JkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCkBAIC04Miw3ICs4Miw3IEBAIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oZ2V0SW50ZXJuYWxXcml0YWJsZVN0cmVhbSk7CiBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKHdoZW5TaWduYWxBYm9ydGVkKTsKIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oaXNBYm9ydFNpZ25hbCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2JhbE9i
amVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFsT2JqZWN0OjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmpl
Y3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkRP
TUdsb2JhbE9iamVjdCJfcywgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmplY3QpIH07CiAKIEpTRE9NR2xv
YmFsT2JqZWN0OjpKU0RPTUdsb2JhbE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
LCBSZWY8RE9NV3JhcHBlcldvcmxkPiYmIHdvcmxkLCBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RU
YWJsZSogZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwg
c3RydWN0dXJlLCBnbG9iYWxPYmplY3RNZXRob2RUYWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwCmluZGV4IGVkMGUyNzRhNzg0NTY4MGE4OTUz
OTBkNjBkMTJjYWIyNjQ3YWY1ZGUuLjU3ZDBiNjQ5OTg1ZmUwNmMyNzQ4NWJhN2JmNmJmNzgxZjI0
Mjg3ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93
QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNl
LmNwcApAQCAtNjgsNyArNjgsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNw
YWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAi
V2luZG93IiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
RE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93Il9zLCAmSlNET01HbG9iYWxPYmplY3Q6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRv
d0Jhc2UpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTRE9NV2luZG93QmFz
ZTo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNl
SW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93
UHJvcGVydGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1By
b3BlcnRpZXMuY3BwCmluZGV4IDUxMjVhYzhjOTBkYWQzMjNkMDY2MDJlYTEwZDdlZjBkM2Q1Zjc5
ZDguLjI4N2JmYjA2NTBlZDUwMjBjYzYzYmY4ZDJlNjc4OWE3ZGVhMjY0OWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcApA
QCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBK
U0M7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3BlcnRpZXM6OnNfaW5mbyA9IHsg
IldpbmRvd1Byb3BlcnRpZXMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93UHJvcGVydGllcykgfTsKK2NvbnN0IENsYXNzSW5m
byBKU0RPTVdpbmRvd1Byb3BlcnRpZXM6OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNE
T01XaW5kb3dQcm9wZXJ0aWVzKSB9OwogCiAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3Jn
L211bHRpcGFnZS93aW5kb3ctb2JqZWN0Lmh0bWwjZG9tLXdpbmRvdy1uYW1lZGl0ZW0KIHN0YXRp
YyBib29sIGpzRE9NV2luZG93UHJvcGVydGllc0dldE93blByb3BlcnR5U2xvdE5hbWVkSXRlbUdl
dHRlcihKU0RPTVdpbmRvd1Byb3BlcnRpZXMqIHRoaXNPYmplY3QsIERPTVdpbmRvdyYgd2luZG93
LCBKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3Bl
cnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0
b3IuY3BwCmluZGV4IGI1MDE5MDU5YzEzNWVlNzZhYmVhMzNhOTUzZjI1MDMzYTE1N2VkODguLjZl
YmFkYjUxOGNkZDJhOWYyZjRkY2ZiNWE3YjIwYTE0NjAyMmMyNDkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGVJdGVyYXRvci5jcHAKQEAgLTQzLDExICs0MywxMSBAQCBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTihqc0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcl9vblBy
b21pc2VSZQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlSXRlcmF0b3JQcm90b3R5cGVOZXh0LCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJ
dGVyYXRvclByb3RvdHlwZTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJ
bmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAi
RGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0
b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJEaXJlY3Rv
cnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yQmFz
ZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0
ZXJhdG9yOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNs
YXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5
IEhhbmRsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogR0NDbGllbnQ6Oklzb1N1YnNwYWNlKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGVJdGVyYXRvcjo6c3Vic3BhY2VGb3JJbXBsKFZNJiB2bSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxP
YmplY3QuY3BwCmluZGV4IDQxNGY2ZDNkNTM0NmQ2YzI4NGVlMmM4YTc4NTQ0YzYxYzgwYTM5NzAu
LmEwN2E3NTRiODE2YmM5Mzk5YjliNDZmZWU0YjQzMGY1Mzc3ZmQ0MTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xv
YmFsT2JqZWN0LmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVz
aW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0lEQlNlcmlhbGl6YXRpb25H
bG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSURCU2Vy
aWFsaXphdGlvbkdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiSlNJREJTZXJpYWxpemF0aW9uR2xv
YmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdCkgfTsKIAogaW5saW5lIEpT
SURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2Jq
ZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxET01XcmFwcGVyV29ybGQ+JiYg
aW1wbCkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwCmlu
ZGV4IGE0ZDcxNWY3MDhjNjBjMDI4NjU3OWNmMTU5MDM1NzcwMGI3ZDU0YWQuLjNlMTEwNDBkOWUx
YWVmYzJiMzVmNWU1ZGQ5NzcxYzgxZDhhMjA0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNSZW1vdGVET01XaW5kb3dCYXNlLmNwcApAQCAtMzIsNyArMzIsNyBA
QCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZKU0RP
TUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTUmVtb3RlRE9NV2luZG93QmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURP
TVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyJfcywgJkpTRE9NR2xvYmFsT2JqZWN0Ojpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVET01X
aW5kb3dCYXNlKSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1JlbW90ZURP
TVdpbmRvd0Jhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgbnVsbHB0ciwg
Ly8gc2hlbGxTdXBwb3J0c1JpY2hTb3VyY2VJbmZvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCmluZGV4
IDgzZjk0ZTMxMDhmOGU0NThkNmQyNDdhMzlmMDJiOTU1YTNhNjFhMTEuLjMzMDRiN2I4ODhlOWNh
M2I1ZTRmZTNlMzdmODNhYTllY2IyYjQ0N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00
MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9
IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFs
U2NvcGVCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJh
c2U6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZKU0RPTUdsb2JhbE9i
amVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZUJhc2UpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRh
YmxlIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dpbmRvd1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCmluZGV4IDQ2OTlkOGVkYjUxZjIzZDE4OTM3ZGI4
N2JmYTZiODhmYWIxNDgwYTYuLjI3MjFiNzc2YWU2N2FiNjZmZDM1YmVjYzQxZjE3YzE0N2YyYTM1
ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCkBA
IC01MCw3ICs1MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpT
QzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2luZG93UHJveHk6OnNfaW5mbyA9IHsgIkpTV2luZG93
UHJveHkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTV2luZG93UHJveHkpIH07Citjb25zdCBDbGFzc0luZm8gSlNXaW5kb3dQcm94eTo6c19p
bmZvID0geyAiSlNXaW5kb3dQcm94eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dpbmRvd1Byb3h5KSB9OwogCiBpbmxpbmUgSlNXaW5k
b3dQcm94eTo6SlNXaW5kb3dQcm94eShWTSYgdm0sIFN0cnVjdHVyZSYgc3RydWN0dXJlLCBET01X
cmFwcGVyV29ybGQmIHdvcmxkKQogICAgIDogQmFzZSh2bSwgJnN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNw
cAppbmRleCA5NmNkZjZlMDA3YjQyMDYxNWY0YTUzNjRhN2I5YThjZGZjNjIzMDQwLi5iNDFlZDNl
ODQyNDAzY2Y1YTJkNTE2ZjYzMDFhMDEwZjc2M2Y1ZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00Myw3
ICs0Myw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1j
b25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtl
ckdsb2JhbFNjb3BlIiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UpIH07Citjb25z
dCBDbGFzc0luZm8gSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtlckds
b2JhbFNjb3BlIl9zLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29u
c3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNfZ2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9iYWxTY29w
ZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrbGV0R2xvYmFsU2Nv
cGVCYXNlLmNwcAppbmRleCAwOThiZjYzYjYwY2QzYzY2ZDg2NjQ1ZDVmNTU4MmIwNjM1ODZmYTEw
Li5iNjRjMmFhZWFkYTgxNDE3MjliNjkzYWYxMWE1NDFjNzc3ZjM0NTQ4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5j
cHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3Bh
Y2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2lu
Zm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29w
ZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2lu
Zm8gPSB7ICJXb3JrbGV0R2xvYmFsU2NvcGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNj
b3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrbGV0R2xv
YmFsU2NvcGVCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewogICAgICZzdXBwb3J0
c1JpY2hTb3VyY2VJbmZvLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA0NmEwYTVhZDFlMTVhYTZiM2QwMTY1MGFiZWY1ZDAx
MTNhZjRkMWRhLi4wNzNlMTU4ZTMxYTUzMmMyYjMzODU3ODdhOTc5MmM0MzIzMDY0YjQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bQpAQCAtNDU1NCw3ICs0NTU0LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAg
ICAgJG9iamVjdC0+R2VuZXJhdGVIYXNoVGFibGUoJGNsYXNzTmFtZSwgJGhhc2hOYW1lLCAkaGFz
aFNpemUsIFxAaGFzaEtleXMsIFxAaGFzaFNwZWNpYWxzLCBcQGhhc2hWYWx1ZTEsIFxAaGFzaFZh
bHVlMiwgXCVjb25kaXRpb25hbHMsIFwlcmVhZFdyaXRlQ29uZGl0aW9uYWxzLCAkanVzdEdlbmVy
YXRlVmFsdWVBcnJheSk7CiAKICAgICAgICAgbXkgJHByb3RvdHlwZUhhc2hUYWJsZSA9ICRqdXN0
R2VuZXJhdGVWYWx1ZUFycmF5ID8gIm51bGxwdHIiIDogIiYke2NsYXNzTmFtZX1Qcm90b3R5cGVU
YWJsZSI7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICR7Y2xh
c3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIs
ICZCYXNlOjpzX2luZm8sICR7cHJvdG90eXBlSGFzaFRhYmxlfSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgImNvbnN0IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNf
aW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVwiX3MsICZCYXNlOjpzX2luZm8sICR7
cHJvdG90eXBlSGFzaFRhYmxlfSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNz
TmFtZX1Qcm90b3R5cGUpIH07XG5cbiIpOwogCiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
dm9pZCAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSlcbiIpOwog
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwpAQCAtNDY0OCw3ICs0NjQ4LDcgQEAg
c3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICB9CiAKICAgICAjIC0gSW5pdGlhbGl6ZSBz
dGF0aWMgQ2xhc3NJbmZvIG9iamVjdAotICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xh
c3NJbmZvICRjbGFzc05hbWUiIC4gIjo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5h
bWV9XCIsICZCYXNlOjpzX2luZm8sICIpOworICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3Qg
Q2xhc3NJbmZvICRjbGFzc05hbWUiIC4gIjo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFj
ZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5mbywgIik7CiAKICAgICBpZiAoJG51bUluc3RhbmNlUHJv
cGVydGllcyA+IDApIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICImJHtjbGFzc05hbWV9
VGFibGUiKTsKQEAgLTY4MzAsMTEgKzY4MzAsMTEgQEAgdXNpbmcgJHtpdGVyYXRvclByb3RvdHlw
ZU5hbWV9ID0gSlNET01JdGVyYXRvclByb3RvdHlwZTwke2NsYXNzTmFtZX0sICR7aXRlcmF0b3IK
IEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKCR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfU5leHQs
ICR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpT
Qzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JOYW1lfUJhc2U6OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUlu
dGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yTmFtZX1CYXNlKSB9OwotY29uc3QgSlNDOjpD
bGFzc0luZm8gJHtpdGVyYXRvck5hbWV9OjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VO
YW1lfSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9KSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gJHtp
dGVyYXRvck5hbWV9QmFzZTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRl
cmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoJHtpdGVyYXRvck5hbWV9QmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRl
cmF0b3JOYW1lfTo6c19pbmZvID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3Ii
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
JHtpdGVyYXRvck5hbWV9KSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyAk
e2l0ZXJhdG9yUHJvdG90eXBlTmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5h
bWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRSgke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX0pIH07Citjb25zdCBKU0M6OkNsYXNz
SW5mbyAke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVy
ZmFjZU5hbWV9IEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKCR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfSkgfTsKIAogRU5ECiAK
QEAgLTc4MzEsNyArNzgzMSw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9k
cwogICAgICAgICAkbGVhc3RDb25zdHJ1Y3Rvckxlbmd0aCA9IDA7CiAgICAgfQogCi0gICAgcHVz
aChAJG91dHB1dEFycmF5LCAidGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gJHtjb25zdHJ1Y3Rv
ckNsYXNzTmFtZX06OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVwiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y29uc3Ry
dWN0b3JDbGFzc05hbWV9KSB9O1xuXG4iKTsKKyAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyAke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6c19pbmZvID0g
eyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfSkgfTtc
blxuIik7CiAKICAgICAjIElmIHRoZSBpbnRlcmZhY2UgaGFzIGEgcGFyZW50IGludGVyZmFjZSB3
aGljaCBkb2VzIG5vdCBoYXZlIFtMZWdhY3lOb0ludGVyZmFjZU9iamVjdF0sIHRoZW4gdXNlIGl0
cyBpbnRlcmZhY2Ugb2JqZWN0IGFzIHByb3RvdHlwZSwKICAgICAjIG90aGVyd2lzZSB1c2UgRnVu
Y3Rpb25Qcm90b3R5cGU6IGh0dHA6Ly9oZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jaW50ZXJmYWNl
LW9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU0RPTVdpbmRvdy5jcHAKaW5kZXggNzc4N2UxZGYwN2Q4YjUzNTVhNzg4MjU4Yzg4OGNm
NTA1OTIzODU4Mi4uMGZlYTAyNTk1NmIwMTU5OWU3YjU2MDM4NTQzODYxMzZhMmEwMTExMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2lu
ZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNE
T01XaW5kb3cuY3BwCkBAIC0xNDcsNyArMTQ3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTRE9NV2luZG93VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlIEpTRE9NV2luZG93VGFibGUgPSB7IDEyLCAzMSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8o
KSwgSlNET01XaW5kb3dUYWJsZVZhbHVlcywgSlNET01XaW5kb3dUYWJsZUluZGV4IH07Ci10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJET01XaW5kb3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01X
aW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNET01XaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTRE9NV2luZG93RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3Nyw3
ICsxNzcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNET01XaW5kb3dQcm90b3R5
cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNET01XaW5k
b3dQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8oKSwgSlNE
T01XaW5kb3dQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZUlu
ZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IkRPTVdpbmRvdyIsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJET01XaW5kb3ci
X3MsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTRE9N
V2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xODYsNyArMTg2
LDcgQEAgdm9pZCBKU0RPTVdpbmRvd1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNET01XaW5kb3c6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2lu
Zm8sICZKU0RPTVdpbmRvd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93OjpzX2luZm8gPSB7ICJET01X
aW5kb3ciX3MsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1RhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93KSB9OwogCiBKU0RPTVdpbmRvdzo6SlNET01XaW5k
b3coVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERPTVdpbmRvdz4mJiBpbXBsLCBK
U1dpbmRvd1Byb3h5KiBwcm94eSkKICAgICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwg
V1RGTW92ZShpbXBsKSwgcHJveHkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZS5jcHAKaW5kZXggMmRjYmE5ZjY0MGZhMTAwODRlOGNiNWRhMGI4MDUzZjVkMWI4ODk5
OS4uOTI4NjhkNTc3NzU2YWNjNzA0YmMyMmU4MTcyMmZiYjJlMWUwYjg1NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2Vy
R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtNzQsNyArNzQsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRh
YmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTRGVkaWNhdGVkV29ya2VyR2xv
YmFsU2NvcGU6OmluZm8oKSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVz
LCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9N
Q29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNCw3ICsx
MDQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hU
YWJsZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEs
IHRydWUsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNEZWRpY2F0ZWRX
b3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlUHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2Nv
cGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNEZWRpY2F0ZWRXb3Jr
ZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEz
LDcgKzExMyw3IEBAIHZvaWQgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19p
bmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRX
b3JrZXJHbG9iYWxTY29wZSkgfTsKIAogSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6SlNE
ZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBS
ZWY8RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU+JiYgaW1wbCkKICAgICA6IEpTV29ya2VyR2xv
YmFsU2NvcGUodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcApp
bmRleCBlNWZjMzVjOGFlOWMzMWIwZDE4NzI2NmZmMTk3YjkzMDAwMzYyNzJiLi40NjlhMTIxZjI0
OTVlNmI0MjhhZWVmNjIwODhhZDA1ZmU1NGNhNzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3BwCkBAIC05
MSw3ICs5MSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTRXhwb3Nl
ZFN0YXJQcm90b3R5cGUsIEpTRXhwb3NlZFN0YXJQcm90b3R5CiAKIHVzaW5nIEpTRXhwb3NlZFN0
YXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTRXhw
b3NlZFN0YXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyRE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRTdGFyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAg
eyAib3BlcmF0aW9uSnVzdEZvcldvcmtlckNvbnRleHRzIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc0V4cG9zZWRTdGFyUHJvdG90eXBl
RnVuY3Rpb25fb3BlcmF0aW9uSnVzdEZvcldvcmtlckNvbnRleHRzKSwgKGludHB0cl90KSAoMCkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIkV4cG9zZWRTdGFyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhw
b3NlZFN0YXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQzLDcgKzE0Myw3IEBAIHZvaWQgSlNFeHBvc2Vk
U3RhclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNFeHBvc2Vk
U3Rhcjo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXIpIH07Citjb25zdCBDbGFz
c0luZm8gSlNFeHBvc2VkU3Rhcjo6c19pbmZvID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3Rh
cikgfTsKIAogSlNFeHBvc2VkU3Rhcjo6SlNFeHBvc2VkU3RhcihTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPEV4cG9zZWRTdGFyPiYmIGlt
cGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5jcHAKaW5kZXgg
ZWI4N2Q2Yzg3ZmI1ZTA4ZDMwYTg4N2U3NzMzNTFkYWU2ZjU4OGE3NC4uZmYxMTQ4NWM1ZTY4ZGM1
N2JhYmYyYWVhNGM2NTY1NTkwNDMxN2FiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3Jr
ZXJBbmRXaW5kb3cuY3BwCkBAIC0xNTEsNyArMTUxLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dE
T00KIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93RE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9N
Q29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9z
ZWRUb1dvcmtlckFuZFdpbmRvdyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2lu
ZG93RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTc2LDcgKzE3Niw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQog
ICAgIHsgImRvU29tZXRoaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFJhd05hdGl2ZUZ1bmN0aW9uPihqc0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlwZUZ1
bmN0aW9uX2RvU29tZXRoaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJF
eHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ciX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJB
bmRXaW5kb3dQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE4NSw3ICsxODUsNyBAQCB2
b2lkIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAi
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdykgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAiRXhw
b3NlZFRvV29ya2VyQW5kV2luZG93Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93KSB9OwogCiBK
U0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdzo6SlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3coU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxF
eHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxFeHBv
c2VkVG9Xb3JrZXJBbmRXaW5kb3c+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IDdhNTZh
NzliNmJhMWZmOWU1NmI0YTI3MWMyMjE4ZDRkNGY2ODI2YTUuLjM1YjYzOGVmNjRkNDE0M2JhNzI0
OTFmOTY1NjAzMDAwMGUxM2NkNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxT
Y29wZS5jcHAKQEAgLTczLDcgKzczLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25z
dCBIYXNoVGFibGUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVl
LCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGVUYWJsZVZhbHVlcywgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3Jr
bGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29w
ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0
IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDMsNyArMTAzLDcgQEAg
c3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1BhaW50
V29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90
b3R5cGVUYWJsZVZhbHVlcywgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
SW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8s
ICZKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJQYWludFdvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRX
b3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTUGFp
bnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTExMiw3ICsxMTIsNyBAQCB2b2lkIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5m
bywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNj
b3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUpIH07
CiAKIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFBhaW50V29ya2xldEdsb2JhbFNjb3Bl
PiYmIGltcGwpCiAgICAgOiBKU1dvcmtsZXRHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5k
ZXggOTk4NjVkMWUwYmZiYjQ1OWVhM2QyYjJmMTcwZTA0ODBmMGExZTgzNC4uZmVhZjE3OTFhOGI1
ZTBjYzJkNzY3ZmMxMTJkZmZhNWU3MDFlNmMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03Myw3ICs3Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAog
c3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlID0g
eyAyLCAzLCB0cnVlLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTAzLDcgKzEwMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
ID0geyAxLCAxLCB0cnVlLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2
b2lkIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAi
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6
OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlOjpKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8U2VydmljZVdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwp
CiAgICAgOiBKU1dvcmtlckdsb2JhbFNjb3BlKHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNT
aGFkb3dSZWFsbUdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3BwCmluZGV4IDg5MWEyMzJkYTll
N2ViZGI5ZjMzMWNlOTIxN2RkZDBiYzM3NTkzYWEuLmI1OTk0MjU3ZTI4MGQ0ZjQwZDI5NzAzMmE1
YTlkYTljMGI4MjE5MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3Bw
CkBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGUgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTU2hhZG93
UmVhbG1HbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZh
bHVlcywgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZURP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFs
bUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFs
U2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtOTIsNyArOTIsNyBAQCB0ZW1wbGF0ZTw+IHZvaWQgSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZN
JgogICAgIHB1dERpcmVjdCh2bSwgdm0ucHJvcGVydHlOYW1lcy0+cHJvdG90eXBlLCBnbG9iYWxP
YmplY3QuZ2V0UHJvdG90eXBlRGlyZWN0KHZtKSwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVh
ZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnREZWxldGUpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFs
bUdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgJkpTU2hhZG93UmVhbG1HbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFs
U2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZSwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUpIH07
CiAKIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6SlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPiYm
IGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8U2hhZG93UmVhbG1HbG9iYWxTY29wZT4odm0sIHN0
cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlLmNwcAppbmRleCBhMDI0OTQwNjJkZDdkZDYyMzJkMWViYTQwMjU2YjMwZGEzNTBjYjBjLi43
YTM1ZTQ5YjQ0MDJmODQzN2Q2ZmNiYzZiYTBhYjVkMTA2ZjkzYmFkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9
CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVU
YWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBK
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFs
U2NvcGVUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckds
b2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2Vy
R2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTA0LDcgKzEwNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSA9IHsg
MSwgMSwgdHJ1ZSwgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFs
U2NvcGVQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8gSlNTaGFyZWRXb3Jr
ZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2Nv
cGUiLCAmQmFzZTo6c19pbmZvLCAmSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2Nv
cGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29w
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNl
OjpzX2luZm8sICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTMsNyArMTEzLDcgQEAgdm9pZCBKU1NoYXJlZFdvcmtl
ckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZSIsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2hhcmVkV29ya2Vy
R2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlKSB9OwogCiBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpKU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTaGFy
ZWRXb3JrZXJHbG9iYWxTY29wZT4mJiBpbXBsKQogICAgIDogSlNXb3JrZXJHbG9iYWxTY29wZSh2
bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5jcHAKaW5k
ZXggMWI4ZjYxYTZmYTBiNWYwOTg4YjQxZDU4YjAxYTUyYzc2ODM0YjFlMi4uZDY0OWYxZDMzMDJm
MmE4NGYzODQwYTI2Mjg0NWI3ZjVkN2EyMWExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3Bw
CkBAIC0xMTEsNyArMTExLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUo
SlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5cGUsIEpTVGVzdENFUmVhY3Rpb24KIAogdXNpbmcgSlNU
ZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rp
b25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RDRVJlYWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xNDMsNyArMTQzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibWV0aG9k
V2l0aENFUmVhY3Rpb25zTm90TmVlZGVkIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZUZ1bmN0
aW9uX21ldGhvZFdpdGhDRVJlYWN0aW9uc05vdE5lZWRlZCksIChpbnRwdHJfdCkgKDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENF
UmVhY3Rpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENF
UmVhY3Rpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTIsNyAr
MTUyLDcgQEAgdm9pZCBKU1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RDRVJl
YWN0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFj
dGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9ucykgfTsK
IAogSlNUZXN0Q0VSZWFjdGlvbnM6OkpTVGVzdENFUmVhY3Rpb25zKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdENFUmVhY3Rpb25z
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdENFUmVhY3Rpb25zPihzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0
aW9uc1N0cmluZ2lmaWVyLmNwcAppbmRleCBkMDMzZWY4M2Y5MWMyOTQ5NzZjMWZjN2Q5ZGY1NDBl
MzUxNGU4ZGQ1Li40MTBmNjE5MjYxNzY1NmQyN2MzYWU5NjRmOTJhMTAyMzI0Y2Q5NDY3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIuY3BwCkBAIC05NSw3ICs5
NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdENFUmVhY3Rp
b25zU3RyaW5naWZpZXJQcm90b3R5cGUsIEpTVGVzCiAKIHVzaW5nIEpTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lm
aWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
RVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJl
YWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIyLDcgKzEyMiw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywg
eyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdENFUmVhY3Rp
b25zU3RyaW5naWZpZXJQcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
RVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlv
bnNTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTEzMSw3ICsxMzEsNyBAQCB2b2lkIEpTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0
cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9u
c1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIpIH07CiAKIEpTVGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXI6OkpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
Q0VSZWFjdGlvbnNTdHJpbmdpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RD
RVJlYWN0aW9uc1N0cmluZ2lmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDYWxsVHJhY2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNwcAppbmRleCA4NzczZjQxNDkxNmI1YmYwZWZjYTVj
YWJkMmY5NmE5Y2M5YzA2OWFlLi43MTZjMDdlZGZhZDQ1MWZhMTlkZmYzZmM4OWJiNDk5OTZiMjlm
NThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q2FsbFRyYWNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuY3BwCkBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxUcmFjZXJDb25zdHJ1Y3RvclRhYmxlVmFs
dWVzW10gPQogCiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsVHJhY2VyOjp0ZXN0Q29uc3RWYWx1ZSA9
PSBmYWxzZSwgInRlc3RDb25zdFZhbHVlIGluIFRlc3RDYWxsVHJhY2VyIGRvZXMgbm90IG1hdGNo
IHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENh
bGxUcmFjZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENh
bGxUcmFjZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0x
NjQsNyArMTY0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxUcmFj
ZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0ZXN0Q29uc3RWYWx1ZSIsIEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpS
ZWFkT25seSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwgTm9JbnRy
aW5zaWMsIHsgKGxvbmcgbG9uZykoZmFsc2UpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
Q2FsbFRyYWNlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2Vy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTE3Myw3ICsxNzMsNyBAQCB2b2lkIEpTVGVzdENhbGxUcmFjZXJQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFj
ZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdENhbGxUcmFjZXIpIH07CiAKIEpTVGVzdENhbGxUcmFjZXI6OkpTVGVzdENhbGxUcmFjZXIo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0Q2FsbFRyYWNlcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDYWxsVHJh
Y2VyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0lu
dGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q2FsbGJhY2tJbnRlcmZhY2UuY3BwCmluZGV4IGNmMjdjNjYzOTc0NTdhNDQ2NTM5MDQ5ODUy
NDJmMGVkMGQzNmM4NzguLjQ4YjRjMmY3ODE3YTc0NzNjMGNhMzU1NGFkNmM0OGVmOGY2ZjIzZWIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RDYWxsYmFja0ludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENhbGxiYWNrSW50ZXJmYWNlLmNwcApAQCAtMTUzLDcgKzE1Myw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDYWxsYmFja0ludGVyZmFjZUNv
bnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVy
ZmFjZTo6Q09OU1RBTlQxID09IDEsICJDT05TVEFOVDEgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNl
IGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxs
YmFja0ludGVyZmFjZTo6Q09OU1RBTlQyID09IDIsICJDT05TVEFOVDIgaW4gVGVzdENhbGxiYWNr
SW50ZXJmYWNlIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RDYWxsYmFja0ludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxiYWNr
SW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFja0ludGVyZmFj
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RDYWxsYmFja0ludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3Rvci5jcHAKaW5kZXggYTMyYjJkOGI4OTU0YWExNmQyNGFlYWU5ZjgwYjQ0NDgxMTk2
ZTBlZS4uODIxMTBkMzQ2Njg5YTUzZDUwYzAyN2Q1MzcyZDkwNTNmMjJjMGM5MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0
aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBA
IC04NCw3ICs4NCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5D
b25zdHJ1Y3RvcjxKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9y
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsK
K3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29u
c3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEzLDcgKzEx
Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0
aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRhYmxlVmFsCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3IpLCAoaW50
cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTIyLDcgKzEyMiw3IEBAIHZvaWQgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3Ry
dWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRo
SlNCdWlsdGluQ29uc3RydWN0b3IpIH07CiAKIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yOjpKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RD
bGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAKaW5k
ZXggMDQ2ZjczYzY0ZTg5OTgyYjQ4ZmIxYjdjNTI2OTQzYWUzMTQwOTU5Zi4uZGFiNWNlMjEyOWVi
MmNmOGQwN2ZhNDU5MGVlMjMyZTM5Yzk1OWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRp
b25hbEluY2x1ZGVzLmNwcApAQCAtMTc4LDcgKzE3OCw3IEBAIHN0YXRpY19hc3NlcnQoVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXM6OkNPTlNUX0lNUEwgPT0gMiwgIkNPTlNUX0lNUEwgaW4gVGVzdENv
bmRpCiBzdGF0aWNfYXNzZXJ0KFRlc3RDb25kaXRpb25hbEluY2x1ZGVzOjpQQVJUSUFMX01JWElO
X0NPTlNUQU5UX0ZST01fUEFSVElBTCA9PSA1LCAiUEFSVElBTF9NSVhJTl9DT05TVEFOVF9GUk9N
X1BBUlRJQUwgaW4gVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMgZG9lcyBub3QgbWF0Y2ggdmFsdWUg
ZnJvbSBJREwiKTsKICNlbmRpZgogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
b25kaXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRp
b25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRp
dGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMzAzLDcgKzMwMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RD
b25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAK
LWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc1By
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRp
b25hbEluY2x1ZGVzUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTQ1MCw3ICs0NTAsNyBA
QCB2b2lkIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsg
IlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RD
b25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMpIH07CiAKIEpTVGVz
dENvbmRpdGlvbmFsSW5jbHVkZXM6OkpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q29u
ZGl0aW9uYWxJbmNsdWRlcz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRp
b25hbEluY2x1ZGVzPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
b25kaXRpb25hbGx5UmVhZFdyaXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmNwcAppbmRleCBjNWM3YjZi
YTk4MmQyNDlkODliYjczZTk2Mjk3MWQ5Y2Q0ZjY0OGJmLi5kYTYxZDY5MzY3OTM5Nzg0MWEwMzA1
MmQxMjRkZTExMTUyNzA4MjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlS
ZWFkV3JpdGUuY3BwCkBAIC0xMzksNyArMTM5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0
YXRpYyBjb25zdCBIYXNoVGFibGUgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlID0g
eyAyLCA3LCB0cnVlLCBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlOjppbmZvKCksIEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZVZhbHVlcywgSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRp
dGlvbmFsbHlSZWFkV3JpdGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3Jp
dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xODEsNyArMTgxLDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICAgICB7ICJzZXR0aW5nc0NvbmRpdGlvbmFsbHlSZWFkV3JpdGVBdHRyaWJ1dGVQ
cm9taXNlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1
c3RvbUFjY2Vzc29yKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3Bl
cnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRp
bmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVByb21pc2UpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPihzZXRKU1Rlc3RDb25kaXRp
b25hbGx5UmVhZFdyaXRlX3NldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVBy
b21pc2UpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVh
ZFdyaXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29u
ZGl0aW9uYWxseVJlYWRXcml0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lkIEpTVGVzdENvbmRp
dGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRp
b25hbGx5UmVhZFdyaXRlIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25h
bGx5UmVhZFdyaXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFk
V3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIl9zLCAmQmFzZTo6
c19pbmZvLCAmSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUpIH07CiAKIEpTVGVz
dENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OkpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RET01KSVQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKaW5kZXggNzNlNDQ0M2MxZTA2NzBkMTkwZjI0MmI5OTY3
ODRmNDA5ZjdiZjc4ZS4uOGI5YzM0NWU0NWUzN2JmZWU5ZmI0NWU1YTVjZDNmY2E1NjZhNjIxMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dERPTUpJVC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERPTUpJVC5jcHAKQEAgLTUwMSw3ICs1MDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RET01KSVRQcm90b3R5cGUsIEpTVGVzdERPTUpJVFByb3Rv
dHlwZQogCiB1c2luZyBKU1Rlc3RET01KSVRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERPTUpJVD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklU
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RET01KSVRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERPTUpJVERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RE9N
SklURE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTU2NCw3ICs1NjQsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RE9NSklUUHJvdG90eXBlVGFibGVW
YWx1ZXNbXSA9CiAgICAgeyAiZ2V0RWxlbWVudHNCeU5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24gfCBKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpET01KSVRGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2Fz
dDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RE9NSklUUHJvdG90eXBlRnVuY3Rpb25fZ2V0RWxl
bWVudHNCeU5hbWUpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PGNvbnN0IEpTQzo6RE9NSklUOjpT
aWduYXR1cmUqPigmRE9NSklUU2lnbmF0dXJlRm9yVGVzdERPTUpJVEdldEVsZW1lbnRzQnlOYW1l
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0RE9NSklUUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERP
TUpJVFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RET01KSVRQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTU3Myw3ICs1NzMsNyBAQCB2b2lkIEpTVGVzdERPTUpJVFBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpz
X2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVQpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RE9NSklUOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVCkgfTsKIAogSlNU
ZXN0RE9NSklUOjpKU1Rlc3RET01KSVQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RE9NSklUPiYmIGltcGwpCiAgICAgOiBKU05v
ZGUoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNP
Ti5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVm
YXVsdFRvSlNPTi5jcHAKaW5kZXggZWE1YTI1NGRhODFlYzRkNGViMmRkZjUyNWI2MmE4YjBjZjQz
Y2RkYS4uM2QzYzQzYzg1ODk2MGM5ZDdmZjg0MmM5NGNjZGFmMjZkNWNiNmIzZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRU
b0pTT04uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWZhdWx0VG9KU09OLmNwcApAQCAtMTQ0LDcgKzE0NCw3IEBAIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUsIEpTVGVz
dERlZmF1bHRUCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvciA9IEpT
RE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT04+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9K
U09ORE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
ZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTkw
LDcgKzE5MCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9K
U09OUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZhdWx0
VG9KU09OUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3REZWZhdWx0VG9KU09OIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3REZWZhdWx0VG9KU09OIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMjE2LDcgKzIxNiw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJ
VElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTjo6c19pbmZv
ID0geyAiVGVzdERlZmF1bHRUb0pTT04iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT04pIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04i
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTikgfTsKIAogSlNUZXN0RGVmYXVsdFRvSlNPTjo6SlNUZXN0RGVm
YXVsdFRvSlNPTihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8VGVzdERlZmF1bHRUb0pTT04+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlF
eHBvc2VkLmNwcAppbmRleCA5NTg1NzRiYzZkODcwNjk5NDk3YTAxOWQ2Mjg0NTI1NzdiNmEzODMx
Li5jZDM2NzVjNmM3OWIxOTczNGU5ZjhmYTkzMDA0MmJmYWRhYTgzMmY0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNP
TkZpbHRlcmVkQnlFeHBvc2VkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcApAQCAt
OTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RE
ZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cAogCiB1c2luZyBKU1Rlc3REZWZh
dWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZp
bHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pT
T05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhw
b3NlZERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTEyMyw3ICsxMjMsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlVGFibGVWYQogICAgIHsgInRv
SlNPTiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5j
dGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5j
dGlvbj4oanNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlRnVuY3Rp
b25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRl
cmVkQnlFeHBvc2VkUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRU
b0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRU
b0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9z
ZWRQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBv
c2VkUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDksNyArMTQ5LDcg
QEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3Nl
ZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0geyAiVGVzdERl
ZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRC
eUV4cG9zZWQpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6SlNU
ZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3REZWZhdWx0VG9K
U09ORmlsdGVyZWRCeUV4cG9zZWQ+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJ
bmhlcml0YW5jZS5jcHAKaW5kZXggMzIzZWYwODJjMWJjN2YxNWY2ZTJkNmQxMmM4NWM1MjYwM2Uy
MWQ0ZS4uZGY5ZjJkOGRmNDZlZmJlMGNiZTJmOWExZDZhN2JiODIyZGQwZjc2OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRU
b0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2Uu
Y3BwCkBAIC04Miw3ICs4Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlUHJvdG90CiAKIHVzaW5nIEpT
VGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3IgPSBKU0RP
TUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJ
bmhlcml0YW5jZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRU
b0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
ZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA1LDcgKzEwNSw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5j
ZVByb3RvdHlwZVRhYmxlCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdERlZmF1
bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRp
Y19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTE0LDcgKzExNCw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTklu
ZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlOjpzX2luZm8gPSB7ICJU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UpIH07CiAK
IEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlOjpKU1Rlc3REZWZhdWx0VG9K
U09OSW5kaXJlY3RJbmhlcml0YW5jZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0
YW5jZT4mJiBpbXBsKQogICAgIDogSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQoc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0LmNwcAppbmRleCBkZTk3ZDIzZGRjNTgzYzA5YTM2NDc3YjVmZTdiMjAwZTA0
YWRlNWZlLi4zNDk0NjU4ODY1ZDQxMzRhNjVkYTBkZGY1ZTNlYjdmYTUwNDAxNjlhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5jcHAKQEAgLTEwOSw3ICsxMDksNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdFByb3RvdHlwZSwgSlNUZXN0RAogCiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0
b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTEzNCw3ICsxMzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0K
ICAgICB7ICJ0b0pTT04iLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlRnVuY3Rp
b25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0KSB9OwogCiBKU1Rlc3REZWZh
dWx0VG9KU09OSW5oZXJpdDo6SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXQ+JiYgaW1wbCkKICAgICA6IEpTVGVzdERlZmF1bHRUb0pTT04oc3RydWN0
dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAKaW5kZXggNzgzYzlkYjk0ZDM2M2UxYzExYTk4
NmYzZjgzOGE4MDZlZjRmN2FkNi4uNTg0MzE3Y2Y3ZGEyNjFmNDM2NTliZTA1Y2EyYWYyYTRiZWY5
ZWIxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
LmNwcApAQCAtMTExLDcgKzExMSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGUsIEpTCiAKIHVzaW5n
IEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dEZpbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJp
dEZpbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTM3LDcgKzEzNyw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBl
VGFibGVWYWx1ZXNbCiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZp
bmFsUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdEZpbmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9K
U09OSW5oZXJpdEZpbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6c19p
bmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRGaW5hbCkgfTsKIAogSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6SlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZp
bmFsPiYmIGltcGwpCiAgICAgOiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdChzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGlj
QXR0cmlidXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmNwcAppbmRleCA4ZTZmZTM5
MWJlMTAwZjM2MmRmMzIwZmY5NjUwODQyMTQ4NjlkNjU4Li44ZDgwOGQwYTQ5NjgzYzdkY2ViMzZh
ZjU1NDliY2VlNmJlZjE3MDllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRT
eW50aGV0aWNBdHRyaWJ1dGVQcm90CiAKIHVzaW5nIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50
aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0
ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE5LDcgKzExOSw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJv
dG90eXBlVGFiCiAgICAgeyAicHJvcGVydHk1Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RE9NQXR0cmlidXRlKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFBy
b3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGlj
QXR0cmlidXRlX3NoYXJlZEF0dHJpYnV0ZTIpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPihzZXRKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhl
dGljQXR0cmlidXRlX3NoYXJlZEF0dHJpYnV0ZTIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdh
dGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lkIEpTVGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OnNfaW5m
byA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0
ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
bGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0
ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGUpIH07CiAKIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGU6OkpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVsZWdh
dGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVy
PFRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuY3BwCmlu
ZGV4IDVjNTA0MGNlNjNlY2EyZmYwOTNiYTkyMGU4ZjRkMzczMTM1MzkwMDIuLmQzY2NmNjAwY2Q1
ZDhhYThmNDdjNmJlNGNiNGVhNDk2OGYwNTk0YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3Vy
aXR5LmNwcApAQCAtMTE0LDcgKzExNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3REb21haW5TZWN1cml0eVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhh
c2hUYWJsZSBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1Rlc3RE
b21haW5TZWN1cml0eTo6aW5mbygpLCBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlVmFsdWVzLCBK
U1Rlc3REb21haW5TZWN1cml0eVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RE
b21haW5TZWN1cml0eSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eURPTUNv
bnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RG9tYWluU2VjdXJpdHlE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTQxLDcgKzE0MSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogICAgIHsgIm92ZXJsb2FkZWRNZXRob2QiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERvbWFpblNlY3Vy
aXR5UHJvdG90eXBlRnVuY3Rpb25fb3ZlcmxvYWRlZE1ldGhvZCksIChpbnRwdHJfdCkgKDEpIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdERvbWFpblNlY3VyaXR5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBKU1Rlc3REb21haW5TZWN1cml0
eVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWlu
U2VjdXJpdHk6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSIsICZCYXNlOjpzX2luZm8s
ICZKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERvbWFpblNlY3VyaXR5KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNl
Y3VyaXR5OjpzX2luZm8gPSB7ICJUZXN0RG9tYWluU2VjdXJpdHkiX3MsICZCYXNlOjpzX2luZm8s
ICZKU1Rlc3REb21haW5TZWN1cml0eVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERvbWFpblNlY3VyaXR5KSB9OwogCiBKU1Rlc3REb21haW5TZWN1cml0eTo6SlNUZXN0
RG9tYWluU2VjdXJpdHkoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0RG9tYWluU2VjdXJpdHk+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0RG9tYWluU2VjdXJpdHk+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuY3BwCmluZGV4IDlmMjY4
ODk3ODQ0MTQ0ZTBkMThkNTljMTJkMmZjZjk4ZjIwNmEyZmIuLjA1Y2EyOThiYjY0OWVlNmQ1NWQw
MjFiNTRlZTc0YmU3YzAzMzI5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5nLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5j
cHAKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
RW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAKIHN0YXRpY19hc3Nl
cnQoVGVzdEVuYWJsZWRCeVNldHRpbmc6OmVuYWJsZWRCeVNldHRpbmdDb25zdGFudCA9PSAwLCAi
ZW5hYmxlZEJ5U2V0dGluZ0NvbnN0YW50IGluIFRlc3RFbmFibGVkQnlTZXR0aW5nIGRvZXMgbm90
IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVuYWJs
ZWRCeVNldHRpbmciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGlu
Z0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZ0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xODMsNyArMTgz
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJlbmFibGVkQnlTZXR0aW5nQ29uc3RhbnQi
LCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIs
IE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcpKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxl
ZEJ5U2V0dGluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5h
YmxlZEJ5U2V0dGluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTIzNiw3ICsyMzYsNyBAQCB2b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRp
bmc6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0aW5nIiwgJkJhc2U6OnNfaW5mbywgJkpT
VGVzdEVuYWJsZWRCeVNldHRpbmdUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RFbmFibGVkQnlTZXR0aW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRC
eVNldHRpbmc6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkQnlTZXR0aW5nIl9zLCAmQmFzZTo6c19p
bmZvLCAmSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNldHRpbmcpIH07CiAKIEpTVGVzdEVuYWJsZWRCeVNldHRp
bmc6OkpTVGVzdEVuYWJsZWRCeVNldHRpbmcoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RFbmFibGVkQnlTZXR0aW5nPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHQuY3BwCmluZGV4IDNhZjdkYjM0MzE5NzFiZjY0NThiNWEzZTdmMjZiYjgyMTI3NTAzNzguLmUx
OTUxMDY5ZTlmMWJjMDk0ODRkNGM0MGYzMTA3NDcyMDk1Yjc2ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEVuYWJsZWRGb3JDb250ZXh0LmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lT
T19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZSwgSlNU
ZXN0RW5hYgogCiB1c2luZyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RW5hYmxlZEZvckNvbnRleHQ+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJs
ZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
RW5hYmxlZEZvckNvbnRleHQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHRET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEZvckNvbnRleHRQcm90b3R5cGVUYWJsZVZh
bHVlc1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClz
dGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RW5hYmxlZEZvckNv
bnRleHRDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFi
bGVkRm9yQ29udGV4dFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JD
b250ZXh0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dEVuYWJsZWRGb3JDb250ZXh0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6
OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHQp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsg
IlRlc3RFbmFibGVkRm9yQ29udGV4dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dCkgfTsKIAogSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHQ6OkpTVGVzdEVuYWJsZWRGb3JDb250ZXh0KFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEVuYWJs
ZWRGb3JDb250ZXh0PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEVuYWJsZWRGb3JD
b250ZXh0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENv
bnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcAppbmRleCBjODhlZDIxY2NmOWEwOTZhMzM2YmI0MzBj
NzA3YzMyZmQzZWFiOWI2Li5kZTg3YzkxOTg1YzdjZGViMTAyOWJlMzkzNTAyMzJmOTg5ZjkwNDlm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCkBAIC0xOTQsNyArMTk0LDcg
QEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNU
ZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnMKIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9O
KEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0RXZl
bnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVj
dG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMjI0LDcgKzIyNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RF
dmVudENvbnN0cnVjdG9yUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0RXZlbnRDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lkIEpTVGVzdEV2ZW50Q29uc3Ry
dWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2
ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVu
dENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3Ip
IH07CiAKIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OkpTVGVzdEV2ZW50Q29uc3RydWN0b3IoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0RXZlbnRDb25zdHJ1Y3Rvcj4mJiBpbXBsKQogICAgIDogSlNFdmVudChzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCmluZGV4
IDdiZmQxZTkyMDQxODg1ZTJhZjZjMmQ1MGJjMDMyMGM0NmM5OTNlMjAuLjVhY2NmMGU2NTIxODhl
OWM5YzQwODRlYzA2N2MwNjg3MjkwZjlkNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcApA
QCAtOTMsNyArOTMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RFdmVudFRhcmdldFByb3RvdHlwZSwgSlNUZXN0RXZlbnRUYXJnZQogCiB1c2luZyBKU1Rlc3RF
dmVudFRhcmdldERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0RXZlbnRUYXJnZXQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXZl
bnRUYXJnZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8
PiBKU1ZhbHVlIEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJpdGVtIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rl
c3RFdmVudFRhcmdldFByb3RvdHlwZUZ1bmN0aW9uX2l0ZW0pLCAoaW50cHRyX3QpICgxKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RFdmVudFRhcmdldCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RF
dmVudFRhcmdldCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RF
dmVudFRhcmdldFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcg
KzEyNiw3IEBAIHZvaWQgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0RXZl
bnRUYXJnZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50
VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXQpIH07
CiAKIEpTVGVzdEV2ZW50VGFyZ2V0OjpKU1Rlc3RFdmVudFRhcmdldChTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFdmVudFRhcmdl
dD4mJiBpbXBsKQogICAgIDogSlNFdmVudFRhcmdldChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKaW5kZXggMTFkYzVlYWVmZjczZTVm
M2YwZGYwODFiZGM2ZDE1OWNiMDE5MDczZi4uOTdjZjhkMzViMTUyY2QxMDVlOWQyYjAyODRjMmMw
OWJiMzRkYmE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RB
VElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBl
LCBKU1Rlc3RFeGNlcHRpb25Qcm8KIAogdXNpbmcgSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RFeGNlcHRpb24+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdEV4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQog
ICAgIHsgIm5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRPTUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RXhjZXB0
aW9uX25hbWUpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFs
dWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3RFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3
ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEV4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0
aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uOjpz
X2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4Y2VwdGlvbikgfTsKIAogSlNUZXN0RXhj
ZXB0aW9uOjpKU1Rlc3RFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBK
U0RPTVdyYXBwZXI8VGVzdEV4Y2VwdGlvbj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCmlu
ZGV4IGVlM2FmMWYxZjU5Mjg5Nzg3YTlkZTUwYWYxNzk4NDFlYTExZWJiNjQuLjhlZDZjNDhmMGM1
YjAzNjUzOTJlZGVjNTBhOTUwZThlNDJlOGEzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5l
cmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCkBAIC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZSwg
SlNUZXN0CiAKIHVzaW5nIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVBZGRPcGFx
dWVSb290PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRP
cGFxdWVSb290RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUFkZE9wYXF1
ZVJvb3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJh
dGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBK
U1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTExLDcgKzExMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJz
b21lQXR0cmlidXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1
dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdF9zb21lQXR0cmlidXRlKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQ
dXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3RQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVS
b290UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjAsNyArMTIwLDcg
QEAgdm9pZCBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZv
ID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZv
ID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
b3QpIH07CiAKIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6SlNUZXN0R2VuZXJhdGVBZGRP
cGFxdWVSb290KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdD4mJiBpbXBsKQogICAgIDogSlNE
T01XcmFwcGVyPFRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2Jq
ZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUu
Y3BwCmluZGV4IDVmNTk1ODU4ZWRkYzljYjg4ZWY3ZTE0MWY1MTcxNzQ1MDkzOWQwM2QuLmM4NDk1
NGE4YzA2OGI0OTk4OWE3MjFlZWI2YjQ3NmUyMjc3ZDU3YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9J
U09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSwg
SlNUZXN0R2UKIAogdXNpbmcgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFj
aGFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJs
ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0R2VuZXJhdGVJ
c1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyAr
MTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEdlbmVyYXRlSXNSZWFj
aGFibGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJhU2VjcmV0QXR0cmlidXRlIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVf
YVNlY3JldEF0dHJpYnV0ZSksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5l
cmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2Vu
ZXJhdGVJc1JlYWNoYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIEpTVGVzdEdlbmVyYXRlSXNSZWFj
aGFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RHZW5lcmF0ZUlzUmVhY2hhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGU6OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUpIH07CiAKIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OkpTVGVz
dEdlbmVyYXRlSXNSZWFjaGFibGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKaW5k
ZXggNGYxNGE2OWEyMGYwYTMwMTM5OTQwN2RjMDBiYzgwNjVlZDJkYjkwZC4uOTQyMzQ3MzhlNDAw
MjI5NTNjOWU5ODIxOGY2MDNiY2Q1M2NiMDkzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5j
cHAKQEAgLTYyMSw3ICs2MjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
R2xvYmFsT2JqZWN0Q29uc3RydWN0b3JUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdERPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0RE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2Jq
ZWN0RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHbG9iYWxP
YmplY3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtNjUzLDcgKzY1Myw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5
cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNUZXN0R2xv
YmFsT2JqZWN0UHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTVGVzdEdsb2JhbE9iamVj
dDo6aW5mbygpLCBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNUZXN0
R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEdsb2JhbE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZC
YXNlOjpzX2luZm8sICZKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
R2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtNjYxLDcgKzY2MSw3IEBAIHZvaWQgSlNUZXN0R2xvYmFs
T2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RH
bG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCAmSlNUZXN0R2xvYmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0R2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVj
dDo6c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVz
dEdsb2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEds
b2JhbE9iamVjdCkgfTsKIAogSlNUZXN0R2xvYmFsT2JqZWN0OjpKU1Rlc3RHbG9iYWxPYmplY3Qo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0R2xvYmFsT2JqZWN0PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEdsb2Jh
bE9iamVjdD4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggYTc2NGM4
ZjI3NDU1MjZhODlkMjM4OGFhMjViYWY0OGVlMGNlOGMyNy4uZGQ3NjU5MGEyYzI4ZDI1NjllOGEw
ZDVhYmU2NmQ3ZjU1ZTJhNjRkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0
dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBl
LCBKUwogCiB1c2luZyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRp
ZmllclByb3RvdHlwZVRhYmxlVmFsdWVzWwogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpzX2lu
Zm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rl
c3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRp
Zmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4
IDg4MmZmMDQ3YjhiZDI4MGM2Yzg2NTYxMWRkMWY1NWVmOTM3NzZiMGIuLmFkZGM1NDhkNzljY2Y5
ODc2YWY5NzNkOTQyNzMxNWIwOGFkY2MxYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvblByb3RvdHlwCiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEw
OSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25Qcm90b3R5cGVUYWJsZVZhCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1
bmM+KGpzVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGlu
dHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdEluZGV4ZWRT
ZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRleCAyYWM2ZDcxZDU2MzI3ZDlhNmNj
ZDgwNjIwNWE1MjVhM2ZjZmM2NDM1Li4xOTk1YmY4MDAyNTliOWVkZmFhYTFhYjI0MjY3ZDhiMGZl
ZDBlYTI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyLmNwcApAQCAtOTMsNyArOTMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsCiAKIHVz
aW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNE
T01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29u
c3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcg
KzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlCiAgICAgeyAiaW5kZXhlZFNldHRlciIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhl
ZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElk
ZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0SW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAg
SlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
cikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6
OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OwogCiBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXI6OkpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggZWNiMDU0ODQwNmYxZGU0ZmRhNGJkYTVk
OTY0N2RmYTc5MzMzMjEzMy4uZGZkMWQ0ZmM3NmZkNmMzM2U0YTEzNzkyOTFlYWQ1YmY5NzQxOTRm
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTI5Myw3ICsyOTMsNyBAQCB0ZW1wbGF0ZTw+
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RJbnRlcmZhY2VE
T01Db25zdHJ1Y3RvcgogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0SW50ZXJm
YWNlRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9y
Ojpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZh
Y2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNl
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRl
cmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRl
cmZhY2VET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVy
ZmFjZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC00NTcsNyArNDU3LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZVRh
YmxlVmFsdWVzW10gPQogI2VuZGlmCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJm
YWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZVByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTQ3OSw3ICs0NzksNyBAQCB2b2lkIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0
SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbnRlcmZhY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJm
YWNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZSkgfTsKIAogSlNU
ZXN0SW50ZXJmYWNlOjpKU1Rlc3RJbnRlcmZhY2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW50ZXJmYWNlPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3Qs
IFdURk1vdmUoaW1wbCkpCkBAIC0xMTMyLDExICsxMTMyLDExIEBAIHVzaW5nIFRlc3RJbnRlcmZh
Y2VJdGVyYXRvclByb3RvdHlwZSA9IEpTRE9NSXRlcmF0b3JQcm90b3R5cGU8SlNUZXN0SW50ZXJm
YWNlLCBUCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihUZXN0SW50ZXJmYWNlSXRlcmF0b3JQ
cm90b3R5cGVOZXh0LCBUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0
ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNl
OjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JC
YXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEludGVyZmFjZUl0ZXJhdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3IpIH07Citj
b25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7
ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2UpIH07Citj
b25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRl
c3RJbnRlcmZhY2UgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEludGVyZmFjZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvclBy
b3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZSBJdGVyYXRvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNl
SXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNU
ZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVj
dCosIENhbGxGcmFtZSosIEpTVGVzdEludGVyZmFjZSogdGhpc09iamVjdCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZh
Y2VMZWFkaW5nVW5kZXJzY29yZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUuY3BwCmluZGV4IGE4MzNj
ODQ0ZGEwMDIzZGQ1MWViNzc3Yzk4NWU1NjJiZjUxYThjYjIuLjU1NmIwNjJkM2U3N2IyYmNhODhh
ZjU5OTUwNzlhNDM3YjQxZjk5YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFj
ZUxlYWRpbmdVbmRlcnNjb3JlLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lT
T19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3Rv
dHlwZSwgSgogCiB1c2luZyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0
cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmU+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJ
bnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3Jl
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50
ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVE
T01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVyZmFjZUxl
YWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEx
MSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGVUYWJsZVZhbHVlcwogICAgIHsgInJlYWRvbmx5Iiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEludGVyZmFjZUxlYWRpbmdVbmRl
cnNjb3JlX3JlYWRvbmx5KSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6
OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVy
ZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW50
ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNj
b3JlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19U
QUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdV
bmRlcnNjb3JlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6c19pbmZvID0geyAiVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3Jl
KSB9OwogCiBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6SlNUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAK
aW5kZXggNWY0ZmE2OWZhOGQxYjAxMTkxZDdhNDg0MjFiZWM5MzFhODk1NmFmMi4uNTMxMjk1NmI3
YmFkMDRiZTMxMDkyZmFmZGEzYjdiNWYxMzE2MTViZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCkBA
IC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dEl0ZXJhYmxlUHJvdG90eXBlLCBKU1Rlc3RJdGVyYWJsZVByb3RvCiAKIHVzaW5nIEpTVGVzdEl0
ZXJhYmxlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxK
U1Rlc3RJdGVyYWJsZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJh
YmxlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGVE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJh
YmxlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJs
ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SXRlcmFibGVE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25f
Zm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RJdGVyYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJs
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMzMsNyArMTMzLDcgQEAgdm9pZCBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJ
dGVyYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0SXRlcmFibGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGU6
OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZSkgfTsKIAogSlNUZXN0SXRl
cmFibGU6OkpTVGVzdEl0ZXJhYmxlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEl0ZXJhYmxlPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdEl0ZXJhYmxlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKQEAgLTIyNywxMSArMjI3LDExIEBAIHVzaW5nIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJv
dG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3RJdGVyYWJsZSwgVGVzCiBKU0Nf
QU5OT1RBVEVfSE9TVF9GVU5DVElPTihUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZU5leHQs
IFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlOjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJU
ZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9yQmFzZSkgfTsKLWNvbnN0IEpT
Qzo6Q2xhc3NJbmZvIFRlc3RJdGVyYWJsZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFi
bGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8g
VGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0
b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVz
dEl0ZXJhYmxlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0
SXRlcmFibGVJdGVyYXRvcikgfTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8g
VGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBKU0M6OkNsYXNz
SW5mbyBUZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJh
YmxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBzdGF0aWMg
aW5saW5lIEVuY29kZWRKU1ZhbHVlIGpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZW50
cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSosIEpTVGVzdEl0ZXJhYmxlKiB0
aGlzT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAK
aW5kZXggNzFmNjFjMmE2MGZhOTg2MmMxMzg3Y2U2YmJlMTZmNjk0MjNkMzZlOS4uMGIyMmFhMzRi
MjgzMzU4NmEzZjlhNjcwMTZlOGQyNGFhNmU3MjY0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3IuY3BwCkBAIC04OSw3ICs4OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlLCBK
U1Rlc3RKCiAKIHVzaW5nIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvckRP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SlNCdWlsdGluQ29u
c3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEy
Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1
Y3RvclByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInRlc3RDdXN0b21GdW5jdGlvbiIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGVGdW5jdGlvbl90ZXN0Q3VzdG9tRnVu
Y3Rpb24pLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5D
b25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTMyLDcgKzEzMiw3IEBAIHZvaWQgSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGlu
Q29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGluQ29u
c3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yOjpKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZh
Y3RvcnlGdW5jdGlvbi5jcHAKaW5kZXggYmI2ODhmY2I0YThmNzIzN2VlOTc5NmFkMTkzYTk4Njc0
NGFkZGQ1MC4uOGM3NDYwMmYzNWM2NDY4ZWUyOWU1ZDhkZjRjMGYyNDQ0NzM0NzE4MiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eUZhY3RvcnlGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKQEAgLTg4LDcgKzg4LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uUHJvdG90eXBlLCBKU1Rlc3QKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uPjsKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbiA9IEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uPEpT
VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25ET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBAQCB0ZW1wbGF0ZTw+IEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RMZWdhY3lGYWN0b3J5
RnVuY3Rpb25MZQogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0TGVnYWN5RmFj
dG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uQ29uc3RydWN0LCBKU1Rlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0b3J5RnVuY3Rpb246OmNvbnN0cnVjdCk7CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZh
Y3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiQXVkaW8iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bkxlZ2FjeUZhY3RvcnlGdW5jdGlvbikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0g
eyAiQXVkaW8iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9u
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVn
YWN5RmFjdG9yeUZ1bmN0aW9uOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
blByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGlj
X2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Q
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVn
YWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTczLDcg
KzE3Myw3IEBAIHZvaWQgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246
OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlG
dW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246
OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9y
eUZ1bmN0aW9uKSB9OwogCiBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OkpTVGVzdExlZ2Fj
eUZhY3RvcnlGdW5jdGlvbihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24+JiYgaW1wbCkKICAg
ICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9J
bnRlcmZhY2VPYmplY3QuY3BwCmluZGV4IDFjODM0OTBiNjdhMTFjYzg4YjNhNWViODJiOTE3Mjhi
NWRmODM1MTIuLmZhNzYwOTE2MjE0ZjZhYjY4MjM5ODI3ZWJlYTUyYjZkMDRmY2M3Y2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmNwcApAQCAtMTE3LDcg
KzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdhY3lOb0ludGVy
ZmFjZU9iamVjdFByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJDT05TVEFOVDIiLCBKU0M6
OlByb3BlcnR5QXR0cmlidXRlOjpEb250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50
cmluc2ljLCB7IChsb25nIGxvbmcpKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2Fj
eU5vSW50ZXJmYWNlT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU5v
SW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeU5vSW50ZXJm
YWNlT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyAr
MTI2LDcgQEAgdm9pZCBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJ
VElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmpl
Y3Q6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5Tm9J
bnRlcmZhY2VPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZh
Y2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdCkgfTsKIAogSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmpl
Y3Q6OkpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdExlZ2FjeU5vSW50ZXJmYWNl
T2JqZWN0PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdExlZ2FjeU5vSW50ZXJmYWNl
T2JqZWN0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAppbmRleCBlMmIxZjgwNDk2OTAx
ZTZlODcyYTA2YmNkYmVhMDBkNDk4OTlhNGEyLi41MzEyNDA1MzlmODc5NGUxMmIyOTBmMWQzNDVh
MzcwZWE2MmI4NTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMuY3BwCkBAIC05Myw3ICs5Myw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJB
QkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUsIEpTVGVzCiAKIHVzaW5n
IEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibmFtZWRJ
dGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlRnVuY3Rpb25fbmFtZWRJ
dGVtKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1By
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZv
aWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0g
eyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZv
ID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWls
dElucykgfTsKIAogSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdElucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuY3BwCmluZGV4IGQ1ZWExNGMx
Mjk2MzUwY2FmNWNlODE3OWJhYjliMzRhNTUxZGIzMTUuLmUxYjZlOTAzNGU4M2YzYzQwZGVlNWEy
NDk3NDBjYzQ4YjM0ZTczZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5jcHAKQEAgLTEwMiw3ICsxMDIsNyBA
QCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90
eXBlLCBKU1Rlc3RNYXBMaWtlUHJvdG90eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3Ry
dWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RNYXBMaWtlPjsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0TWFwTGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEzNiw3ICsxMzYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TWFwTGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRlbGV0ZSIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8
IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RNYXBMaWtlUHJvdG90eXBl
RnVuY3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RN
YXBMaWtlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1h
cExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE1hcExpa2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZTo6c19p
bmZvID0geyAiVGVzdE1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZSkgfTsKIAogSlNUZXN0TWFwTGlrZTo6
SlNUZXN0TWFwTGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RNYXBMaWtlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE1hcExpa2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1h
cExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMu
Y3BwCmluZGV4IDIwODBlN2U2ZGUxNjM5MDk5ZGZiOGE1YTNhZDJlMmJmZDcwZWM5YTcuLmM3Mzdh
OWRmZWNhNDFjOTkyOTFjMGFiNjQ1Yjk5YjVkM2IyZmJmMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKQEAgLTEwNiw3
ICsxMDYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtl
V2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPjsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RN
YXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZVRhYmxlVgogICAg
IHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGlu
dHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRl
bk9wZXJhdGlvbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5
cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTUwLDcgKzE1MCw3IEBAIHZvaWQg
SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9uczo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVzdE1hcExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9ucykgfTsKIAogSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6SlNU
ZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RNYXBMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2VX
aXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0
dGVyTm9JZGVudGlmaWVyLmNwcAppbmRleCAyNDcwMmVmMTU4ZmRmY2U4MWRiYjRmY2ExNThhZTYz
Njg3YThlNGYxLi5jYWMzMzY4YTViN2M1YWExNjU3OGY1NTU1NDYyODRmMzFjYzhmY2UwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90bwogCiB1
c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsx
MTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlVGFibAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVG
dW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3Rvciks
IChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDAp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lk
ZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE5LDcgKzExOSw3IEBAIHZv
aWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50
aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcihT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmlu
ZGV4IDFjZTIzMzYxYjM3OGQ3YjE3NzJhOTk3ZGY3ZWJmYTk5NjA4NTg3NjYuLmJmOWE1YWIwYjQw
Zjk2OWQwOTc5MzMxNGRjMzlmMjljMzBmZTZiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcApA
QCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbgogCiB1c2luZyBKU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNE
T01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Q
cm90b3R5cAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNf
Y2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEx
OSw3ICsxMTksNyBAQCB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdgogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0
dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb246OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIu
Y3BwCmluZGV4IDhmMjRiYTE2YjZiM2I1YWMyMDNkMmY2NDE2NDUwNGUyNjIwZjU1YzkuLjNhZTJj
OTMzNWFmZWEyNWQ0ZmYwZmFhNzM3OGRjNmVmZTE4ZGY1ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApA
QCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclBybwogCiB1c2luZyBKU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01D
b25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0
aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEy
MSw3ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYQogICAgIHsgImluZGV4ZWRTZXR0
ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rp
b24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rp
b24+KGpzVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlRnVu
Y3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElk
ZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
ZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERl
bGV0ZXJOb0lkZW50aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggZjRjZTBlNDFl
NWUzYTAyNmJjYzViM2UwNDcwZWYxNDMxYzg3YTRlYy4uNTg3Yzk1YmVmMDMxMDUzNzIwYjMxMjM4
NjFjOTkyNjJhYTEzNTkwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5v
SWRlbnRpZmllci5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1QK
IAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBK
U0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50
aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJO
b0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlck5v
SWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZp
ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZVRh
YmxlVmFsdWVzW10KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1l
ZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsK
QEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9J
ZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFt
ZWREZWxldGVyTm9JZGVudGlmaWVyOjpKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdU
Rk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uLmNwcAppbmRleCA3OTFjZGEyMWVmNTMzZDFkNWM2YzE0MDQ5MDVjMjg4ZmZk
OTJmNWFlLi4xZDIxMTMyMWUyZTU1OWIyNWIzZjI2NjVhZmQ1YjEyMjYzMDFkMTgxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAK
QEAgLTg1LDcgKzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNU
ZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0
TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dp
bmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRo
cm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVs
ZXRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0
ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVk
RGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1
Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250
RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Db25zdHJ1
Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1
bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJU
aHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpT
Q19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVy
VGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxl
dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDNhOThkNTlkMzhiNzFiMDE2NWMxYjJhZWYyM2Jl
ZjgwOWFkZWM3NDYuLjg1MWVkOWNiODkzMmNjODM1NGY1OWZjOTFlNTI0YjQ3Y2M0MTc4ZDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmNwcApA
QCAtOTIsNyArOTIsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rlc3RO
YW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rv
ck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
ckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZp
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5
cGVUYWJsZVZhbHVlcwogICAgIHsgIm5hbWVkRGVsZXRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVk
PihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRw
dHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWREZWxldGVyV2l0
aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9uYW1lZERlbGV0ZXIpLCAoaW50cHRyX3QpICgx
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRo
SWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEy
Niw3IEBAIHZvaWQgSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVu
dGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
RGVsZXRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElk
ZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
cihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyLmNwcAppbmRleCAyZWFjMTZmNDk5NmNkYWQ3NmNmYzFjYWYw
N2FmOGEyNmIyMDdmZTE5Li4xMzM4NmIyZjMxNzg5OTRhYTdkYTExOGRlNzRlOTFkNjQyMGQ3M2Vm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdl
dHRlci5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hB
UkFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUKIAogdXNp
bmcgSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpT
RE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxl
dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
ckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RO
YW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTAsNyArMTEwLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWwKICAgICB7
ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9w
ZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0
ZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERl
bGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhl
ZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3ROYW1l
ZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
KQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdl
dHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlcikgfTsKIAogSlNUZXN0TmFt
ZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OkpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoLmNwcAppbmRleCBjYzEwMjBjM2RjY2ZhMmRiZGU2MGNkNjc5NTQyYzdjZWQ3
ZWMzYzA1Li5mNjBiNGY2Y2Y4YWE0ODlkMThkOWYyOGRkM2NiYjhmMjU1MjNkMjFiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRH
ZXR0ZXJDYWxsV2l0aC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGhQcm90b3R5cGUsIEpTVGVzdE5hCiAKIHVzaW5nIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhE
T01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGg+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdl
dHRlckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
R2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RO
YW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3Ry
dWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9u
dEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90
OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhDb25zdHJ1Y3RvciksIChp
bnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0g
fSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJD
YWxsV2l0aFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNh
bGxXaXRoUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkR2V0
dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3
ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRo
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgpIH07
CiAKIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OkpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3ROYW1lZEdldHRlckNhbGxXaXRoPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuY3BwCmlu
ZGV4IGExOWRmOWRlZWQ4ODk2ODExYWQ1ZjJkMmQzNTliZmI3N2VjY2IxZmEuLjg0YjY2MDk5M2Q4
ZTNjMzM0NWM2YzI0YTE0OTBkYzBiMjZjMjJhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkR2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJU
X0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZSwgSlNUZQogCiB1c2luZyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRHZXR0
ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRH
ZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0
b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRl
bnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGVU
YWJsZVZhbHVlc1tdCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRy
X3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZEdldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEdldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4
LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVu
dGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
R2V0dGVyTm9JZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVy
Tm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVu
dGlmaWVyOjpKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlck5v
SWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKaW5kZXggOGIz
NDhhYzRlMmU3YjZkZTgzNGNkNzUxOTk3ODRjZTcxODY2MzZmYi4uNTcwNzE0NDJlNzg1OTI3OTY3
ODg2ZDI3ZTc2ZWNiNmI4YjY5NWFkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdl
dHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTAsNyArOTAsNyBAQCBTVEFUSUNfQVNTRVJUX0lT
T19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlLCBKUwogCiB1c2luZyBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEdldHRl
cldpdGhJZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRHZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0
ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0
ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVu
dGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNSw3ICsxMTUs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzWwogICAgIHsgImdldHRlck5hbWUiLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJp
bnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9nZXR0ZXJOYW1lKSwgKGlu
dHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJ
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJXaXRo
SWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI0LDcg
KzEyNCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkR2V0dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50
aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmll
ci5jcHAKaW5kZXggZWEyZWRlZTlhYjg0NWIwNTNhYWNmMDhmZWI1NzcxNzI5MWQxNmJkOS4uNGNi
ZjY2ZTNkOGI1MmQwNTMzZGFjYzBlYTkxZmMyNDg1ZDY2MzQ1OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJ
Q19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlLCBKU1RlCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVy
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RO
YW1lZFNldHRlck5vSWRlbnRpZmllcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0
dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0
TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nh
c3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmll
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRp
ZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5h
bWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7
CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0
ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRp
ZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRTZXR0
ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSog
c3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9u
LmNwcAppbmRleCA4Mjk0MmRiNTI5NzE3YzIwMGE1YWM1MmIyNmUxNDI3YTMzOGU3MWY0Li5iNDk1
MjM5ZTNhYzg3ZjAyYjViZmQ2ZjIyOGYyN2M4NjQ3MWIwZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9u
UHJvdG90eXBlVGFibGVWYWx1CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5h
bWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGlj
X2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0
aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBA
QCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07CiAK
IEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcAppbmRleCBjN2Q3MmE3Y2E4MjU4MGFh
ZjY2M2E5MTk2NWEyZjhkMjAxM2RmOTE0Li43ODFhYjA1NWI0Y2UzMDA1ZGYyMWMzOWUwZmU4YmE5
ZWU5NzM3NmJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50
aWZpZXIuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NI
QVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsIEpTCiAKIHVz
aW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9N
Q29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZp
ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJ
ZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlm
aWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBj
b25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAibmFtZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0
aElkZW50aWZpZXJQcm90b3R5cGVGdW5jdGlvbl9uYW1lZFNldHRlciksIChpbnRwdHJfdCkgKDIp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlm
aWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNiw3ICsxMjYsNyBAQCB2
b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsK
IH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElk
ZW50aWZpZXI6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0
ZXJXaXRoSWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNl
dHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
LmNwcAppbmRleCA3ZDM0NWZmNDYyYjkyZjFkZjBlNjlmNDM3NGNmMjIwNDFlMWFhNDQzLi42Zjdh
NWI2MmI4OWFhNDNkOTg3OTgzMmY2MWU2Yzg4NDY1ZWM0ODUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwCkBAIC05NSw3ICs5NSw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKIAog
dGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
UHJvdG90eXBlVGFibGVWYWx1CiAgICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVu
c2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7
IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZUZ1bmN0aW9uX2luZGV4ZWRTZXR0ZXIpLCAoaW50
cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAKaW5kZXggNDc5NjY4MDM2NGMyZTYzMjg1MzRm
MDlkNDQxMTZhYTQ1ZjQ2YjFmNS4uZGM2YzY2MmNlMDRkNWJmZmIxMTQxMmFlYmE3MzY0NGUwNWJm
ZTM4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldp
dGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyUAogCiB1c2luZyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJs
ZTxKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlckFuZFNldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNl
dHRlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5k
U2V0dGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZQogICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGVGdW5jdGlvbl9p
bmRleGVkU2V0dGVyKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUHJvdG90eXBlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHZv
aWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyQW5kU2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlckFuZFNldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRl
cikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKSB9Owog
CiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpKU1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcj4oc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKaW5kZXggZTAxYzcwNTQxNmE4
MzM4ZTI2NjlhYjE3NDU1YzFlY2Y2YWEwNDU1Ny4uMzhiODU4MjE2NjRkNTYzYjFmMmYwODUwZTNm
ZGJhMzk3YzI0MTg3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcApAQCAtODUsNyArODUsNyBAQCBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zUAogCiB1c2luZyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29u
c3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPjsK
IAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3Zl
cnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0
b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEw
OSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZQogICAgIHsgImNvbnN0cnVjdG9y
Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVt
KSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0
VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29u
c3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFs
dWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0KICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92
ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKaW5kZXggZjg1OWRlZGI2YmQxNDI5ZmFkYWVk
M2Q0ZDNkOGQ5ZTE0ZGIxODdjNy4uYTZkYzY2YThjODMxNmY3MWMxNzVkZmJmMTAzNDMzOTA0MzJj
YTE3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKQEAgLTExMSw3ICsxMTEsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzVGFibAogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBK
U1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZSA9IHsg
MiwgMywgdHJ1ZSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzOjppbmZvKCksIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc1RhYmxlVmFsdWVzLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
cyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzRE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3RvcikgfTsK
IAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzUs
NyArMTM1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3QKICAgICB7ICJjb25zdHJ1Y3RvciIs
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZh
bHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
Q29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0
VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFi
bGVQcm9wZXJ0aWVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2Vh
YmxlUHJvcGVydGllc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVgogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNf
aW5mbywgJkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Rh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMiX3MsICZCYXNlOjpzX2lu
Zm8sICZKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllczo6SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3Jn
ZWFibGVQcm9wZXJ0aWVzKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0Fu
ZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCmluZGV4IDZmYWQ3NWI3MzRlOWY5MTJm
OTMyZTk4MzY5MWY3MDEwM2NkYmI2Y2EuLmJmYmNkZTYzMzBlZjY3NDE4YWU2YmNlNTczNjY1Y2Ni
ZTM0OTU5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzQW5kTAogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OmluZm8o
KSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVn
YWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxlVmFsdWVzLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGVJbmRl
eCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0
cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3Jn
ZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3Qg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzQW5kTAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3Bl
cnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1By
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CkBAIC0xNDQsNyArMTQ0LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHIK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwg
JkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCAm
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdEluc1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3Zl
cnJpZGVCdWlsdElucz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25z
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZXNwYWNlQ29uc3QuY3BwCmluZGV4IDZjMmY5ZWU0YjY0NjhlNzBkODViY2NiZThjMTVjMWExM2I5
OTIxNmIuLjQ1MmRkYzU0MzI4YWVmYTFjYWUxMDliYjM3ZGNmMDM0NjY1NDczNWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3Bh
Y2VDb25zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVzcGFjZUNvbnN0LmNwcApAQCAtNTYsNyArNTYsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZXNwYWNlQ29uc3RDb25zdHJ1Y3RvclRhYmxlVmFsdWVz
W10gPQogc3RhdGljX2Fzc2VydChUZXN0TmFtZXNwYWNlQ29uc3Q6OlRFU1RfRkxBRyA9PSBmYWxz
ZSwgIlRFU1RfRkxBRyBpbiBUZXN0TmFtZXNwYWNlQ29uc3QgZG9lcyBub3QgbWF0Y2ggdmFsdWUg
ZnJvbSBJREwiKTsKIHN0YXRpY19hc3NlcnQoVGVzdE5hbWVzcGFjZUNvbnN0OjpURVNUX0JJVF9N
QVNLID09IDB4MDAwMGZjMDAsICJURVNUX0JJVF9NQVNLIGluIFRlc3ROYW1lc3BhY2VDb25zdCBk
b2VzIG5vdCBtYXRjaCB2YWx1ZSBmcm9tIElETCIpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3RET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVzcGFjZUNvbnN0
RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3Qg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTcxLDcgKzcxLDcgQEAgdGVt
cGxhdGU8PiB2b2lkIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OmluaXRpYWxp
emVQcm9wZXJ0aWVzKFZNJiB2bSwKICAgICBVTlVTRURfUEFSQU0oZ2xvYmFsT2JqZWN0KTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0OjpzX2luZm8gPSB7ICJUZXN0
TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZUNvbnN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVzcGFjZUNvbnN0OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZXNwYWNlQ29uc3QpIH07CiAKIEpTVGVzdE5hbWVzcGFjZUNvbnN0OjpKU1Rlc3ROYW1lc3Bh
Y2VDb25zdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKICAgICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lc3BhY2VPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5jcHAKaW5kZXggMDc2ZDYzNDI2NmE1YTJiM2Q0MmFk
ZTczN2Q2MWE3NDc1MDdjMGVkMi4uZGU5MGU5YTA2NjI4MzBkZjFjYzYyMjkzNmI1NjgxMWMwZDcz
ODc4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVzcGFjZU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5jcHAKQEAgLTk1LDcgKzk1LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVzcGFjZU9iamVjdENvbnN0
cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0SW50ZXJmYWNlTmFtZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lc3BhY2VP
YmplY3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTMxLDcgKzEzMSw3
IEBAIHRlbXBsYXRlPD4gdm9pZCBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6
aW5pdGlhbGl6ZVByb3BlcnRpZXMoVk0mIHZtCiAjZW5kaWYKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE5hbWVzcGFjZU9iamVjdDo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE5hbWVzcGFjZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VPYmpl
Y3Q6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2VOYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkg
fTsKIAogSlNUZXN0TmFtZXNwYWNlT2JqZWN0OjpKU1Rlc3ROYW1lc3BhY2VPYmplY3QoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgOiBK
U0RPTU9iamVjdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCkgeyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKaW5kZXgg
MmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0MTNmY2MxZTQ2M2MxNWJiYy4uYjkwNGRmNmIzMDc3YWIy
ZGRhNzdkMjlmZjQ1ZjVjZDRmZTFmNjI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcApAQCAtMTM0LDcgKzEzNCw3
IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpT
VGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6Y29uCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElP
TihKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdE5vZGVET01Db25zdHJ1
Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9k
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZURPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTE3MSw3ICsxNzEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNUZXN0Tm9kZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0lu
dHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVz
dE5vZGVQcm90b3R5cGVGdW5jdGlvbl9mb3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
b2RlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROb2RlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5vZGVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGVQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0Tm9kZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjM1
LDcgKzIzNSw3IEBAIHZvaWQgSlNUZXN0Tm9kZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZTo6c19pbmZvID0geyAiVGVzdE5vZGUiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZTo6c19pbmZvID0geyAiVGVzdE5vZGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0Tm9kZSkgfTsKIAogSlNUZXN0Tm9kZTo6SlNUZXN0Tm9kZShTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROb2RlPiYmIGltcGwp
CiAgICAgOiBKU05vZGUoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBA
IC00MzMsMTEgKzQzMywxMSBAQCB1c2luZyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNE
T01JdGVyYXRvclByb3RvdHlwZTxKU1Rlc3ROb2RlLCBUZXN0Tm9kZUl0ZQogSlNDX0FOTk9UQVRF
X0hPU1RfRlVOQ1RJT04oVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZU5leHQsIFRlc3ROb2RlSXRl
cmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5m
byBUZXN0Tm9kZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RO
b2RlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdE5vZGVJdGVyYXRv
cjo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3IpIH07Citjb25z
dCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiVGVzdE5v
ZGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5m
byBUZXN0Tm9kZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0Tm9k
ZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9k
ZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJ
dGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0
b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0
b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9k
ZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJh
bWUqLCBKU1Rlc3ROb2RlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAppbmRleCBiNDQ3Mzk1ZWUz
N2M2NDIwYTI4NDExYjI2YzdjNTBkYjI2Nzc5YWRjLi41OTY1YzliNjRlYWVmZWJjZDFhNzY4NWY5
OTQ5MjY2MDdmYWJlNGY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNwcApAQCAtMjA2Myw3ICsyMDYzLDcgQEAgdGVtcGxh
dGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0T2JqRE9N
Q29uc3RydWN0b3I6OmNvbnMKIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdE9i
akRPTUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6Y29uc3Ry
dWN0KTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MjQyOSw3ICsyNDI5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE9ialBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgInJlYWRvbmx5IiwgSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RG9udERlbGV0ZSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q29uc3RhbnRJbnRlZ2VyLCBOb0ludHJpbnNpYywgeyAo
bG9uZyBsb25nKSgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPYmpQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0T2JqUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0Il9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dE9ialByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RPYmpQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTI1MzksNyArMjUzOSw3IEBAIHZvaWQgSlNUZXN0T2JqUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPYmo6OnNfaW5mbyA9
IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0T2JqVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2JqKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE9iajo6c19pbmZvID0geyAiVGVzdE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE9i
alRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9iaikgfTsKIAogSlNU
ZXN0T2JqOjpKU1Rlc3RPYmooU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T2JqPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE9iaj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0
aW9uQ29uZGl0aW9uYWwuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsLmNwcAppbmRleCAyZTA3MGRjOTIzNTA3YTRl
Nzk5MWJlYTJhNjhmNTY0ZWQyYzA5Y2FlLi44NThhYTRjOWVlODViYjhhMGVjOWVjYWI2MjE5NWNi
NWRhODA3OTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5jcHAK
QEAgLTEwMSw3ICsxMDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbFByb3RvdHlwZSwgSlNUZXN0TwogCiB1c2luZyBKU1Rl
c3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5v
dENvbnN0cnVjdGFibGU8SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRp
dGlvbmFsRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RPcGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9N
Q29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0
aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5
cGVUYWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9w
ZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29u
ZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5
cGUpIH07CiAKIHZvaWQgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE9wZXJh
dGlvbkNvbmRpdGlvbmFsUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNvbmRp
dGlvbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsKSB9OwogCiBKU1Rlc3RPcGVyYXRpb25D
b25kaXRpb25hbDo6SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwoU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0T3BlcmF0aW9uQ29u
ZGl0aW9uYWw+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0T3BlcmF0aW9uQ29uZGl0
aW9uYWw+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDQ5MjEwNDY1OTMyM2Ux
NzczMGU3ODgxNjFlYmY1N2Q2MGI5NWM3ZjIuLjg1OWI5OWNlMTcyY2Y1NDJkMjdjOTU3OWI3MDVm
NDcyMTc3NjdhMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
cy5jcHAKQEAgLTIxOCw3ICsyMTgsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRAogfQogSlND
X0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0
cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0
b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0yNDIsNyArMjQyLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc0NvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNs
b3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1
Y3RvcnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1By
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjUxLDcgKzI1MSw3IEBAIHZv
aWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZvID0g
eyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZv
ID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycykgfTsKIAogSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6SlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9ycyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzPiYmIGltcGwpCiAgICAg
OiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+KHN0cnVjdHVyZSwgZ2xv
YmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2Vx
dWVuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwCmluZGV4IGQ3ZjEzNzQ2N2Qy
NWEwOWYyNjJmNzFiNWUwM2M3ZGRhMjg4MzY5ZGYuLjZmYzJmNGI1MzZiN2ZmZDg2YWEyMDMzNjMw
NTZjZTUwZTZjZWVkMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5jcHAKQEAgLTE1NSw3ICsxNTUsNyBAQCB0ZW1w
bGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzVwogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yQ29uc3RydWN0LCBK
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0b3I6OmNv
bnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1
ZW5jZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNzksNyArMTc5LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnNXaXRoU2VxdWVuY2VQcm90b3R5cGVUYWIKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4o
anNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yKSwgKGlu
dHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTg4LDcgKzE4OCw3IEBA
IHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJB
TlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6
c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZSkgfTsKIAogSlNUZXN0T3ZlcmxvYWRl
ZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2Vx
dWVuY2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbklu
dGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0UGx1Z2luSW50ZXJmYWNlLmNwcAppbmRleCBkNTM3YWFiOGI0ZTRkZGZkMGIxZDZhMThjODA1
ZmEwYjcxYzA5NTQwLi41MzgzODJhZTYyMzk2ZGNhODE3MzQ4ODJjMjkxMmFlNWVkYWQ0MTg1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
UGx1Z2luSW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcApAQCAtODQsNyArODQsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90
b3R5cGUsIEpTVGVzdFBsdWdpbgogCiB1c2luZyBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFBsdWdpbklu
dGVyZmFjZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVy
ZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQ
bHVnaW5JbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOCw3ICsxMDgsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFBsdWdpbkludGVyZmFjZUNvbnN0
cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVl
RnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFj
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50
ZXJmYWNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFj
ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5J
bnRlcmZhY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBK
U1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVy
ZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdp
bkludGVyZmFjZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5J
bnRlcmZhY2UpIH07CiAKIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6SlNUZXN0UGx1Z2luSW50ZXJm
YWNlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdFBsdWdpbkludGVyZmFjZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RQbHVnaW5JbnRlcmZhY2U+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFByb21pc2VSZWplY3Rpb25FdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcAppbmRleCAwN2Q5
YzcxZmI3NTM3NWE1YzUxNmMzMWJmYTc5MjAwODExM2ZlNzQ1Li4zMDY3MmQyZGQ0MTUzYWQ0Yjgz
ZGJkNTFiZTM5OWZlNGI0ZWFkNzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50LmNwcApAQCAtMTk1LDcgKzE5NSw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERP
CiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZl
bnRET01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9N
Q29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rp
b25FdmVudERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2
ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTIyMCw3ICsyMjAsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlVGFibGVWYWx1
ZXNbXSA9CiAgICAgeyAicmVhc29uIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNj
ZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNp
YywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpz
VGVzdFByb21pc2VSZWplY3Rpb25FdmVudF9yZWFzb24pLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0
PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VS
ZWplY3Rpb25FdmVudFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RQcm9taXNlUmVqZWN0aW9u
RXZlbnRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIyOSw3ICsyMjks
NyBAQCB2b2lkIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2lu
Zm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZl
bnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2lu
Zm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25F
dmVudCkgfTsKIAogSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpKU1Rlc3RQcm9taXNlUmVq
ZWN0aW9uRXZlbnQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QsIFJlZjxUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50PiYmIGltcGwpCiAgICAgOiBK
U0V2ZW50KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5
TWFwTGlrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0UmVhZE9ubHlNYXBMaWtlLmNwcAppbmRleCA0Zjk2MzA1OTVmZDE3ZTIyYWZkNDAxZTVhMDg1
YjNjN2ZmOTExYzhjLi42MDQ2Y2JhYzc4OTVmNzZjZTkwZjE4OTdmODllMGRmNmY0OWVhOTRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
UmVhZE9ubHlNYXBMaWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcApAQCAtOTksNyArOTksNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90
b3R5cGUsIEpTVGVzdFJlYWRPbgogCiB1c2luZyBKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFJlYWRPbmx5
TWFwTGlrZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFw
TGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RS
ZWFkT25seU1hcExpa2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
UmVhZE9ubHlNYXBMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzMCw3ICsxMzAsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxS
YXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25f
Zm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExp
a2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RSZWFkT25seU1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExp
a2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlYWRP
bmx5TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQwLDcg
KzE0MCw3IEBAIHZvaWQgSlNUZXN0UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2U6OnNfaW5mbyA9IHsg
IlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExp
a2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtlKSB9OwogCiBKU1Rlc3RSZWFkT25seU1hcExpa2U6OkpT
VGVzdFJlYWRPbmx5TWFwTGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZWFkT25seU1hcExpa2U+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlNYXBMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNldExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKaW5kZXgg
MzRmZTg1N2QyM2U5YTZhNWFkOGZlMjFjZTBmMWRhZjlkNTlmYmY4OS4uMTVlNjEzODg0ODQ1MjAw
Y2I3MjY4YzFhOGUzZTE2MmJhYTgwNzMwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlr
ZS5jcHAKQEAgLTk4LDcgKzk4LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFC
TEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlLCBKU1Rlc3RSZWFkT24KIAogdXNpbmcg
SlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3RSZWFkT25seVNldExpa2U+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFJlYWRPbmx5U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3Ip
IH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25s
eVNldExpa2VET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJl
YWRPbmx5U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjgs
NyArMTI4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0
TGlrZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlRnVu
Y3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25s
eVNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RSZWFkT25seVNldExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25s
eVNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTM4LDcgKzEzOCw3IEBAIHZvaWQgSlNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2U6OnNfaW5m
byA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5U2V0TGlrZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25s
eVNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtlKSB9OwogCiBKU1Rlc3RSZWFkT25seVNldExp
a2U6OkpTVGVzdFJlYWRPbmx5U2V0TGlrZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZWFkT25seVNldExpa2U+JiYgaW1wbCkK
ICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlTZXRMaWtlPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdC5jcHAKaW5kZXggMDdmNWY5MTExMGU5NjI1MzFmNWFhYjNlMWVmOTcyNjc4OTMwZTA5
OS4uOWVkMGQ3YTk1NmNlZDc0YWYzMTgzM2MwZTk0N2FmNWZjN2EwZjhhNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgU1RB
VElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlD
b3N0UHJvdG90eXBlLCBKU1Rlc3QKIAogdXNpbmcgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RS
ZXBvcnRFeHRyYU1lbW9yeUNvc3Q+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0
b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDcsNyArMTA3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3RDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90
OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBv
cnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1l
bW9yeUNvc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgSlNUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBv
cnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBv
cnRFeHRyYU1lbW9yeUNvc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0KSB9OwogCiBKU1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6OkpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdChTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUlu
dGVyZmFjZS5jcHAKaW5kZXggYmNhMGJlNTU1YWU2ZWEyZTk0OTk2NThmNTUyNzI2M2YzZTlmZDVh
Mi4uNDExNjZlMjE1ZjNmM2U0N2UzNTNhZjM4MWRlMmZmMWUyMmE0YjYwMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKQEAg
LTEwOSw3ICsxMDksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cAogCiB1c2luZyBKU1Rlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3Ry
dWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01D
b25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUlu
dGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYQogICAgIHsg
ImZ1bmN0aW9uUmV0dXJuaW5nIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQ
cm90b3R5cGVGdW5jdGlvbl9mdW5jdGlvblJldHVybmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTQ5LDcgKzE0OSw3IEBAIHZvaWQgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RTZXJp
YWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlKSB9OwogCiBKU1Rlc3RTZXJpYWxpemVk
U2NyaXB0VmFsdWVJbnRlcmZhY2U6OkpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U+JiYgaW1wbCkKICAgICA6IEpT
RE9NV3JhcHBlcjxUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlPihzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmNwcAppbmRleCBlN2Q0
NzZiY2MzNDNiNTgyN2E0NzRiMTk5OWJkMDM1N2E3MjNlMjJlLi5iMzc1MTdlMDg2OTFmNzgzMDM1
NTU3ZjliZjcyMDVhYjQ3ODQ3YTRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuY3BwCkBAIC0xMDEsNyArMTAx
LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVBy
b3RvdHlwZSwgSlNUZXN0U2V0TGlrZVByb3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0TGlrZURPTUNv
bnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2V0TGlr
ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdFNldExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xMzQsNyArMTM0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdFNldExpa2VQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJkZWxl
dGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVu
dW0gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChp
bnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U2V0TGlrZVByb3Rv
dHlwZUZ1bmN0aW9uX2RlbGV0ZSksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U2V0TGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRl
c3RTZXRMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTZXRMaWtlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2U6
OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2UpIH07CiAKIEpTVGVzdFNldExp
a2U6OkpTVGVzdFNldExpa2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U2V0TGlrZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFw
cGVyPFRlc3RTZXRMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zLmNwcAppbmRleCA0MDI0MzlhYjBjZDk0N2FlMmI3MjA5NzQ5MDc4MGZmMTNiOGE5NzE4Li4z
NTJjODYzZjNhMWEwMjk1NTExMmI5NjYxMWE5M2M3NzczYTI2ZWY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCkBAIC0x
MDUsNyArMTA1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
cz47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRo
T3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5
cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiB7CkBAIC0xMzgsNyArMTM4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVUYWJsZVYK
ICAgICB7ICJjbGVhciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRy
aW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RT
ZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlRnVuY3Rpb25fY2xlYXIpLCAo
aW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFNldExpa2VX
aXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJp
ZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9p
ZCBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0U2V0
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zKSB9OwogCiBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpK
U1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnM+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2V0TGlr
ZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyLmNwcAppbmRleCBlYTI5MTM0ZjMyYTVlMmVk
NDJiZWYxZTIzZWYyN2VmNzhmOWY1OTg0Li5mZDk4Yjc0NGQ0YzZkMmYyMzY4Mzc0ZjE2ZjUyZDUx
Mjc3Y2MzNjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5jcHAKQEAgLTg5LDcgKzg5LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJQcm90
b3R5cGUsIEpTVGVzdFN0cmluZ2lmaWUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJET01Db25z
dHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lm
aWVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckRP
TUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RT
dHJpbmdpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyAr
MTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUHJv
dG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVy
UHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RTdHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmll
clByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIzLDcgKzEyMyw3IEBA
IHZvaWQgSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFN0cmluZ2lmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXIpIH07CiAKIEpTVGVz
dFN0cmluZ2lmaWVyOjpKU1Rlc3RTdHJpbmdpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllcj4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uLmNwcAppbmRleCAwYmM2YzgyOWI2NzVhZmY3OTMxZTBmMmVm
YWRlNDViMWNhMmVlODRhLi5jMWNlM2M0Y2E2YjZlNjg0YzA5NjNmMjBkNGM3ODZjY2M5MDg0MmZj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJh
dGlvbi5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hB
UkFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGUKIAogdXNp
bmcgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpT
RE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZp
ZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
bkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVz
dFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RT
dHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlVGFibGVWYWwKICAgICB7
ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRp
dmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGVG
dW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJp
bmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcg
QEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJ
VElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
ZmllckFub255bW91c09wZXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
bikgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OkpTVGVzdFN0cmlu
Z2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0
aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllck5hbWVkT3BlcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmNwcAppbmRleCA3YzFl
MjY5YjkzZmQyNWZjODE1Y2YzMGVmMDI3ZWRjNDZkZDM4Njc4Li40NDM2NTEzNzEyOWNmOGQyZGM3
MTFjNTNlN2Q5MTJkMzU4MTdmZmNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lm
aWVyTmFtZWRPcGVyYXRpb24uY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5
cGUsIEpTCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJp
bmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJp
bmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29u
c3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmll
ck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
ck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBj
b25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE2LDcgKzExNiw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3Bl
cmF0aW9uUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNp
YywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmlu
Z2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJf
dCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVk
T3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJh
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVk
T3BlcmF0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVy
YXRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUs
NyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJ
T04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRp
b246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24pIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb246OkpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24oU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3Ry
aW5naWZpZXJOYW1lZE9wZXJhdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RT
dHJpbmdpZmllck5hbWVkT3BlcmF0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0
aW9uSW1wbGVtZW50ZWRBcy5jcHAKaW5kZXggNTUzMzY3OWM4NjYyNjEwZjI4MWQyZmViMTBlNTUx
ZGYxM2FmMzBjYi4uOWFiYTY0NmI3ZmE4MmY1M2FiNDllZTA3ODAwYWM0ODc0OTMyMWZiNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVt
ZW50ZWRBcy5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0Vf
U0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG8KIAog
dXNpbmcgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0
b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllck9w
ZXJhdGlvbkltcGxlbWVudGVkQXM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcyIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50
ZWRBcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1w
bGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTYsNyAr
MTE2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZVRhYmwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0
U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJp
bmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlv
bkltcGxlbWVudGVkQXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
SW1wbGVtZW50ZWRBc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50
ZWRBc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVu
dGVkQXMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRl
ZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcykgfTsKIAogSlNUZXN0
U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpKU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFz
PiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1w
bGVtZW50ZWRBcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJp
bmcuY3BwCmluZGV4IGMwNjVkNzJhN2ZiMTBiOWY2NmUwYjc5ZTg3NDYxZWJjYzY4YTk1NjcuLmNi
ZGY4YWFmZWM4YzQ0MWMxOTdiODlhMWJjYjQxZWYwOGQ2MjQzNTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbk5hbWVkVG9TdHJpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCkBA
IC04OSw3ICs4OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvCiAKIHVzaW5nIEpTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25z
dHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRv
U3RyaW5nPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJp
bmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmciX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE0LDcgKzExNCw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9T
dHJpbmdQcm90b3R5cGVUYWJsCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90
KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0
aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5n
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9u
TmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0
aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3Ry
aW5nUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcg
QEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0
aW9uTmFtZWRUb1N0cmluZzo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uTmFtZWRUb1N0cmluZzo6SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3Ry
aW5nKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZz4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmc+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwCmluZGV4IDliZGM0ZTMwMjk3
MGE2MjI5NzBjZTVmZGM2MGMwMjIwMDJjYTAzMGYuLjNjYWVkODgyNzQ0NzEyNDUyNzE4OTMwYThm
YTQxMzllNzQ2NjgwZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZS5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3Rv
dHlwZSwKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0
cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlB
dHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVG
b3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxP
YmplY3QpCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVl
IEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGVUYWJsZVZhbHUKICAg
ICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdO
YXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlw
ZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdp
ZmllclJlYWRPbmx5QXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZv
aWQgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0
ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmlu
Z2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5n
aWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSkgfTsKIAogSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6SlNUZXN0U3RyaW5naWZpZXJSZWFkT25s
eUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlPiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU+KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRl
QXR0cmlidXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5jcHAKaW5kZXggZWZiYzRlNjM1YWY4
ZDk2MjJjNTBjM2IyMDdjOWU5YmU1YWVhNDBhYS4uODQwYzVlNmUyZmZmMTFhYzgzYTQzNDNlMjVm
MjQ5OTA3MjhkMDA3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJS
ZWFkV3JpdGVBdHRyaWJ1dGUuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJv
dG90eXBlCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29u
c3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZT47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZVRh
YmxlVmFsCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmli
dXRlUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
MTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkV3Jp
dGVBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpzX2luZm8gPSB7
ICJUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGUpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
OjpKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllclJl
YWRXcml0ZUF0dHJpYnV0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5jcHAKaW5kZXggZGRiOTY1ZGQ2ZmU2NTQ5
MTNkOTJkZjlmODIzYzFhM2JjY2ZiOTdlMi4uZmZhMGNlNzdjYzI5ZjE0NjI5NTEzMmU3NzcwZmRi
NDIwYTU0NTNmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmNwcApAQCAtODMsNyArODMs
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RUYWdnZWRXcmFw
cGVyUHJvdG90eXBlLCBKU1Rlc3RUYWdnZWRXcgogCiB1c2luZyBKU1Rlc3RUYWdnZWRXcmFwcGVy
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RU
YWdnZWRXcmFwcGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2Vk
V3JhcHBlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0VGFn
Z2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEwNyw3ICsxMDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNv
bnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5
U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RUYWdnZWRXcmFwcGVyQ29uc3RydWN0b3IpLCAoaW50
cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdFRhZ2dlZFdyYXBwZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdFRhZ2dlZFdyYXBwZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZSkgfTsKIAog
dm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgdm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpz
X2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3Jh
cHBlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyKSB9OwogCiBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpKU1Rl
c3RUYWdnZWRXcmFwcGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdFRhZ2dlZFdyYXBwZXI+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0VGFnZ2VkV3JhcHBlciwgU2lnbmVkUHRyVHJhaXRzPFRlc3RUYWdnZWRXcmFw
cGVyLCBUZXN0VGFnZ2VkV3JhcHBlclB0clRhZz4+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5jcHAKaW5kZXggYzJiY2VlYTEyZjY3YWY1NjU3
ZGU1ZTllOGVhYWI3YWQ1Y2NjMmFjMC4uYmMxOWI4M2Q4NjYzZDhlNGZhMmFhZjFhNmJhZDQ3MmRk
NDgxYTFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuY3BwCkBAIC0xODcsNyArMTg3LDcgQEAgdGVtcGxh
dGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0VHlwZWRl
ZnNET01Db25zdHJ1Y3RvcjoKIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdFR5
cGVkZWZzRE9NQ29uc3RydWN0b3JDb25zdHJ1Y3QsIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0
b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVk
ZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVk
ZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVm
c0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0VHlwZWRlZnNE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjMyLDcgKzIzMiw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogICAgIHsgImNhbGxXaXRoU2VxdWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rl
c3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0aW9uX2NhbGxXaXRoU2VxdWVuY2VUaGF0UmVxdWlyZXNJ
bmNsdWRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dFR5cGVkZWZzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VHlwZWRlZnMiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFR5cGVkZWZz
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJUZXN0VHlwZWRlZnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0VHlwZWRlZnNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTI0MSw3ICsyNDEsNyBAQCB2b2lkIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RUeXBlZGVmczo6c19pbmZvID0geyAiVGVzdFR5
cGVkZWZzIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdFR5cGVkZWZzVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0VHlwZWRlZnM6OnNfaW5mbyA9IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywg
JkpTVGVzdFR5cGVkZWZzVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
VHlwZWRlZnMpIH07CiAKIEpTVGVzdFR5cGVkZWZzOjpKU1Rlc3RUeXBlZGVmcyhTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RUeXBl
ZGVmcz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RUeXBlZGVmcz4oc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5j
cHAKaW5kZXggM2Q5NDdhMzE5YTUwYjI0MGMxZTZkZTFlODczNWZhM2ZmZDI5YzExMi4uZWMwMTI3
MTRmMGM5Nzg0Mzg2ODRmNGVhMDlkNmNmOTgxYzViZDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2Jh
bFNjb3BlLmNwcApAQCAtOTksNyArOTksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhh
c2hUYWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlVGFibGUgPSB7IDYsIDE1LCB0cnVlLCBKU1dvcmtl
ckdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNX
b3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZv
IEpTV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xv
YmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1td
ID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpT
V29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNj
b3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2lu
Zm8sICZKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzOCw3ICsxMzgsNyBAQCB2b2lkIEpTV29ya2VyR2xvYmFs
U2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5H
X1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2Vy
R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5m
bywgJkpTV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1dvcmtlckdsb2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFs
U2NvcGU6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAm
SlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTV29ya2VyR2xvYmFsU2NvcGU6OkpTV29ya2VyR2xv
YmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPFdvcmtlckdsb2JhbFNj
b3BlPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmNwcAppbmRleCBlZGYxZjE2ZmMxYTAw
NzdjMDM3OTQxYTFiZmQyMmRiY2UyNDc1MzM0Li5mNWY4NWFmNDgxZDFkYzI5Yjc5ODljYzc3NmI2
OWViZmE0YWFhNzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTY4LDcg
KzY4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTV29ya2xldEdsb2JhbFNjb3Bl
VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTV29ya2xldEds
b2JhbFNjb3BlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTV29ya2xldEdsb2JhbFNjb3BlOjppbmZv
KCksIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVWYWx1ZXMsIEpTV29ya2xldEdsb2JhbFNjb3Bl
VGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFs
U2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmts
ZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2xl
dEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC05OCw3ICs5OCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAog
c3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
ID0geyAxLCAxLCB0cnVlLCBKU1dvcmtsZXRHbG9iYWxTY29wZTo6aW5mbygpLCBKU1dvcmtsZXRH
bG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFsdWVzLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywg
JkpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9i
YWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVQ
cm90b3R5cGUpIH07CiAKIHZvaWQgSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIEpTV29ya2xldEds
b2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NU
UklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dv
cmtsZXRHbG9iYWxTY29wZTo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6
OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3Jr
bGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6
OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGUpIH07CiAKIEpTV29ya2xldEdsb2JhbFNjb3Bl
OjpKU1dvcmtsZXRHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8
V29ya2xldEdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHZtLCBzdHJ1
Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
b2JqYy9PYmpDUnVudGltZU9iamVjdC5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09i
akNSdW50aW1lT2JqZWN0Lm1tCmluZGV4IGRiMzU4MGI4YjUxZWJlY2YzZTk4M2JiMjAwM2FkMjM1
MDc0ZWNiMTkuLjliNjMyMmY0NjM0YjU5NGQ0Mzk0ZmVlOTQwZDRmYTk0NjIyZDQwMzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCkBAIC0z
Myw3ICszMyw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU9iamVjdDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVP
YmplY3QiLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE9iakNSdW50aW1lT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNS
dW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpDUnVudGltZU9iamVjdCJfcywgJlJ1bnRpbWVP
YmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpD
UnVudGltZU9iamVjdCkgfTsKIAogT2JqQ1J1bnRpbWVPYmplY3Q6Ok9iakNSdW50aW1lT2JqZWN0
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZlB0cjxPYmpjSW5zdGFuY2U+JiYgaW5z
dGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KHZtLCBzdHJ1Y3R1cmUsIGluc3RhbmNlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbSBiL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KaW5kZXggNWIxYTgzNTNk
OTAyZTFmOGQ3MzYyOGM2OTBiM2Y3NGIyMGYxY2ZlNC4uNmFmNmVhMmI5MzAwNGU3OWEyNDZhNDMy
YjVkZTU0YTIzMGU0NDZhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2lu
c3RhbmNlLm1tCkBAIC0yMDUsNyArMjA1LDcgQEAgcHJpdmF0ZToKICAgICB9CiB9OwogCi1jb25z
dCBDbGFzc0luZm8gT2JqQ1J1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lTWV0
aG9kIiwgJlJ1bnRpbWVNZXRob2Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShPYmpDUnVudGltZU1ldGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmpDUnVu
dGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVNZXRob2QiX3MsICZSdW50aW1lTWV0
aG9kOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1
bnRpbWVNZXRob2QpIH07CiAKIEpTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmdldE1ldGhvZChK
U0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3BlcnR5
TmFtZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVu
dGltZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQppbmRl
eCBiNDZjNTZmZDAxMDUwODY5NTdkY2UzMmRkNWY2NjY1NjljNGNhNmQzLi4xNWNiNmEwOGU1YzM1
YzE3MjJjZGQzN2NhMzhhYzVjYTk0NGZhMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29i
amMvb2JqY19ydW50aW1lLm1tCkBAIC0yMTUsNyArMjE1LDcgQEAgdW5zaWduZWQgaW50IE9iamNB
cnJheTo6Z2V0TGVuZ3RoKCkgY29uc3QKICAgICByZXR1cm4gW19hcnJheSBjb3VudF07CiB9CiAK
LWNvbnN0IENsYXNzSW5mbyBPYmpjRmFsbGJhY2tPYmplY3RJbXA6OnNfaW5mbyA9IHsgIk9iamNG
YWxsYmFja09iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoT2JqY0ZhbGxiYWNrT2JqZWN0SW1wKSB9OworY29uc3QgQ2xhc3NJbmZvIE9i
amNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Il9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamNG
YWxsYmFja09iamVjdEltcCkgfTsKIAogT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpPYmpjRmFsbGJh
Y2tPYmplY3RJbXAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIE9iamNJbnN0YW5jZSogaSwgY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiAgICAg
OiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAppbmRleCBhOWVhNjQyOGM1ZDExN2Y2
ZmUyOGJkMGNjMTEyNDgzMjQxNmYxOWM1Li5jMDVlM2E0MGU4MDU2NjVkYzBmZGVkMDJjMzA1MThl
ZDk2Mjg2MGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJh
eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCkBAIC0z
Nyw3ICszNyw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShS
dW50aW1lQXJyYXkpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7
ICJSdW50aW1lQXJyYXkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VT
VE9NX0dFVFRFUihhcnJheUxlbmd0aEdldHRlcik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVu
dGltZV9tZXRob2QuY3BwCmluZGV4IDY1OGY3M2NhZThhOTEwZDAwZmNjNWRjNjIwZTIzNzIxYzNi
Nzk2ZDAuLmUxOGVjMmM4OGUxODcwZjlkNmU4ZTM2NDgxZDE3ZTVlOWRlMDFjMzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogdXNpbmcgbmFtZXNwYWNlIEJpbmRpbmdzOwogCi1XRUJDT1JFX0VYUE9S
VCBjb25zdCBDbGFzc0luZm8gUnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiUnVudGltZU1ldGhv
ZCIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoUnVudGltZU1ldGhvZCkgfTsKK1dFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNz
SW5mbyBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1lTWV0aG9kIl9zLCAmSW50ZXJu
YWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFJ1bnRpbWVNZXRob2QpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNh
bGxSdW50aW1lTWV0aG9kKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKG1ldGhv
ZExlbmd0aEdldHRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGlt
ZV9vYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcApp
bmRleCA5ZDNmM2M1YzY5MDQ3YjJlNDAwZmMyNzJiNWE3N2U4ZWQzMzJiOWI3Li5iMjRmMmFlZjE5
NGJhZDI1YjNhNjFlYjg4ZTc0MTQ3ZGNlOTMxMGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9y
dW50aW1lX29iamVjdC5jcHAKQEAgLTM2LDcgKzM2LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNv
cmU7CiBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLVdFQkNPUkVfRVhQ
T1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJSdW50aW1lT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShSdW50aW1lT2JqZWN0KSB9OworV0VCQ09SRV9FWFBPUlQgY29uc3QgQ2xhc3NJbmZvIFJ1bnRp
bWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU9iamVjdCkgfTsKIAog
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29udmVydFJ1bnRpbWVPYmplY3RUb1By
aW1pdGl2ZSk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsUnVudGltZU9i
amVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9DdXN0b21QYWludEltYWdlLmNwcAppbmRleCBmNGI5
OGJhNjJlMTE5YTA3NzEzMTJkM2I4OGM0OTE5MzY4MzZlZTM3Li5hYmQyZDc1NDIzMDI5Mjg0MzIx
NTQ5NDQwMTM1YjgwMDY2YjRiNTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1
c3RvbVBhaW50SW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJ
bWFnZS5jcHAKQEAgLTE1Niw3ICsxNTYsNyBAQCBJbWFnZURyYXdSZXN1bHQgQ3VzdG9tUGFpbnRJ
bWFnZTo6ZG9DdXN0b21QYWludChHcmFwaGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBjbwogCiAg
ICAgYXV0byYgbGV4aWNhbEdsb2JhbE9iamVjdCA9IGdsb2JhbE9iamVjdDsKICAgICBKU0M6OkFy
Z0xpc3Qgbm9BcmdzOwotICAgIEpTQzo6SlNWYWx1ZSB0aGlzT2JqZWN0ID0geyBKU0M6OmNvbnN0
cnVjdCgmbGV4aWNhbEdsb2JhbE9iamVjdCwgcGFpbnRDb25zdHJ1Y3Rvciwgbm9BcmdzLCAiRmFp
bGVkIHRvIGNvbnN0cnVjdCBwYWludCBjbGFzcyIpIH07CisgICAgSlNDOjpKU1ZhbHVlIHRoaXNP
YmplY3QgPSB7IEpTQzo6Y29uc3RydWN0KCZsZXhpY2FsR2xvYmFsT2JqZWN0LCBwYWludENvbnN0
cnVjdG9yLCBub0FyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0IHBhaW50IGNsYXNzIl9zKSB9Owog
CiAgICAgaWYgKFVOTElLRUxZKHNjb3BlLmV4Y2VwdGlvbigpKSkgewogICAgICAgICByZXBvcnRF
eGNlcHRpb24oJmxleGljYWxHbG9iYWxPYmplY3QsIHNjb3BlLmV4Y2VwdGlvbigpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455574</attachid>
            <date>2022-03-23 16:04:23 -0700</date>
            <delta_ts>2022-03-23 20:41:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238264-20220323160422.patch</filename>
            <type>text/plain</type>
            <size>666813</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxNzcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
ZWZmMTExNjRkMDM0MTdkYTVhMzYyYjM0ZWQ4MjNlZmExZGE1MDA5Li41OThlMWZlMGU4MjFjYjU1
NDEwMGYxZjYyOGY3NzY3NzBiMTMwZmNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0ODQgQEAKKzIwMjItMDMtMjMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMzgyNjQKKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJlbi4K
KworICAgICAgICBQcmVwYXJlIEpTQyBmb3IgbWFraW5nIHRoZSBTdHJpbmcoY29uc3QgY2hhciop
IGNvbnN0cnVjdG9yIGV4cGxpY2l0LiBNYWtpbmcgdGhpcyBjb25zdHJ1Y3RvcgorICAgICAgICBl
eHBsaWNpdCBoZWxwcyBjYXRjaCBtYW55IGluc3RhbmNlcyB3aGVyZSB3ZSdyZSBjb25zdHJ1Y3Rp
bmcgYSBTdHJpbmcgZnJvbSBhIGxpdGVyYWwgYnV0IHdlCisgICAgICAgIGFyZSBtaXNzaW5nIHRo
ZSAiIl9zIHN1ZmZpeC4KKworICAgICAgICAqIEFQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHA6Cisg
ICAgICAgICogQVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tOgorICAgICAgICAoSlNDOjpjb21wdXRl
VmFsaWRJbXBvcnRTcGVjaWZpZXIpOgorICAgICAgICAoSlNDOjpKU0FQSUdsb2JhbE9iamVjdDo6
bW9kdWxlTG9hZGVyRmV0Y2gpOgorICAgICAgICAqIEFQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHA6
CisgICAgICAgICogQVBJL0pTQVBJV3JhcHBlck9iamVjdC5tbToKKyAgICAgICAgKiBBUEkvSlND
YWxsYmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja0Z1bmN0aW9u
LmNwcDoKKyAgICAgICAgKiBBUEkvSlNDYWxsYmFja09iamVjdC5jcHA6CisgICAgICAgICogQVBJ
L0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFja09i
amVjdDxQYXJlbnQ+OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIEFQSS9KU1Njcmlw
dC5tbToKKyAgICAgICAgKC1bSlNTY3JpcHQgcmVhZENhY2hlXSk6CisgICAgICAgICogQVBJL0pT
VHlwZWRBcnJheS5jcHA6CisgICAgICAgIChKU09iamVjdE1ha2VUeXBlZEFycmF5V2l0aEFycmF5
QnVmZmVyKToKKyAgICAgICAgKEpTT2JqZWN0TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXJB
bmRPZmZzZXQpOgorICAgICAgICAqIEFQSS9KU1ZhbHVlLm1tOgorICAgICAgICAoY3JlYXRlU3Ry
dWN0SGFuZGxlck1hcCk6CisgICAgICAgIChoYW5kZXJGb3JTdHJ1Y3RUYWcpOgorICAgICAgICAq
IEFQSS9KU1dyYXBwZXJNYXAubW06CisgICAgICAgIChhbGxvY2F0ZUNvbnN0cnVjdG9yRm9yQ3Vz
dG9tQ2xhc3MpOgorICAgICAgICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAgICAg
ICAgKEpTQzo6T2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKToKKyAgICAgICAgKiBBUEkv
Z2xpYi9KU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pT
QVBJV3JhcHBlck9iamVjdEdMaWIuY3BwOgorICAgICAgICAqIEFQSS9nbGliL0pTQ0NhbGxiYWNr
RnVuY3Rpb24uY3BwOgorICAgICAgICAqIEFQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcDoKKyAg
ICAgICAgKHRlc3RKU09OUGFyc2UpOgorICAgICAgICAqIGJpbmRpbmdzL1NjcmlwdEZ1bmN0aW9u
Q2FsbC5jcHA6CisgICAgICAgIChEZXByZWNhdGVkOjpTY3JpcHRDYWxsQXJndW1lbnRIYW5kbGVy
OjphcHBlbmRBcmd1bWVudCk6CisgICAgICAgICogYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcDoKKyAg
ICAgICAgKiBieXRlY29kZS9FdmFsQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9F
eGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9FeGl0S2lu
ZC5jcHA6CisgICAgICAgIChKU0M6OmV4aXRLaW5kVG9TdHJpbmcpOgorICAgICAgICAqIGJ5dGVj
b2RlL0V4aXRLaW5kLmg6CisgICAgICAgICogYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2suY3Bw
OgorICAgICAgICAqIGJ5dGVjb2RlL01vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAg
ICAqIGJ5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1Vu
bGlua2VkQ29kZUJsb2NrLmNwcDoKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZEV2YWxDb2Rl
QmxvY2suY3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxvY2su
Y3BwOgorICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlLmNwcDoK
KyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwOgor
ICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHA6CisgICAgICAg
ICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKEpTQzo6Qnl0ZWNv
ZGVHZW5lcmF0b3I6OmVtaXRIYXNQcml2YXRlQnJhbmQpOgorICAgICAgICAoSlNDOjpCeXRlY29k
ZUdlbmVyYXRvcjo6ZW1pdENoZWNrUHJpdmF0ZUJyYW5kKToKKyAgICAgICAgKEpTQzo6Qnl0ZWNv
ZGVHZW5lcmF0b3I6OmVtaXRSZXR1cm4pOgorICAgICAgICAqIGJ5dGVjb21waWxlci9Ob2Rlc0Nv
ZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpQcm9wZXJ0eUxpc3ROb2RlOjplbWl0U2F2ZUNvbXB1
dGVkRmllbGROYW1lKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRHZXRQcm9wZXJ0
eVZhbHVlKToKKyAgICAgICAgKEpTQzo6QmFzZURvdE5vZGU6OmVtaXRQdXRQcm9wZXJ0eSk6Cisg
ICAgICAgIChKU0M6OlBvc3RmaXhOb2RlOjplbWl0RG90KToKKyAgICAgICAgKEpTQzo6RGVsZXRl
QnJhY2tldE5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OkRlbGV0ZURvdE5vZGU6
OmVtaXRCeXRlY29kZSk6CisgICAgICAgIChKU0M6OlByZWZpeE5vZGU6OmVtaXREb3QpOgorICAg
ICAgICAoSlNDOjpJbnN0YW5jZU9mTm9kZTo6ZW1pdEJ5dGVjb2RlKToKKyAgICAgICAgKiBkZWJ1
Z2dlci9EZWJ1Z2dlckNhbGxGcmFtZS5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyQ2FsbEZy
YW1lOjpmdW5jdGlvbk5hbWUgY29uc3QpOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyU2Nv
cGUuY3BwOgorICAgICAgICAqIGhlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHA6CisgICAgICAg
IChKU0M6OkhlYXBTbmFwc2hvdEJ1aWxkZXI6Ompzb24pOgorICAgICAgICAqIGhlYXAvUm9vdE1h
cmtSZWFzb24uY3BwOgorICAgICAgICAoSlNDOjpyb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKToK
KyAgICAgICAgKiBoZWFwL1Jvb3RNYXJrUmVhc29uLmg6CisgICAgICAgICogaW5zcGVjdG9yL0pT
R2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6
OkpTR2xvYmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlcjo6YXBwZW5kQVBJQmFja3RyYWNlKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwOgorICAgICAgICAo
SW5zcGVjdG9yOjpKU0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwOgorICAgICAgICAq
IGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHA6CisgICAgICAgIChJbnNw
ZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQ6OnJ1bik6CisgICAgICAgICogaW5zcGVjdG9yL2Fn
ZW50cy9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoKKyAgICAgICAgKEluc3BlY3Rvcjo6SW5z
cGVjdG9yRGVidWdnZXJBZ2VudDo6Z2V0U2NyaXB0U291cmNlKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHA6CisgICAgICAgIChJbnNwZWN0b3I6Okluc3Bl
Y3RvckhlYXBBZ2VudDo6Z2V0UmVtb3RlT2JqZWN0KToKKyAgICAgICAgKiBqaXQvRXhlY3V0YWJs
ZUFsbG9jYXRvci5jcHA6CisgICAgICAgIChKU0M6OmR1bXBKSVRNZW1vcnkpOgorICAgICAgICAq
IGppdC9KSVRDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6SklUQ29kZTo6dHlwZU5hbWUpOgorICAg
ICAgICAqIGppdC9KSVRDb2RlLmg6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3BwOgor
ICAgICAgICAoSlNDOjpnZXRXcmFwcGVkVmFsdWUpOgorICAgICAgICAqIGpzYy5jcHA6CisgICAg
ICAgICh0b0NTdHJpbmcpOgorICAgICAgICAoSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAg
ICAgICAgKHJ1bldpdGhPcHRpb25zKToKKyAgICAgICAgKENvbW1hbmRMaW5lOjpwYXJzZUFyZ3Vt
ZW50cyk6CisgICAgICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAoSlND
OjpMTEludDo6aGFuZGxlVmFyYXJnc0NoZWNrcG9pbnQpOgorICAgICAgICAqIHBhcnNlci9MZXhl
ci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpzY2FuUmVnRXhwKToKKyAgICAgICAgKiBw
YXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBhcnNl
UHJpbWFyeUV4cHJlc3Npb24pOgorICAgICAgICAqIHJ1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNv
cmQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6
CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlQ
cm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9Bc3luY0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAg
ICAgKiBydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0FzeW5jSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXRvbWlj
c09iamVjdC5jcHA6CisgICAgICAgICogcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9CaWdJbnRPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQmln
SW50UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQnl0ZWNvZGVDYWNo
ZUVycm9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFyZEVy
cm9yOjptZXNzYWdlIGNvbnN0KToKKyAgICAgICAgKiBydW50aW1lL0NhbGxEYXRhLmNwcDoKKyAg
ICAgICAgKEpTQzo6Y2FsbCk6CisgICAgICAgICogcnVudGltZS9DYWxsRGF0YS5oOgorICAgICAg
ICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAgICogcnVudGltZS9DbG9uZWRBcmd1bWVu
dHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hlLmNwcDoKKyAgICAgICAgKEpTQzo6
Q29kZUNhY2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZSk6CisgICAgICAg
ICogcnVudGltZS9Db21wbGV0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6Y2hlY2tNb2R1bGVTeW50
YXgpOgorICAgICAgICAoSlNDOjpjcmVhdGVTeW1ib2xGb3JFbnRyeVBvaW50TW9kdWxlKToKKyAg
ICAgICAgKiBydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQ29u
c3RydWN0RGF0YS5jcHA6CisgICAgICAgIChKU0M6OmNvbnN0cnVjdCk6CisgICAgICAgICogcnVu
dGltZS9Db25zdHJ1Y3REYXRhLmg6CisgICAgICAgICogcnVudGltZS9DdXN0b21HZXR0ZXJTZXR0
ZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHA6
CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICogcnVu
dGltZS9EaXJlY3RBcmd1bWVudHMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoKKyAg
ICAgICAgKEpTQzo6dGhyb3dWTUVycm9yKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9FdmFsRXhl
Y3V0YWJsZS5jcHA6CisgICAgICAgICogcnVudGltZS9FeGNlcHRpb24uY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHA6CisgICAgICAgIChKU0M6Om5vdEFGdW5jdGlv
blNvdXJjZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFBhcmFtZXRlckluU291cmNl
QXBwZW5kZXIpOgorICAgICAgICAoSlNDOjppbnZhbGlkUGFyYW1ldGVySW5zdGFuY2VvZlNvdXJj
ZUFwcGVuZGVyKToKKyAgICAgICAgKEpTQzo6aW52YWxpZFByb3RvdHlwZVNvdXJjZUFwcGVuZGVy
KToKKyAgICAgICAgKEpTQzo6Y3JlYXRlVERaRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVJ
bnZhbGlkUHJpdmF0ZU5hbWVFcnJvcik6CisgICAgICAgIChKU0M6OmNyZWF0ZVJlZGVmaW5lZFBy
aXZhdGVOYW1lRXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVQcml2YXRlTWV0aG9kQWNjZXNz
RXJyb3IpOgorICAgICAgICAoSlNDOjpjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJyb3Ip
OgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGlt
ZS9GaW5hbGl6YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9G
dW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uRXhlY3V0
YWJsZS5jcHA6CisgICAgICAgIChKU0M6OkZ1bmN0aW9uRXhlY3V0YWJsZTo6dG9TdHJpbmdTbG93
KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2VuZXJhdG9y
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JGdW5j
dGlvblByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvR2V0dGVyU2V0dGVyLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0dsb2JhbEV4ZWN1dGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSGFzaE1hcEltcGwu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHA6CisgICAgICAgICog
cnVudGltZS9JbnRsQ29sbGF0b3IuY3BwOgorICAgICAgICAoSlNDOjpJbnRsQ29sbGF0b3I6Omlu
aXRpYWxpemVDb2xsYXRvcik6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JDb25zdHJ1
Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6
SW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQpOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L0ludGxEaXNwbGF5TmFtZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bERpc3BsYXlOYW1l
c0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90
b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSW50bExpc3RGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVu
dGltZS9JbnRsTGlzdEZvcm1hdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRs
TG9jYWxlLmNwcDoKKyAgICAgICAgKEpTQzo6SW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2FsZSk6
CisgICAgICAgICogcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRs
TnVtYmVyRm9ybWF0LmNwcDoKKyAgICAgICAgKEpTQzo6SW50bE51bWJlckZvcm1hdDo6aW5pdGlh
bGl6ZU51bWJlckZvcm1hdCk6CisgICAgICAgICogcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0Q29u
c3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bE51bWJlckZvcm1hdFByb3RvdHlw
ZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6
aW50bFN0cmluZ09wdGlvbik6CisgICAgICAgICogcnVudGltZS9JbnRsT2JqZWN0Lmg6CisgICAg
ICAgICogcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50
bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFBsdXJh
bFJ1bGVzUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRpbWVG
b3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Ojppbml0aWFs
aXplUmVsYXRpdmVUaW1lRm9ybWF0KToKKyAgICAgICAgKiBydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsUmVsYXRpdmVU
aW1lRm9ybWF0UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50SXRl
cmF0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlw
ZS5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0ludGxTZWdtZW50ZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9J
bnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50
cy5jcHA6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
SlNBcnJheS5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXk6OnRyeUNyZWF0ZVVuaW5pdGlhbGl6
ZWRSZXN0cmljdGVkKToKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQXJyYXlCdWZmZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNB
cnJheUJ1ZmZlclZpZXcuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQXN5bmNHZW5l
cmF0b3JGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0JpZ0ludC5jcHA6CisgICAg
ICAgIChKU0M6OkpTQmlnSW50OjpwYXJzZUludCk6CisgICAgICAgICogcnVudGltZS9KU0JvdW5k
RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDYWxsZWUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDZWxsOjpkdW1wVG9TdHJlYW0p
OgorICAgICAgICAoSlNDOjpKU0NlbGw6OmNsYXNzTmFtZSBjb25zdCk6CisgICAgICAgICogcnVu
dGltZS9KU0NlbGwuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQ3VzdG9tR2V0dGVyRnVuY3Rpb24u
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlvbi5jcHA6CisgICAg
ICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0YVZp
ZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5FX0NVU1RPTV9HRVRURVIp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHA6CisgICAgICAg
IChKU0M6OkpTRmluYWxpemF0aW9uUmVnaXN0cnk6OnJ1bkZpbmFsaXphdGlvbkNsZWFudXApOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dl
bmVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oOgorICAg
ICAgICAoSlNDOjpKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPjo6Y3JlYXRlKToKKyAg
ICAgICAgKEpTQzo6SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRlUmFu
Z2UpOgorICAgICAgICAqIHJ1bnRpbWUvSlNHZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVG
dW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6c3BlY2llc0NvbnN0cnVjdCk6CisgICAgICAgIChK
U0M6OmdlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvRnVuY1NldCk6CisgICAgICAgIChKU0M6Omdl
bmVyaWNUeXBlZEFycmF5Vmlld1ByaXZhdGVGdW5jU3ViYXJyYXlDcmVhdGUpOgorICAgICAgICAq
IHJ1bnRpbWUvSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbW11dGFibGVCdXR0
ZXJmbHkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2UuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHA6CisgICAgICAgICogcnVudGltZS9KU01hcC5j
cHA6CisgICAgICAgICogcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVM
b2FkZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU09OT2JqZWN0
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6SlNP
YmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNpdE91dE9mTGluZVByb3BlcnRpZXMpOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHA6
CisgICAgICAgICogcnVudGltZS9KU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNQcm94eS5jcHA6CisgICAgICAgICogcnVudGltZS9KU1JlbW90ZUZ1bmN0
aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6d3JhcEFyZ3VtZW50KToKKyAgICAgICAgKEpTQzo6d3Jh
cFJldHVyblZhbHVlKToKKyAgICAgICAgKEpTQzo6SlNSZW1vdGVGdW5jdGlvbjo6ZmluaXNoQ3Jl
YXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTY29wZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Njcmlw
dEZldGNoZXIuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVj
dC5jcHA6CisgICAgICAgICogcnVudGltZS9KU1NldC5jcHA6CisgICAgICAgICogcnVudGltZS9K
U1NldEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTU291cmNlQ29kZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5nOjpk
dW1wVG9TdHJlYW0pOgorICAgICAgICAqIHJ1bnRpbWUvSlNTdHJpbmdJdGVyYXRvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50
aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pT
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJy
YXlQcm90b3R5cGVzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTVHlwZWRBcnJheVZpZXdDb25z
dHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBl
LmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAg
KiBydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXZWFrTWFw
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHA6CisgICAgICAgICog
cnVudGltZS9KU1dlYWtTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNXaXRoU2NvcGUuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvTGl0ZXJhbFBhcnNlci5jcHA6CisgICAgICAgIChKU0M6Okxp
dGVyYWxQYXJzZXI8Q2hhclR5cGU+OjpwYXJzZVByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKiBy
dW50aW1lL01hcENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJhdG9y
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hcFByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9NYXRoT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL01vZHVsZVBy
b2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXhlY3V0YWJsZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TnVsbFNldHRlckZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6CisgICAgICAgICog
cnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp0b1N0cmluZ1dpdGhS
YWRpeCk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAg
IChKU0M6Om51bWJlclRvU3RyaW5nSW50ZXJuYWwpOgorICAgICAgICAoSlNDOjppbnQ1MlRvU3Ry
aW5nKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9PcGVyYXRp
b25zLmg6CisgICAgICAgIChKU0M6OmFyaXRobWV0aWNCaW5hcnlPcCk6CisgICAgICAgIChKU0M6
OnNoaWZ0KToKKyAgICAgICAgKEpTQzo6Yml0d2lzZUJpbmFyeU9wKToKKyAgICAgICAgKiBydW50
aW1lL1Byb2dyYW1FeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5VGFi
bGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUHJveHlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OlByb3h5Q29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBydW50
aW1lL1Byb3h5T2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Byb3h5UmV2b2tlLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL1JlZmxlY3RPYmplY3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
UmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENhY2hlLmNwcDoKKyAgICAgICAg
KEpTQzo6UmVnRXhwQ2FjaGU6OmVuc3VyZUVtcHR5UmVnRXhwU2xvdyk6CisgICAgICAgICogcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9SZWdFeHBPYmpl
Y3QuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4
cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1Njb3BlZEFy
Z3VtZW50cy5jcHA6CisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5jcHA6
CisgICAgICAgICogcnVudGltZS9TY3JpcHRFeGVjdXRhYmxlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldEl0ZXJhdG9yUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NldFByb3RvdHlwZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L1NoYWRvd1JlYWxtT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NoYWRvd1JlYWxtUHJv
dG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24uY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nSXRl
cmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoK
KyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6OnRv
TG9jYWxlQ2FzZSk6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6Cisg
ICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0
dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3BwOgor
ICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbENv
bnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N5bWJvbE9iamVjdC5jcHA6CisgICAg
ICAgICogcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3lt
Ym9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9UZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcDoKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxEdXJhdGlv
bjo6dG90YWwgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGUu
Y3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxJbnN0YW50LmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1l
L1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3Jh
bE5vdy5jcHA6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6CisgICAgICAg
IChKU0M6OnRlbXBvcmFsTGFyZ2VzdFVuaXQpOgorICAgICAgICAoSlNDOjp0ZW1wb3JhbFNtYWxs
ZXN0VW5pdCk6CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHA6CisgICAg
ICAgICogcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsUGxh
aW5UaW1lQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxQbGFpblRp
bWVQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5jcHA6
CisgICAgICAgICogcnVudGltZS9UZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZS5jcHA6CisgICAgICAgICog
cnVudGltZS9UeXBlUHJvZmlsZXIuY3BwOgorICAgICAgICAoSlNDOjpUeXBlUHJvZmlsZXI6Omxv
Z1R5cGVzRm9yVHlwZUxvY2F0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1R5cGVTZXQuY3BwOgor
ICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKToKKyAgICAgICAgKiBy
dW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9XZWFrTWFw
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6V2Vha01hcFByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL1dlYWtPYmplY3RSZWZQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1dlYWtT
ZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpXZWFrU2V0UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbik6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6CisgICAgICAgICogdG9vbHMvRnVu
Y3Rpb25BbGxvd2xpc3QuY3BwOgorICAgICAgICAoSlNDOjpGdW5jdGlvbkFsbG93bGlzdDo6RnVu
Y3Rpb25BbGxvd2xpc3QpOgorICAgICAgICAqIHRvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcDoK
KyAgICAgICAgKEpTQzo6aW5pdGlhbGl6ZU92ZXJyaWRlSW5mbyk6CisgICAgICAgICogdG9vbHMv
SlNEb2xsYXJWTS5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6
CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVURVMp
OgorICAgICAgICAqIHRvb2xzL1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwOgorICAgICAgICAoSlND
OjpTaWdpbGxDcmFzaEFuYWx5emVyOjphbmFseXplKToKKyAgICAgICAgKiB0b29scy9WTUluc3Bl
Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OlZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKToKKyAg
ICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmR1bXBDZWxsTWVtb3J5VG9TdHJlYW0pOgorICAgICAg
ICAqIHdhc20vV2FzbUV4Y2VwdGlvblR5cGUuaDoKKyAgICAgICAgKEpTQzo6V2FzbTo6ZXJyb3JN
ZXNzYWdlRm9yRXhjZXB0aW9uVHlwZSk6CisgICAgICAgICogd2FzbS9XYXNtRm9ybWF0Lmg6Cisg
ICAgICAgIChKU0M6Oldhc206OnR5cGVUb1N0cmluZyk6CisgICAgICAgICogd2FzbS9XYXNtR2xv
YmFsLmNwcDoKKyAgICAgICAgKEpTQzo6V2FzbTo6R2xvYmFsOjpzZXQpOgorICAgICAgICAqIHdh
c20vV2FzbUxMSW50UGxhbi5jcHA6CisgICAgICAgIChKU0M6Oldhc206OkxMSW50UGxhbjo6ZGlk
Q29tcGxldGVDb21waWxhdGlvbik6CisgICAgICAgICogd2FzbS9XYXNtT3BlcmF0aW9ucy5jcHA6
CisgICAgICAgIChKU0M6Oldhc206OkpTQ19ERUZJTkVfSklUX09QRVJBVElPTik6CisgICAgICAg
ICogd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2Vi
QXNzZW1ibHkuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlvbi5j
cHA6CisgICAgICAgICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5R2xvYmFsLmNwcDoKKyAgICAgICAg
KEpTQzo6SlNXZWJBc3NlbWJseUdsb2JhbDo6dHlwZSk6CisgICAgICAgICogd2FzbS9qcy9KU1dl
YkFzc2VtYmx5SGVscGVycy5oOgorICAgICAgICAoSlNDOjpmcm9tSlNWYWx1ZSk6CisgICAgICAg
ICogd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwOgorICAgICAgICAoSlNDOjpKU1dl
YkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkpOgorICAgICAgICAoSlND
OjpKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OnRyeUNyZWF0ZSk6CisgICAgICAgICogd2FzbS9qcy9K
U1dlYkFzc2VtYmx5TWVtb3J5LmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL0pTV2ViQXNzZW1ibHlN
b2R1bGUuY3BwOgorICAgICAgICAqIHdhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcDoKKyAg
ICAgICAgKEpTQzo6SlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKToKKyAgICAgICAgKiB3YXNtL2pz
L0pTV2ViQXNzZW1ibHlUYWcuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlDb21w
aWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUNv
bXBpbGVFcnJvclByb3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUV4
Y2VwdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZV
TkNUSU9OKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBl
LmNwcDoKKyAgICAgICAgKEpTQzo6SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKToKKyAgICAgICAg
KiB3YXNtL2pzL1dlYkFzc2VtYmx5RnVuY3Rpb24uY3BwOgorICAgICAgICAqIHdhc20vanMvV2Vi
QXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlH
bG9iYWxDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTik6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHA6
CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHA6CisgICAg
ICAgICogd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcDoKKyAgICAgICAg
KiB3YXNtL2pzL1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
OjpKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04pOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1i
bHlNZW1vcnlQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlNb2R1
bGVDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVBy
b3RvdHlwZS5jcHA6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVsZVJlY29yZC5j
cHA6CisgICAgICAgIChKU0M6OldlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjppbml0aWFsaXplRXhw
b3J0cyk6CisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90
eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5j
cHA6CisgICAgICAgIChKU0M6OkpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTik6CisgICAgICAgICog
d2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiB3YXNtL2pz
L1dlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNz
ZW1ibHlUYWdQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHdhc20vanMvV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlv
bjo6Y3JlYXRlKToKKyAgICAgICAgKiB5YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAgICAg
ICAgKEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOgorICAg
ICAgICAqIHlhcnIvWWFyckVycm9yQ29kZS5jcHA6CisgICAgICAgIChKU0M6OllhcnI6OmVycm9y
TWVzc2FnZSk6CisgICAgICAgICogeWFyci9ZYXJyRXJyb3JDb2RlLmg6CisKIDIwMjItMDMtMjMg
IFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXVtNU1ZD
XSBjdXN0b20gZ2V0dGVyIGNyZWF0aW9uIG5lZWRzIHRvIGluY2x1ZGUgY2xhc3NJbmZvIHNpbmNl
IE1TVkMgSUNGIGlzIG5vdCAic2FmZSIgdmFyaWFudApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBmODczNjIzNjIyYTBjMDdlMWFm
MmU1ODk0Njk5NTJkMDBiZGQ2NTJkLi5hMDE1MWE0ZTYwMzlhZDNkZjExZjY5OThhMjU3NjU2NTky
MTNhYjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RG
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJlcGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3Ry
aW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBleHBsaWNpdAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgR2VvZmYgR2FyZW4uCisKKyAgICAgICAgKiB3dGYvUmVzb3VyY2VVc2FnZS5oOgorICAgICAg
ICAqIHd0Zi9jb2NvYS9SZXNvdXJjZVVzYWdlQ29jb2EuY3BwOgorICAgICAgICAoV1RGOjpkaXNw
bGF5TmFtZUZvclZNVGFnKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuY3BwOgorICAg
ICAgICAoV1RGOjpTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24pOgorICAgICAg
ICAoV1RGOjpTdHJpbmc6Om51bWJlcik6CisgICAgICAgIChXVEY6OlN0cmluZzo6bnVtYmVyVG9T
dHJpbmdGaXhlZFdpZHRoKToKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuaDoKKwogMjAy
Mi0wMy0yMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAg
ICAgICAgIEltcGxlbWVudCBQQ00gdG8gU0tBZE5ldHdvcmsgYnJpZGdlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NWJjNDAxNTAzMWMyMTcxMDk2ZTZjNGM5ODQzNTZhYjA1NjczYWE2ZC4uOWQ4N2Y0OTMwMmZiZmFi
YWFhMjQ4YmZkYjY1YjIxYzQ2Nzk2N2YzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisy
MDIyLTAzLTIzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgUHJl
cGFyZSBKU0MgZm9yIG1ha2luZyB0aGUgU3RyaW5nKGNvbnN0IGNoYXIqKSBjb25zdHJ1Y3RvciBl
eHBsaWNpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjM4MjY0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmYgR2FyZW4uCisKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMv
SlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1By
b3BlcnRpZXMuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6
YXRpb25HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTUmVtb3RlRE9N
V2luZG93QmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTaGFkb3dSZWFsbUdsb2Jh
bFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNXaW5kb3dQcm94eS5jcHA6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0
ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVj
dC5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tOgorICAgICAgICAo
SlNDOjpCaW5kaW5nczo6T2JqY0luc3RhbmNlOjpnZXRNZXRob2QpOgorICAgICAgICAqIGJyaWRn
ZS9vYmpjL29iamNfcnVudGltZS5tbToKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9hcnJheS5j
cHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcDoKKyAgICAgICAgKiBicmlk
Z2UvcnVudGltZV9vYmplY3QuY3BwOgorCiAyMDIyLTAzLTIzICBTYWlkIEFib3UtSGFsbGF3YSAg
PHNhaWRAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFUgUHJvY2Vzc10gRW5zdXJlIERpc3BsYXlM
aXN0OjpSZWNvcmRlciBhbmQgaXRzIGJhc2UgY2xhc3MgYXJlIGluaXRpYWxpemVkIHdpdGggdGhl
IHNhbWUgR3JhcGhpY3NDb250ZXh0U3RhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0FQSUdsb2JhbE9iamVjdC5jcHAKaW5kZXggM2RjZWE2Y2EyNmUyOGJkZTM4ZjRiNjkzOTQ2
ZWUyOTIwMzA3YTRkYi4uMTI1YmM5OWExZDUyZjU5OGI2ZmRkOWQ2ZDgzMGM1OGQ0OTc5MWY2NyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5jcHAK
QEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSUdsb2JhbE9iamVj
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xv
YmFsT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0KSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSBKU0FQSUdsb2JhbE9iamVjdDo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsK
ICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3QubW0gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
QVBJL0pTQVBJR2xvYmFsT2JqZWN0Lm1tCmluZGV4IGIzZTJhZTQ0MWM0ZWM1MjM0MmFmZTlkNTQ5
ZTRhZTYyMzhjZTM0NWYuLmUwNTVhZjI5NDNlMGYzYmU5NzczNzdiNmVkOTliNDQyNjEzOGU2MGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElHbG9iYWxPYmplY3Qu
bW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSUdsb2JhbE9iamVjdC5tbQpA
QCAtNTAsNyArNTAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
QVBJR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQVBJR2xvYmFsT2JqZWN0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQVBJR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9i
YWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBUElHbG9iYWxPYmplY3QpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhv
ZFRhYmxlIEpTQVBJR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0gewog
ICAgICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgRXhw
ZWN0ZWQ8VVJMLCBTdHJpbmc+IGNvbXB1dGVWYWxpZEltcG9ydFNwZWNpZmllcihjb25zdCBVUkwm
IGJhc2UsIGNvbnN0CiAgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZChtYWtlU3RyaW5nKCJN
b2R1bGUgc3BlY2lmaWVyOiAiX3MsIHNwZWNpZmllciwgIiBkb2VzIG5vdCBzdGFydCB3aXRoIFwi
L1wiLCBcIi4vXCIsIG9yIFwiLi4vXCIuIFJlZmVyZW5jZWQgZnJvbTogIl9zLCBiYXNlLnN0cmlu
ZygpKSk7CiAKICAgICBpZiAoc3BlY2lmaWVyLnN0YXJ0c1dpdGgoJy8nKSkgewotICAgICAgICBh
YnNvbHV0ZVVSTCA9IFVSTChVUkwoeyB9LCAiZmlsZTovLyIpLCBzcGVjaWZpZXIpOworICAgICAg
ICBhYnNvbHV0ZVVSTCA9IFVSTChVUkwoImZpbGU6Ly8iX3MpLCBzcGVjaWZpZXIpOwogICAgICAg
ICBpZiAoYWJzb2x1dGVVUkwuaXNWYWxpZCgpKQogICAgICAgICAgICAgcmV0dXJuIGFic29sdXRl
VVJMOwogICAgIH0KQEAgLTE3NywxMiArMTc3LDEyIEBAIEpTSW50ZXJuYWxQcm9taXNlKiBKU0FQ
SUdsb2JhbE9iamVjdDo6bW9kdWxlTG9hZGVyRmV0Y2goSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
CiAKICAgICBpZiAoVU5MSUtFTFkoIVtjb250ZXh0IG1vZHVsZUxvYWRlckRlbGVnYXRlXSkpIHsK
ICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICBwcm9taXNlLT5yZWplY3QoZ2xvYmFs
T2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJObyBtb2R1bGUgbG9hZGVyIHByb3Zp
ZGVkLiIpKTsKKyAgICAgICAgcHJvbWlzZS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY3JlYXRlRXJy
b3IoZ2xvYmFsT2JqZWN0LCAiTm8gbW9kdWxlIGxvYWRlciBwcm92aWRlZC4iX3MpKTsKICAgICAg
ICAgcmV0dXJuIHByb21pc2U7CiAgICAgfQogCiAgICAgYXV0byBzdHJvbmdQcm9taXNlID0gU3Ry
b25nPEpTSW50ZXJuYWxQcm9taXNlPih2bSwgcHJvbWlzZSk7Ci0gICAgYXV0byogcmVzb2x2ZSA9
IEpTTmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAxLCAicmVzb2x2
ZSIsIFs9XSAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJh
bWUpIHsKKyAgICBhdXRvKiByZXNvbHZlID0gSlNOYXRpdmVTdGRGdW5jdGlvbjo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIDEsICJyZXNvbHZlIl9zLCBbPV0gKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSB7CiAgICAgICAgIC8vIFRoaXMgY2FwdHVy
ZXMgdGhlIGdsb2JhbE9iamVjdCBidXQgdGhhdCdzIG9rIGJlY2F1c2Ugb3VyIHN0cnVjdHVyZSBr
ZWVwcyBpdCBhbGl2ZSBhbnl3YXkuCiAgICAgICAgIFZNJiB2bSA9IGdsb2JhbE9iamVjdC0+dm0o
KTsKICAgICAgICAgSlNDb250ZXh0ICpjb250ZXh0ID0gW0pTQ29udGV4dCBjb250ZXh0V2l0aEpT
R2xvYmFsQ29udGV4dFJlZjp0b0dsb2JhbFJlZihnbG9iYWxPYmplY3QpXTsKQEAgLTIxMyw3ICsy
MTMsNyBAQCBKU0ludGVybmFsUHJvbWlzZSogSlNBUElHbG9iYWxPYmplY3Q6Om1vZHVsZUxvYWRl
ckZldGNoKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICByZXR1cm4gZW5jb2RlZEpT
VW5kZWZpbmVkKCk7CiAgICAgfSk7CiAKLSAgICBhdXRvKiByZWplY3QgPSBKU05hdGl2ZVN0ZEZ1
bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgMSwgInJlamVjdCIsIFs9XSAoSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkgeworICAgIGF1dG8qIHJlamVjdCA9IEpT
TmF0aXZlU3RkRnVuY3Rpb246OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCAxLCAicmVqZWN0Il9z
LCBbPV0gKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpIHsKICAgICAgICAg
c3Ryb25nUHJvbWlzZS5nZXQoKS0+cmVqZWN0KGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5hcmd1
bWVudCgwKSk7CiAgICAgICAgIHJldHVybiBlbmNvZGVkSlNVbmRlZmluZWQoKTsKICAgICB9KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElWYWx1ZVdyYXBwZXIu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKaW5k
ZXggMjFhN2E5N2MwZWNlZGY5MDEyNTUzMDFlNzZjNzhjNGYyYjQ0NmQ3Yy4uMTc3OGI2MWQ2NzU1
YjlhNWI3NmE1NDA1NjYxNTgyMzk0YjRlZjYyYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0FQSS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKQEAgLTI4LDYgKzI4LDYgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0FQSVZh
bHVlV3JhcHBlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3JhcHBlcjo6c19pbmZv
ID0geyAiQVBJIFdyYXBwZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQVBJVmFsdWVXcmFwcGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQVBJVmFs
dWVXcmFwcGVyOjpzX2luZm8gPSB7ICJBUEkgV3JhcHBlciJfcywgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FQSVZhbHVlV3JhcHBlcikgfTsKIAogfSAv
LyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
QVBJV3JhcHBlck9iamVjdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFw
cGVyT2JqZWN0Lm1tCmluZGV4IDQ3NzNiMDc0NDg3MzQ4YTg3ZWZjODIxZDEyYjJhOTNjZTg2MTIx
OTUuLmZjODVlZDdiZGViNmY5ZjUwMjA3MWZmM2ZiOWY2M2RmMjdhODM5MmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0Lm1tCkBAIC03NSw3ICs3
NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHN0YXRpY0Z1bmN0aW9uR2V0
dGVySlNBUElXcmFwcGVyT2JqZWN0Q2FsbGJhY2tPCiAKIERFRklORV9WSVNJVF9DSElMRFJFTl9X
SVRIX01PRElGSUVSKHRlbXBsYXRlPD4sIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyT2Jq
ZWN0Pik7CiAKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0PEpT
QVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFj
a09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD46OnNfaW5mbyA9IHsgIkpTQVBJV3JhcHBlck9iamVjdCJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Nh
bGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGUgPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0
PEpTQVBJV3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogCiB0ZW1wbGF0
ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29uc3Ry
dWN0b3IuY3BwCmluZGV4IDQ4Nzc3ODg5MzBlZTQyZmRhYjM1ODc1OWRiZjcxNDJmMDM2YTMzYmEu
LmJhMDU2NjVjOTg5YTg1NWQ1ZTk1ODIyZWM0OWZlMjBlOTM0MWY3M2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAKQEAgLTMz
LDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0NhbGxi
YWNrQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tD
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkNhbGxiYWNrQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9Owog
CiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3RvcihKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNDbGFzc1JlZiBqc0Ns
YXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJhY2spCiAgICAgOiBC
YXNlKGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU0NhbGxiYWNrRnVuY3Rpb24uY3BwCmluZGV4IDEyODY3MDljMDhjMmExY2Fh
MWQzYzM5Yjc5NjBjYzZiNzkxNzEzZGIuLmM5OTY1MDE5ZDJjMDI5NzU2NjZmNzJkOGVmODIzZGJm
ZGU3NDJiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tG
dW5jdGlvbi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19B
U1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pOwogCi1j
b25zdCBDbGFzc0luZm8gSlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8g
SlNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1bmN0aW9uIl9zLCAmSW50
ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oY2FsbEpTQ2FsbGJhY2tGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwCmluZGV4IDQ0NGMxNTAzNDUxZGQ5Nzk1MzBhMTg1
Y2RhMzg2ZWUxZDFjNjdiYjguLjE1ZGFmM2MyZmNjNDdlNTkyZjFkNjQyMTI2YWQ3ZmE4YjU3MjM4
Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVj
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmNw
cApAQCAtNDUsOCArNDUsOCBAQCBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0
ZW1wbGF0ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTTm9uRmluYWxPYmplYwogREVGSU5FX1ZJU0lU
X0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSlNDYWxsYmFja09iamVjdDxKU0ds
b2JhbE9iamVjdD4pOwogCiAvLyBEZWZpbmUgdGhlIHR3byB0eXBlcyBvZiBKU0NhbGxiYWNrT2Jq
ZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tP
YmplY3Q8SlNOb25GaW5hbE9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNrT2JqZWN0IiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxi
YWNrT2JqZWN0KSB9OwotdGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmpl
Y3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2JhbE9iamVjdCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxs
YmFja09iamVjdCkgfTsKK3RlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5mbyBKU0NhbGxiYWNrT2Jq
ZWN0PEpTTm9uRmluYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja09iamVjdCJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxi
YWNrT2JqZWN0KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmpl
Y3Q8SlNHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2JhbE9iamVjdCJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Nh
bGxiYWNrT2JqZWN0KSB9OwogdGVtcGxhdGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8
SlNOb25GaW5hbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogdGVtcGxhdGU8PiBj
b25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9iYWxPYmplY3Q+OjpuZWVkc0Rlc3RydWN0
aW9uID0gdHJ1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1Nj
cmlwdC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNTY3JpcHQubW0KaW5kZXggODUw
MzQ3YjdjZDcxMjYwYTBiZjY1OTA3NTBhOWE0NTBkYzMxMWMxYy4uNmIwMjA2ZTAzN2YzMjNjMzJm
OTkxMzQyMjFhZGFkYWIzNzVmYTBlMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1NjcmlwdC5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTU2NyaXB0
Lm1tCkBAIC0xNTQsOCArMTU0LDcgQEAgLSAodm9pZClyZWFkQ2FjaGUKICAgICBpZiAoIW1fY2Fj
aGVQYXRoKQogICAgICAgICByZXR1cm47CiAKLSAgICBOU1N0cmluZyAqY2FjaGVQYXRoU3RyaW5n
ID0gW21fY2FjaGVQYXRoIHBhdGhdOwotICAgIGNvbnN0IGNoYXIqIGNhY2hlRmlsZW5hbWUgPSBj
YWNoZVBhdGhTdHJpbmcuVVRGOFN0cmluZzsKKyAgICBTdHJpbmcgY2FjaGVGaWxlbmFtZSA9IFtt
X2NhY2hlUGF0aCBwYXRoXTsKIAogICAgIGF1dG8gZmQgPSBGaWxlU3lzdGVtOjpvcGVuQW5kTG9j
a0ZpbGUoY2FjaGVGaWxlbmFtZSwgRmlsZVN5c3RlbTo6RmlsZU9wZW5Nb2RlOjpSZWFkLCB7Rmls
ZVN5c3RlbTo6RmlsZUxvY2tNb2RlOjpFeGNsdXNpdmUsIEZpbGVTeXN0ZW06OkZpbGVMb2NrTW9k
ZTo6Tm9uYmxvY2tpbmd9KTsKICAgICBpZiAoIUZpbGVTeXN0ZW06OmlzSGFuZGxlVmFsaWQoZmQp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1R5cGVkQXJyYXkuY3BwCmluZGV4IGFiYTZk
ZjZlMmEzMTgzOGU3Mzg4NDlkMjhiNzI5MmUyMTMyYTRlOTEuLjkzZWU4ODRjNWM5OWRlYjcwYmI0
MTlkYjg2YTJjOTVlYzExMmRjZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNUeXBlZEFycmF5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTVHlw
ZWRBcnJheS5jcHAKQEAgLTIxOSw3ICsyMTksNyBAQCBKU09iamVjdFJlZiBKU09iamVjdE1ha2VU
eXBlZEFycmF5V2l0aEFycmF5QnVmZmVyKEpTQ29udGV4dFJlZiBjdHgsIEpTVHlwZWRBcnJheQog
CiAgICAgSlNBcnJheUJ1ZmZlcioganNCdWZmZXIgPSBqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZm
ZXIqPih2bSwgdG9KUyhqc0J1ZmZlclJlZikpOwogICAgIGlmICghanNCdWZmZXIpIHsKLSAgICAg
ICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9uLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhBcnJheUJ1ZmZlciBleHBlY3RzIGJ1ZmZl
ciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0IikpOworICAgICAgICBzZXRFeGNlcHRpb24o
Y3R4LCBleGNlcHRpb24sIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsICJKU09iamVjdE1h
a2VUeXBlZEFycmF5V2l0aEFycmF5QnVmZmVyIGV4cGVjdHMgYnVmZmVyIHRvIGJlIGFuIEFycmF5
IEJ1ZmZlciBvYmplY3QiX3MpKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCkBA
IC0yNDQsNyArMjQ0LDcgQEAgSlNPYmplY3RSZWYgSlNPYmplY3RNYWtlVHlwZWRBcnJheVdpdGhB
cnJheUJ1ZmZlckFuZE9mZnNldChKU0NvbnRleHRSZWYgY3R4LCBKU1QKIAogICAgIEpTQXJyYXlC
dWZmZXIqIGpzQnVmZmVyID0ganNEeW5hbWljQ2FzdDxKU0FycmF5QnVmZmVyKj4odm0sIHRvSlMo
anNCdWZmZXJSZWYpKTsKICAgICBpZiAoIWpzQnVmZmVyKSB7Ci0gICAgICAgIHNldEV4Y2VwdGlv
bihjdHgsIGV4Y2VwdGlvbiwgY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkpTT2JqZWN0
TWFrZVR5cGVkQXJyYXlXaXRoQXJyYXlCdWZmZXIgZXhwZWN0cyBidWZmZXIgdG8gYmUgYW4gQXJy
YXkgQnVmZmVyIG9iamVjdCIpKTsKKyAgICAgICAgc2V0RXhjZXB0aW9uKGN0eCwgZXhjZXB0aW9u
LCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiSlNPYmplY3RNYWtlVHlwZWRBcnJheVdp
dGhBcnJheUJ1ZmZlciBleHBlY3RzIGJ1ZmZlciB0byBiZSBhbiBBcnJheSBCdWZmZXIgb2JqZWN0
Il9zKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZhbHVlLm1tIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1ZhbHVlLm1tCmluZGV4IGQzYWQwODBlMWRkZjRmZTZlZmJhOTEzNWJhMjY4NzZjNzdk
Y2JjMjYuLmYxMmEyYzQ5NTNmMDAzMmRmYjRiNzJmNjhmZjgwZmVkZGI2OTAzNTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNWYWx1ZS5tbQorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL0pTVmFsdWUubW0KQEAgLTExNzksNyArMTE3OSw3IEBAIHN0YXRpYyBT
dHJ1Y3RIYW5kbGVycyogY3JlYXRlU3RydWN0SGFuZGxlck1hcCgpCiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIC8vIFRyeSB0byBmaW5kIGEgbWF0Y2hpbmcgdmFsdWVXaXRoPEZvbz46Y29u
dGV4dDogbWV0aG9kLgogICAgICAgICBhdXRvIHR5cGUgPSBhZG9wdFN5c3RlbTxjaGFyW10+KG1l
dGhvZF9jb3B5UmV0dXJuVHlwZShtZXRob2QpKTsKLSAgICAgICAgU3RydWN0SGFuZGxlcnM6Oml0
ZXJhdG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+ZmluZCh0eXBlLmdldCgpKTsKKyAgICAgICAg
U3RydWN0SGFuZGxlcnM6Oml0ZXJhdG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+ZmluZChTdHJp
bmcgeyB0eXBlLmdldCgpIH0pOwogICAgICAgICBpZiAoaXRlciA9PSBzdHJ1Y3RIYW5kbGVycy0+
ZW5kKCkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIFN0cnVjdFRhZ0hhbmRsZXImIGhh
bmRsZXIgPSBpdGVyLT52YWx1ZTsKQEAgLTEyMTcsNyArMTIxNyw3IEBAIHN0YXRpYyBTdHJ1Y3RU
YWdIYW5kbGVyKiBoYW5kZXJGb3JTdHJ1Y3RUYWcoY29uc3QgY2hhciogZW5jb2RlZFR5cGUpCiAK
ICAgICBzdGF0aWMgU3RydWN0SGFuZGxlcnMqIHN0cnVjdEhhbmRsZXJzID0gY3JlYXRlU3RydWN0
SGFuZGxlck1hcCgpOwogCi0gICAgU3RydWN0SGFuZGxlcnM6Oml0ZXJhdG9yIGl0ZXIgPSBzdHJ1
Y3RIYW5kbGVycy0+ZmluZChlbmNvZGVkVHlwZSk7CisgICAgU3RydWN0SGFuZGxlcnM6Oml0ZXJh
dG9yIGl0ZXIgPSBzdHJ1Y3RIYW5kbGVycy0+ZmluZChTdHJpbmcgeyBlbmNvZGVkVHlwZSB9KTsK
ICAgICBpZiAoaXRlciA9PSBzdHJ1Y3RIYW5kbGVycy0+ZW5kKCkpCiAgICAgICAgIHJldHVybiAw
OwogICAgIHJldHVybiAmaXRlci0+dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTV3JhcHBlck1hcC5tbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNX
cmFwcGVyTWFwLm1tCmluZGV4IDcwZGVmYzAwNDAzZmExYmE1MGZhNTJjYjU1OTVjMmMxNmI3YzYy
ZGMuLmY4MjFkZjhlM2ViZWQ1N2Y1NDBjZDJmMDFkNjRlYzk2ZGNmYTg2Y2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNXcmFwcGVyTWFwLm1tCkBAIC00MzgsNyArNDM4LDcgQEAgc3Rh
dGljIEpTQzo6SlNPYmplY3QqIGFsbG9jYXRlQ29uc3RydWN0b3JGb3JDdXN0b21DbGFzcyhKU0Nv
bnRleHQgKmNvbnRleHQsIGNvbnMKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lID0g
c2VsX2dldE5hbWUoc2VsZWN0b3IpOwogICAgICAgICAgICAgICAgIGlmICghaXNJbml0RmFtaWx5
TWV0aG9kKEAobmFtZSkpKQogICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAg
ICAgICAgaW5pdFRhYmxlLnNldChuYW1lLCAoX19icmlkZ2UgQ0ZUeXBlUmVmKXByb3RvY29sKTsK
KyAgICAgICAgICAgICAgICBpbml0VGFibGUuc2V0KFN0cmluZyB7IG5hbWUgfSwgKF9fYnJpZGdl
IENGVHlwZVJlZilwcm90b2NvbCk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfSk7CiAgICAg
fQpAQCAtNDUxLDcgKzQ1MSw3IEBAIHN0YXRpYyBKU0M6OkpTT2JqZWN0KiBhbGxvY2F0ZUNvbnN0
cnVjdG9yRm9yQ3VzdG9tQ2xhc3MoSlNDb250ZXh0ICpjb250ZXh0LCBjb25zCiAgICAgICAgIGZv
ckVhY2hNZXRob2RJbkNsYXNzKGN1cnJlbnRDbGFzcywgXihNZXRob2QgbWV0aG9kKSB7CiAgICAg
ICAgICAgICBTRUwgc2VsZWN0b3IgPSBtZXRob2RfZ2V0TmFtZShtZXRob2QpOwogICAgICAgICAg
ICAgY29uc3QgY2hhciogbmFtZSA9IHNlbF9nZXROYW1lKHNlbGVjdG9yKTsKLSAgICAgICAgICAg
IGF1dG8gaXRlciA9IGluaXRUYWJsZS5maW5kKG5hbWUpOworICAgICAgICAgICAgYXV0byBpdGVy
ID0gaW5pdFRhYmxlLmZpbmQoU3RyaW5nIHsgbmFtZSB9KTsKIAogICAgICAgICAgICAgaWYgKGl0
ZXIgPT0gaW5pdFRhYmxlLmVuZCgpKQogICAgICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0gYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09iakNDYWxsYmFja0Z1bmN0aW9uLm1tCmluZGV4IGRm
NzYwYzYyODY2OGE0ZjQ2ZTg5ZDUzMzYwOTNkMWNhNWMwMjQ0ZGMuLjhkOGUzNTE2OWQ5NjM0Njky
MzdlNDM5NWQ2MjkzMzMzNGIyNmZkNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbQpAQCAtNTMzLDcgKzUzMyw3IEBAIHN0YXRpYyBK
U09iamVjdFJlZiBvYmpDQ2FsbGJhY2tGdW5jdGlvbkNhbGxBc0NvbnN0cnVjdG9yKEpTQ29udGV4
dFJlZiBjYWxsZXJDb250CiAgICAgcmV0dXJuIGNvbnN0X2Nhc3Q8SlNPYmplY3RSZWY+KHJlc3Vs
dCk7CiB9CiAKLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIE9iakNDYWxsYmFja0Z1bmN0aW9uOjpzX2lu
Zm8gPSB7ICJDYWxsYmFja0Z1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDQ2FsbGJhY2tGdW5jdGlvbikgfTsKK2NvbnN0IEpT
Qzo6Q2xhc3NJbmZvIE9iakNDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1
bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE9iakNDYWxsYmFja0Z1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihjYWxsT2JqQ0NhbGxiYWNrRnVuY3Rpb24pOwogc3RhdGljIEpTQ19ERUNMQVJF
X0hPU1RfRlVOQ1RJT04oY29uc3RydWN0T2JqQ0NhbGxiYWNrRnVuY3Rpb24pOwpAQCAtNTc0LDEw
ICs1NzQsMTAgQEAgdm9pZCBPYmpDQ2FsbGJhY2tGdW5jdGlvbjo6ZGVzdHJveShKU0NlbGwqIGNl
bGwpCiBTdHJpbmcgT2JqQ0NhbGxiYWNrRnVuY3Rpb25JbXBsOjpuYW1lKCkKIHsKICAgICBpZiAo
bV90eXBlID09IENhbGxiYWNrSW5pdE1ldGhvZCkKLSAgICAgICAgcmV0dXJuIGNsYXNzX2dldE5h
bWUobV9pbnN0YW5jZUNsYXNzLmdldCgpKTsKKyAgICAgICAgcmV0dXJuIFN0cmluZyB7IGNsYXNz
X2dldE5hbWUobV9pbnN0YW5jZUNsYXNzLmdldCgpKSB9OwogICAgIC8vIEZJWE1FOiBNYXliZSB3
ZSBjb3VsZCBzdXBwb3J0IGhhdmluZyB0aGUgc2VsZWN0b3IgYXMgdGhlIG5hbWUgb2YgdGhlIG5v
bi1pbml0IAogICAgIC8vIGZ1bmN0aW9ucyB0byBtYWtlIGl0IGEgYml0IG1vcmUgdXNlci1mcmll
bmRseSBmcm9tIHRoZSBKUyBzaWRlPwotICAgIHJldHVybiAiIjsKKyAgICByZXR1cm4gZW1wdHlT
dHJpbmcoKTsKIH0KIAogSlNWYWx1ZVJlZiBPYmpDQ2FsbGJhY2tGdW5jdGlvbkltcGw6OmNhbGwo
SlNDb250ZXh0ICpjb250ZXh0LCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBzaXplX3QgYXJndW1l
bnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0
aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQVBJV3Jh
cHBlckdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNB
UElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcAppbmRleCAzZGJkOWQzNTNkNmViZGFiNmYyM2M4Mjkx
Mjc3ZTUzNjY2N2MwNjhmLi45YTU4NzJjYjE3NzViMGMxODk3NmM4MTZhMDlmM2E4ZTAxNzJiYTMw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNBUElXcmFwcGVy
R2xvYmFsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNB
UElXcmFwcGVyR2xvYmFsT2JqZWN0LmNwcApAQCAtNjIsNyArNjIsNyBAQCBzdGF0aWMgSlNDX0RF
Q0xBUkVfQ1VTVE9NX0dFVFRFUihzdGF0aWNGdW5jdGlvbkdldHRlckpTQVBJV3JhcHBlckdsb2Jh
bE9iamVjdENhbAogCiBERUZJTkVfVklTSVRfQ0hJTERSRU5fV0lUSF9NT0RJRklFUih0ZW1wbGF0
ZTw+LCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD4pOwogCi10ZW1w
bGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJHbG9i
YWxPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJHbG9iYWxPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tP
YmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFja09iamVjdDxK
U0FQSVdyYXBwZXJHbG9iYWxPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJHbG9iYWxP
YmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxi
YWNrT2JqZWN0PEpTQVBJV3JhcHBlckdsb2JhbE9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0
cnVlOwogCiB0ZW1wbGF0ZSA8PgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9nbGliL0pTQVBJV3JhcHBlck9iamVjdEdMaWIuY3BwCmluZGV4IDNlYWY4ZjY3OTBhZTc4
NWEzZGQ1MjNhYjlhZTQxNzRkMWJkYjI4ZDQuLmYwNTk5YzEwZjQ0MzkzNjY2MmNlZDU2YjE2ODU3
NjUwYjdiNTg5MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9K
U0FQSVdyYXBwZXJPYmplY3RHTGliLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L2dsaWIvSlNBUElXcmFwcGVyT2JqZWN0R0xpYi5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGlj
IEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIoc3RhdGljRnVuY3Rpb25HZXR0ZXJKU0FQSVdyYXBw
ZXJPYmplY3RDYWxsYmFja08KIAogREVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIo
dGVtcGxhdGU8PiwgSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+KTsKIAotdGVt
cGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVyT2Jq
ZWN0Pjo6c19pbmZvID0geyAiSlNBUElXcmFwcGVyT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0KSB9Owor
dGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNBUElXcmFwcGVy
T2JqZWN0Pjo6c19pbmZvID0geyAiSlNBUElXcmFwcGVyT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tPYmplY3Qp
IH07CiB0ZW1wbGF0ZTw+IGNvbnN0IGJvb2wgSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJP
YmplY3Q+OjpuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIAogdGVtcGxhdGUgPD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxsYmFja0Z1bmN0aW9uLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvZ2xpYi9KU0NDYWxsYmFja0Z1bmN0aW9uLmNw
cAppbmRleCAwODEwNzdhNGMwNDNjY2I0OGFlYjI5YjAxZjhmZmMwZDhhZmJlMTNhLi5lZDdmMWE3
MzlmMDViZDg4MzdmZDYzOWY2ODQ2ZmVmNjA3NWNhZTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQVBJL2dsaWIvSlNDQ2FsbGJhY2tGdW5jdGlvbi5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS9nbGliL0pTQ0NhbGxiYWNrRnVuY3Rpb24uY3BwCkBAIC01MCw3
ICs1MCw3IEBAIHN0YXRpYyBKU09iamVjdFJlZiBjYWxsQXNDb25zdHJ1Y3RvcihKU0NvbnRleHRS
ZWYgY2FsbGVyQ29udGV4dCwgSlNPYmplY3RSZWYgY29uCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0
PEpTQ0NhbGxiYWNrRnVuY3Rpb24qPih0b0pTKGNvbnN0cnVjdG9yKSktPmNvbnN0cnVjdChjYWxs
ZXJDb250ZXh0LCBhcmd1bWVudENvdW50LCBhcmd1bWVudHMsIGV4Y2VwdGlvbik7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0NDYWxsYmFja0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJDYWxsYmFja0Z1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0NDYWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDQ2FsbGJhY2tGdW5jdGlvbikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY2FsbEpTQ0NhbGxiYWNrRnVuY3Rpb24pOwogc3RhdGljIEpTQ19ERUNMQVJFX0hP
U1RfRlVOQ1RJT04oY29uc3RydWN0SlNDQ2FsbGJhY2tGdW5jdGlvbik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL0pTT05QYXJzZVRlc3QuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy9KU09OUGFyc2VUZXN0LmNwcAppbmRleCBhMDYyYWFi
N2VkYzczZDViNTIxN2E1NWE5ZWY4NWVhNjZkYzc4MmZiLi5kZjdiZmRiYjAyMTBiMjZjMDBkYzc4
YzMxNjEwMDhmY2I2ZWI5ZWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L3Rlc3RzL0pTT05QYXJzZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkv
dGVzdHMvSlNPTlBhcnNlVGVzdC5jcHAKQEAgLTQzLDEzICs0MywxMyBAQCBpbnQgdGVzdEpTT05Q
YXJzZSgpCiAgICAgSlNMb2NrSG9sZGVyIGxvY2tlcih2bS5nZXQoKSk7CiAgICAgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCA9IEpTR2xvYmFsT2JqZWN0OjpjcmVhdGUoKnZtLCBKU0dsb2Jh
bE9iamVjdDo6Y3JlYXRlU3RydWN0dXJlKCp2bSwganNOdWxsKCkpKTsKICAgICAKLSAgICBKU1Zh
bHVlIHYwID0gSlNPTlBhcnNlKGdsb2JhbE9iamVjdCwgIiIpOwotICAgIEpTVmFsdWUgdjEgPSBK
U09OUGFyc2UoZ2xvYmFsT2JqZWN0LCAiIyQlXiIpOworICAgIEpTVmFsdWUgdjAgPSBKU09OUGFy
c2UoZ2xvYmFsT2JqZWN0LCAiIl9zKTsKKyAgICBKU1ZhbHVlIHYxID0gSlNPTlBhcnNlKGdsb2Jh
bE9iamVjdCwgIiMkJV4iX3MpOwogICAgIEpTVmFsdWUgdjIgPSBKU09OUGFyc2UoZ2xvYmFsT2Jq
ZWN0LCBTdHJpbmcoKSk7CiAgICAgVUNoYXIgZW1wdHlVQ2hhckFycmF5WzFdID0geyAnXDAnIH07
CiAgICAgSlNWYWx1ZSB2MyA9IEpTT05QYXJzZShnbG9iYWxPYmplY3QsIFN0cmluZyhlbXB0eVVD
aGFyQXJyYXksIDApKTsKICAgICBKU1ZhbHVlIHY0OwotICAgIEpTVmFsdWUgdjUgPSBKU09OUGFy
c2UoZ2xvYmFsT2JqZWN0LCAiMTIzIik7CisgICAgSlNWYWx1ZSB2NSA9IEpTT05QYXJzZShnbG9i
YWxPYmplY3QsICIxMjMiX3MpOwogICAgIAogICAgIGZhaWxlZCA9IGZhaWxlZCB8fCAodjAgIT0g
djEpOwogICAgIGZhaWxlZCA9IGZhaWxlZCB8fCAodjEgIT0gdjIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2JpbmRpbmdzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYmluZGluZ3MvU2NyaXB0RnVuY3Rpb25DYWxsLmNwcAppbmRleCA3
ZmYzZTYxZTQyNTIzNmE4ZTY1NjU1YWI5MGUzYTlkNDc5ZTlhZjQyLi4zYWE5MjUzZDMzNDg3MDAz
ZTk3MzdkYmQyMjBiODBhNGFhYjkzYTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYmluZGluZ3MvU2NyaXB0RnVuY3Rpb25DYWxsLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYmluZGluZ3MvU2NyaXB0RnVuY3Rpb25DYWxsLmNwcApAQCAtNTEsNyArNTEsNyBAQCB2
b2lkIFNjcmlwdENhbGxBcmd1bWVudEhhbmRsZXI6OmFwcGVuZEFyZ3VtZW50KGNvbnN0IGNoYXIq
IGFyZ3VtZW50KQogewogICAgIFZNJiB2bSA9IG1fZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIEpT
TG9ja0hvbGRlciBsb2NrKHZtKTsKLSAgICBtX2FyZ3VtZW50cy5hcHBlbmQoanNTdHJpbmcodm0s
IGFyZ3VtZW50KSk7CisgICAgbV9hcmd1bWVudHMuYXBwZW5kKGpzU3RyaW5nKHZtLCBTdHJpbmcg
eyBhcmd1bWVudCB9KSk7CiB9CiAKIHZvaWQgU2NyaXB0Q2FsbEFyZ3VtZW50SGFuZGxlcjo6YXBw
ZW5kQXJndW1lbnQoSlNWYWx1ZSBhcmd1bWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9Db2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL0NvZGVCbG9jay5jcHAKaW5kZXggMDk4YWVkOTM1YTY4ZjdkNjY4N2JkMzUyMzI1MzA3
N2YzMWVkMTlmMi4uNmQ5ZDhiNTFlMTE5ZGJjMDc4MDkxMTRlMWNiMTBlZGI2NzI4NDU3OCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAKQEAgLTk2LDcg
Kzk2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBERUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVO
VElGSUVSKENvZGVCbG9ja1JhcmVEYXRhKTsKIAogY29uc3QgQ2xhc3NJbmZvIENvZGVCbG9jazo6
c19pbmZvID0gewotICAgICJDb2RlQmxvY2siLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLAor
ICAgICJDb2RlQmxvY2siX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRF
X01FVEhPRF9UQUJMRShDb2RlQmxvY2spCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvRXZhbENvZGVCbG9jay5jcHAKaW5kZXggZmFhNTE5NTEzNDY0OGM2NjI1Zjdh
YzU5NDM5MTI3NGRkMDRiOWJiMC4uNjBlOWQ4ODY0N2QzMjU0YTkwMmYwMzZhODliMTBjOTAzYmQy
ZGYwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V2YWxDb2Rl
QmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9FdmFsQ29kZUJs
b2NrLmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENsYXNz
SW5mbyBFdmFsQ29kZUJsb2NrOjpzX2luZm8gPSB7Ci0gICAgIkV2YWxDb2RlQmxvY2siLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAorICAgICJFdmFsQ29kZUJsb2NrIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoRXZh
bENvZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRl
Y29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9FeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlLmNwcAppbmRleCBiZjlkNmZlNDFj
Zjg1NzgxNDBkZmFmM2RjZDdkZWFkZDdhMzYzMzk0Li4zNmRkYjdhNjY1Nzk5YjY3NzY3YjMwNGZl
NWYzNTg5NDdhZDQ3OTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL0V4ZWN1dGFibGVUb0NvZGVCbG9ja0VkZ2UuY3BwCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZTo6c19pbmZvID0geyAiRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZSIsIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZVRvQ29k
ZUJsb2NrRWRnZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdl
OjpzX2luZm8gPSB7ICJFeGVjdXRhYmxlVG9Db2RlQmxvY2tFZGdlIl9zLCBudWxscHRyLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4ZWN1dGFibGVUb0NvZGVCbG9ja0Vk
Z2UpIH07CiAKIFN0cnVjdHVyZSogRXhlY3V0YWJsZVRvQ29kZUJsb2NrRWRnZTo6Y3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90
b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRXhp
dEtpbmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmNwcApp
bmRleCBkZTZmZWJmODhhMzRiOTA3M2QwYjc3NzNiNzFkYzI5NDA4MzNlMzgxLi44OTQwMjYwYzg5
OTUxMjMyMjdhYTgzNjZkZTc0MDBjMGFlNjlkN2NlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvZGUvRXhpdEtpbmQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9FeGl0S2luZC5jcHAKQEAgLTMxLDcwICszMSw3MCBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgY2hhciogZXhpdEtpbmRUb1N0cmluZyhFeGl0S2luZCBraW5kKQorQVND
SUlMaXRlcmFsIGV4aXRLaW5kVG9TdHJpbmcoRXhpdEtpbmQga2luZCkKIHsKICAgICBzd2l0Y2gg
KGtpbmQpIHsKICAgICBjYXNlIEV4aXRLaW5kVW5zZXQ6Ci0gICAgICAgIHJldHVybiAiVW5zZXQi
OworICAgICAgICByZXR1cm4gIlVuc2V0Il9zOwogICAgIGNhc2UgQmFkVHlwZToKLSAgICAgICAg
cmV0dXJuICJCYWRUeXBlIjsKKyAgICAgICAgcmV0dXJuICJCYWRUeXBlIl9zOwogICAgIGNhc2Ug
QmFkQ29uc3RhbnRWYWx1ZToKLSAgICAgICAgcmV0dXJuICJCYWRDb25zdGFudFZhbHVlIjsKKyAg
ICAgICAgcmV0dXJuICJCYWRDb25zdGFudFZhbHVlIl9zOwogICAgIGNhc2UgQmFkSWRlbnQ6Ci0g
ICAgICAgIHJldHVybiAiQmFkSWRlbnQiOworICAgICAgICByZXR1cm4gIkJhZElkZW50Il9zOwog
ICAgIGNhc2UgQmFkRXhlY3V0YWJsZToKLSAgICAgICAgcmV0dXJuICJCYWRFeGVjdXRhYmxlIjsK
KyAgICAgICAgcmV0dXJuICJCYWRFeGVjdXRhYmxlIl9zOwogICAgIGNhc2UgQmFkQ2FjaGU6Ci0g
ICAgICAgIHJldHVybiAiQmFkQ2FjaGUiOworICAgICAgICByZXR1cm4gIkJhZENhY2hlIl9zOwog
ICAgIGNhc2UgQmFkQ29uc3RhbnRDYWNoZToKLSAgICAgICAgcmV0dXJuICJCYWRDb25zdGFudENh
Y2hlIjsKKyAgICAgICAgcmV0dXJuICJCYWRDb25zdGFudENhY2hlIl9zOwogICAgIGNhc2UgQmFk
SW5kZXhpbmdUeXBlOgotICAgICAgICByZXR1cm4gIkJhZEluZGV4aW5nVHlwZSI7CisgICAgICAg
IHJldHVybiAiQmFkSW5kZXhpbmdUeXBlIl9zOwogICAgIGNhc2UgQmFkVHlwZUluZm9GbGFnczoK
LSAgICAgICAgcmV0dXJuICJCYWRUeXBlSW5mb0ZsYWdzIjsKKyAgICAgICAgcmV0dXJuICJCYWRU
eXBlSW5mb0ZsYWdzIl9zOwogICAgIGNhc2UgT3ZlcmZsb3c6Ci0gICAgICAgIHJldHVybiAiT3Zl
cmZsb3ciOworICAgICAgICByZXR1cm4gIk92ZXJmbG93Il9zOwogICAgIGNhc2UgTmVnYXRpdmVa
ZXJvOgotICAgICAgICByZXR1cm4gIk5lZ2F0aXZlWmVybyI7CisgICAgICAgIHJldHVybiAiTmVn
YXRpdmVaZXJvIl9zOwogICAgIGNhc2UgTmVnYXRpdmVJbmRleDoKLSAgICAgICAgcmV0dXJuICJO
ZWdhdGl2ZUluZGV4IjsKKyAgICAgICAgcmV0dXJuICJOZWdhdGl2ZUluZGV4Il9zOwogICAgIGNh
c2UgSW50NTJPdmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJJbnQ1Mk92ZXJmbG93IjsKKyAgICAg
ICAgcmV0dXJuICJJbnQ1Mk92ZXJmbG93Il9zOwogICAgIGNhc2UgU3RvcmVUb0hvbGU6Ci0gICAg
ICAgIHJldHVybiAiU3RvcmVUb0hvbGUiOworICAgICAgICByZXR1cm4gIlN0b3JlVG9Ib2xlIl9z
OwogICAgIGNhc2UgTG9hZEZyb21Ib2xlOgotICAgICAgICByZXR1cm4gIkxvYWRGcm9tSG9sZSI7
CisgICAgICAgIHJldHVybiAiTG9hZEZyb21Ib2xlIl9zOwogICAgIGNhc2UgT3V0T2ZCb3VuZHM6
Ci0gICAgICAgIHJldHVybiAiT3V0T2ZCb3VuZHMiOworICAgICAgICByZXR1cm4gIk91dE9mQm91
bmRzIl9zOwogICAgIGNhc2UgSW5hZGVxdWF0ZUNvdmVyYWdlOgotICAgICAgICByZXR1cm4gIklu
YWRlcXVhdGVDb3ZlcmFnZSI7CisgICAgICAgIHJldHVybiAiSW5hZGVxdWF0ZUNvdmVyYWdlIl9z
OwogICAgIGNhc2UgQXJndW1lbnRzRXNjYXBlZDoKLSAgICAgICAgcmV0dXJuICJBcmd1bWVudHNF
c2NhcGVkIjsKKyAgICAgICAgcmV0dXJuICJBcmd1bWVudHNFc2NhcGVkIl9zOwogICAgIGNhc2Ug
RXhvdGljT2JqZWN0TW9kZToKLSAgICAgICAgcmV0dXJuICJFeG90aWNPYmplY3RNb2RlIjsKKyAg
ICAgICAgcmV0dXJuICJFeG90aWNPYmplY3RNb2RlIl9zOwogICAgIGNhc2UgVmFyYXJnc092ZXJm
bG93OgotICAgICAgICByZXR1cm4gIlZhcmFyZ3NPdmVyZmxvdyI7CisgICAgICAgIHJldHVybiAi
VmFyYXJnc092ZXJmbG93Il9zOwogICAgIGNhc2UgVERaRmFpbHVyZToKLSAgICAgICAgcmV0dXJu
ICJURFpGYWlsdXJlIjsKKyAgICAgICAgcmV0dXJuICJURFpGYWlsdXJlIl9zOwogICAgIGNhc2Ug
SG9pc3RpbmdGYWlsZWQ6Ci0gICAgICAgIHJldHVybiAiSG9pc3RpbmdGYWlsZWQiOworICAgICAg
ICByZXR1cm4gIkhvaXN0aW5nRmFpbGVkIl9zOwogICAgIGNhc2UgVW5jb3VudGFibGU6Ci0gICAg
ICAgIHJldHVybiAiVW5jb3VudGFibGUiOworICAgICAgICByZXR1cm4gIlVuY291bnRhYmxlIl9z
OwogICAgIGNhc2UgVW5jb3VudGFibGVJbnZhbGlkYXRpb246Ci0gICAgICAgIHJldHVybiAiVW5j
b3VudGFibGVJbnZhbGlkYXRpb24iOworICAgICAgICByZXR1cm4gIlVuY291bnRhYmxlSW52YWxp
ZGF0aW9uIl9zOwogICAgIGNhc2UgV2F0Y2hkb2dUaW1lckZpcmVkOgotICAgICAgICByZXR1cm4g
IldhdGNoZG9nVGltZXJGaXJlZCI7CisgICAgICAgIHJldHVybiAiV2F0Y2hkb2dUaW1lckZpcmVk
Il9zOwogICAgIGNhc2UgRGVidWdnZXJFdmVudDoKLSAgICAgICAgcmV0dXJuICJEZWJ1Z2dlckV2
ZW50IjsKKyAgICAgICAgcmV0dXJuICJEZWJ1Z2dlckV2ZW50Il9zOwogICAgIGNhc2UgRXhjZXB0
aW9uQ2hlY2s6Ci0gICAgICAgIHJldHVybiAiRXhjZXB0aW9uQ2hlY2siOworICAgICAgICByZXR1
cm4gIkV4Y2VwdGlvbkNoZWNrIl9zOwogICAgIGNhc2UgR2VuZXJpY1Vud2luZDoKLSAgICAgICAg
cmV0dXJuICJHZW5lcmljVW53aW5kIjsKKyAgICAgICAgcmV0dXJuICJHZW5lcmljVW53aW5kIl9z
OwogICAgIGNhc2UgQmlnSW50MzJPdmVyZmxvdzoKLSAgICAgICAgcmV0dXJuICJCaWdJbnQzMk92
ZXJmbG93IjsKKyAgICAgICAgcmV0dXJuICJCaWdJbnQzMk92ZXJmbG93Il9zOwogICAgIH0KICAg
ICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAiVW5rbm93biI7Cisg
ICAgcmV0dXJuICJVbmtub3duIl9zOwogfQogCiBib29sIGV4aXRLaW5kTWF5SmV0dGlzb24oRXhp
dEtpbmQga2luZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9F
eGl0S2luZC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmgKaW5k
ZXggYjhlYjMxMDQ4MDVmY2I1ZThmMzYzMGI2ZGE5MTVkYzIwYjg0YmI4YS4uZDg0MDM2MjBlYzI5
MmM4MTc0NGVmYzYzNzczN2EzNmVjZDhmNjU4NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2J5dGVjb2RlL0V4aXRLaW5kLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL0V4aXRLaW5kLmgKQEAgLTU5LDcgKzU5LDcgQEAgZW51bSBFeGl0S2luZCA6IHVpbnQ4
X3QgewogICAgIEJpZ0ludDMyT3ZlcmZsb3csIC8vIFdlIGV4aXRlZCBiZWNhdXNlIG9mIGFuIEJp
Z0ludDMyIG92ZXJmbG93LgogfTsKIAotY29uc3QgY2hhciogZXhpdEtpbmRUb1N0cmluZyhFeGl0
S2luZCk7CitBU0NJSUxpdGVyYWwgZXhpdEtpbmRUb1N0cmluZyhFeGl0S2luZCk7CiBib29sIGV4
aXRLaW5kTWF5SmV0dGlzb24oRXhpdEtpbmQpOwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvRnVuY3Rpb25Db2RlQmxvY2suY3Bw
CmluZGV4IDNkZTBkYWNjYWEzZmFkMmQwNzAxOTA2ZjBjNDMzMTAzMDIzZWFjMGIuLjg3MDllYzZh
ZDk1ZmI5MzZkYzcxNjhlYzlkNmNkZDFmMmRlYWRkMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9GdW5jdGlvbkNvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bmN0aW9uQ29kZUJsb2NrLmNwcApAQCAtMzUsNyArMzUs
NyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENsYXNzSW5mbyBGdW5jdGlvbkNvZGVCbG9j
azo6c19pbmZvID0gewotICAgICJGdW5jdGlvbkNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Db2Rl
QmxvY2spCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
TW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvTW9kdWxlUHJvZ3JhbUNvZGVCbG9jay5jcHAKaW5kZXggNjUzZGQ3YTRkMzMxNDgzNjY4YjUy
YTI2MTllMTdhYzEyMmVhNDVlNy4uMTBhMDdkMGUwNzA3MDhjOWM3MWU5NWQzZmI5Yzg3NzJkYTJl
MWNlZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL01vZHVsZVBy
b2dyYW1Db2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9N
b2R1bGVQcm9ncmFtQ29kZUJsb2NrLmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNlIEpT
QyB7CiAKIGNvbnN0IENsYXNzSW5mbyBNb2R1bGVQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7
Ci0gICAgIk1vZHVsZVByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLAorICAgICJNb2R1bGVQcm9ncmFtQ29kZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoTW9kdWxlUHJvZ3JhbUNv
ZGVCbG9jaykKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9Qcm9ncmFtQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Q
cm9ncmFtQ29kZUJsb2NrLmNwcAppbmRleCBhNTA4YjQ2NjBhMDQ4MWE4OTE0ZGIyYTYwNjA3ZjQx
MDQ1NzM5N2NlLi44MDViM2Y3OTdhMDE2YTBiZDY5YTEwYmM5YjAxNWYwODQxNmE3N2VmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvUHJvZ3JhbUNvZGVCbG9jay5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Byb2dyYW1Db2RlQmxvY2su
Y3BwCkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQ2xhc3NJbmZv
IFByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsKLSAgICAiUHJvZ3JhbUNvZGVCbG9jayIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCisgICAgIlByb2dyYW1Db2RlQmxvY2siX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9UQUJM
RShQcm9ncmFtQ29kZUJsb2NrKQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKaW5kZXggMTY1MzU1NzE3MTVhZWQxMzU2
NmJjNzc1MDljYmNlYjk2YzE1ZTVhNi4uMWQ1ZDIxMGM5MTJlYjZlZWIwM2JhYmExODk4YTRjOTE2
MjA2YzI3NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkQ29kZUJsb2NrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5s
aW5rZWRDb2RlQmxvY2suY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gVW5saW5rZWRDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2Vk
Q29kZUJsb2NrIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShVbmxpbmtlZENvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9j
azo6c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRDb2RlQmxvY2spIH07CiAKIFVubGlu
a2VkQ29kZUJsb2NrOjpVbmxpbmtlZENvZGVCbG9jayhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBDb2RlVHlwZSBjb2RlVHlwZSwgY29uc3QgRXhlY3V0YWJsZUluZm8mIGluZm8sIE9wdGlv
blNldDxDb2RlR2VuZXJhdGlvbk1vZGU+IGNvZGVHZW5lcmF0aW9uTW9kZSkKICAgICA6IEJhc2Uo
dm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZEV2YWxDb2RlQmxvY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5jcHAKaW5kZXggZTQ3MTJkODY4ZGViY2VmZTc0NjM0
NTY2NDQ2MjM4MGY4NjBmMWNhOC4uZjU3Y2EzN2YyMzczNjJlODYzYTMyZTY2YTJiNGM5NzhhMWNm
YTUxZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2Vk
RXZhbENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Vu
bGlua2VkRXZhbENvZGVCbG9jay5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsg
IlVubGlua2VkRXZhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2NrKSB9OworY29uc3QgQ2xh
c3NJbmZvIFVubGlua2VkRXZhbENvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRFdmFsQ29k
ZUJsb2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFVubGlua2VkRXZhbENvZGVCbG9jaykgfTsKIAogdm9pZCBVbmxpbmtlZEV2YWxDb2Rl
QmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxvY2suY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25Db2RlQmxvY2suY3BwCmlu
ZGV4IDNkYWVmMDNmYTY3YWViN2NiMTY3MTQxMmFjZmRkYzI5NGRmNjAxOGIuLmNmYWM4YmM3M2E1
ZmQxN2Y5OWViNDA3YjU2NjRjODBmMzYxMjc1NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jay5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBV
bmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEZ1bmN0aW9uQ29k
ZUJsb2NrIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlu
a2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxv
Y2siX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaykgfTsKIAogdm9pZCBVbmxpbmtlZEZ1bmN0aW9u
Q29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUu
Y3BwCmluZGV4IGNiZmVkZjUyYzgwMjQwMzUwODIxNGNkZDU3NTBmODk3NGUyNjZkZTkuLjE3NWU1
ZDU4MDNlYjM4ZDRjYmZmM2NkNjZmYjI0N2YwMzQ3YjYwNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkRnVuY3Rpb25FeGVjdXRh
YmxlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGljX2Fzc2Vy
dChzaXplb2YoVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUpIDw9IDEyOCwgIlVubGlua2VkRnVu
Y3Rpb25FeGVjdXRhYmxlIHNob3VsZCBmaXQgaW4gYSAxMjgtYnl0ZSBjZWxsIHRvIGtlZXAgYWxs
b2NhdGVkIGJsb2NrcyBjb3VudCB0byBvbmx5IG9uZSBhZnRlciBpbml0aWFsaXppbmcgSlNHbG9i
YWxPYmplY3QuIik7CiAKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJs
ZTo6c19pbmZvID0geyAiVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUiLCBudWxscHRyLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25FeGVjdXRh
YmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2lu
Zm8gPSB7ICJVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSkg
fTsKIAogc3RhdGljIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2sqIGdlbmVyYXRlVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jaygKICAgICBWTSYgdm0sIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxl
KiBleGVjdXRhYmxlLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2Nr
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dy
YW1Db2RlQmxvY2suY3BwCmluZGV4IGM5ZDRiYzQ2MTM1NWViN2NiMWFhZmQ3MmVmNzIyZmExMDRl
OTMwZTIuLjNjYzgxYTgzNjM1MTU0MmMwZDFjZmQ1Zjg4MzM2MGIxMjhjYWZmOTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZE1vZHVsZVByb2dyYW1D
b2RlQmxvY2suY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Vbmxpbmtl
ZE1vZHVsZVByb2dyYW1Db2RlQmxvY2suY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVW5saW5rZWRNb2R1bGVQcm9ncmFtQ29kZUJsb2Nr
OjpzX2luZm8gPSB7ICJVbmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkTW9kdWxl
UHJvZ3JhbUNvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtlZE1vZHVsZVByb2dy
YW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkTW9kdWxlUHJvZ3JhbUNvZGVCbG9jayJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShV
bmxpbmtlZE1vZHVsZVByb2dyYW1Db2RlQmxvY2spIH07CiAKIHZvaWQgVW5saW5rZWRNb2R1bGVQ
cm9ncmFtQ29kZUJsb2NrOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZFByb2dyYW1Db2RlQmxvY2suY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9j
ay5jcHAKaW5kZXggMjllYzlkYjBkOGY5Y2JlOGVkZjlhNDhjYmNkMmE3ZGY5NmJjMTE4Zi4uNGUx
OWY2MjE0NjZiMWEyODI0ZjZiYThjYjE3M2Q3NjdiOTA1NTc0OSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9jay5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkUHJvZ3JhbUNvZGVCbG9j
ay5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBVbmxpbmtlZFByb2dyYW1Db2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkUHJvZ3Jh
bUNvZGVCbG9jayIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVu
bGlua2VkUHJvZ3JhbUNvZGVCbG9jazo6c19pbmZvID0geyAiVW5saW5rZWRQcm9ncmFtQ29kZUJs
b2NrIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKIAogdm9pZCBVbmxpbmtlZFByb2dyYW1D
b2RlQmxvY2s6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAppbmRleCA3
OTNlMDlmMjYzMDViMzc4ZmQwZWE0YjI5ODNjMjcwZWJmNDhhYjQ4Li4zYTAzNzBkNTZlNTNjMzMw
NGVmZDhmNDA4MmNiNzQyMzdlNzVjM2QwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcApAQCAtNDUwLDE0ICs0
NTAsMTQgQEAgQnl0ZWNvZGVHZW5lcmF0b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKFZNJiB2bSwgRnVu
Y3Rpb25Ob2RlKiBmdW5jdGlvbk5vZGUsIFVubGlua2UKICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBDb25zdHJ1Y3RvcktpbmQ6Ok5ha2VkOgogICAgICAgICBpZiAoIWlzQ29uc3RydWN0b3IoKSkg
ewotICAgICAgICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNvbnN0cnVj
dG9yIHdpdGhvdXQgfG5ld3wiKTsKKyAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fu
bm90IGNhbGwgYSBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Il9zKTsKICAgICAgICAgICAgIHJl
dHVybjsKICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIENvbnN0cnVjdG9yS2lu
ZDo6QmFzZToKICAgICBjYXNlIENvbnN0cnVjdG9yS2luZDo6RXh0ZW5kczoKICAgICAgICAgaWYg
KCFpc0NvbnN0cnVjdG9yKCkpIHsKLSAgICAgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fu
bm90IGNhbGwgYSBjbGFzcyBjb25zdHJ1Y3RvciB3aXRob3V0IHxuZXd8Iik7CisgICAgICAgICAg
ICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgY29uc3RydWN0b3Igd2l0
aG91dCB8bmV3fCJfcyk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICAgICAg
YnJlYWs7CkBAIC0yODcxLDcgKzI4NzEsNyBAQCBSZWdpc3RlcklEKiBCeXRlY29kZUdlbmVyYXRv
cjo6ZW1pdEhhc1ByaXZhdGVCcmFuZChSZWdpc3RlcklEKiBkc3QsIFJlZ2lzdGVySUQqCiAgICAg
aWYgKGlzU3RhdGljKSB7CiAgICAgICAgIFJlZjxMYWJlbD4gaXNPYmplY3RMYWJlbCA9IG5ld0xh
YmVsKCk7CiAgICAgICAgIGVtaXRKdW1wSWZUcnVlKGVtaXRJc09iamVjdChuZXdUZW1wb3Jhcnko
KSwgYmFzZSksIGlzT2JqZWN0TGFiZWwuZ2V0KCkpOwotICAgICAgICBlbWl0VGhyb3dUeXBlRXJy
b3IoIkNhbm5vdCBhY2Nlc3Mgc3RhdGljIHByaXZhdGUgbWV0aG9kIG9yIGFjY2Vzc29yIG9mIGEg
bm9uLU9iamVjdCIpOworICAgICAgICBlbWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBhY2Nlc3Mg
c3RhdGljIHByaXZhdGUgbWV0aG9kIG9yIGFjY2Vzc29yIG9mIGEgbm9uLU9iamVjdCJfcyk7CiAg
ICAgICAgIGVtaXRMYWJlbChpc09iamVjdExhYmVsLmdldCgpKTsKICAgICAgICAgZW1pdEVxdWFs
aXR5T3A8T3BTdHJpY3RlcT4oZHN0LCBiYXNlLCBicmFuZCk7CiAgICAgfSBlbHNlCkBAIC0yODg0
LDcgKzI4ODQsNyBAQCB2b2lkIEJ5dGVjb2RlR2VuZXJhdG9yOjplbWl0Q2hlY2tQcml2YXRlQnJh
bmQoUmVnaXN0ZXJJRCogYmFzZSwgUmVnaXN0ZXJJRCogYnJhbgogICAgIGlmIChpc1N0YXRpYykg
ewogICAgICAgICBSZWY8TGFiZWw+IGJyYW5kQ2hlY2tPa0xhYmVsID0gbmV3TGFiZWwoKTsKICAg
ICAgICAgZW1pdEp1bXBJZlRydWUoZW1pdEVxdWFsaXR5T3A8T3BTdHJpY3RlcT4obmV3VGVtcG9y
YXJ5KCksIGJhc2UsIGJyYW5kKSwgYnJhbmRDaGVja09rTGFiZWwuZ2V0KCkpOwotICAgICAgICBl
bWl0VGhyb3dUeXBlRXJyb3IoIkNhbm5vdCBhY2Nlc3Mgc3RhdGljIHByaXZhdGUgbWV0aG9kIG9y
IGFjY2Vzc29yIik7CisgICAgICAgIGVtaXRUaHJvd1R5cGVFcnJvcigiQ2Fubm90IGFjY2VzcyBz
dGF0aWMgcHJpdmF0ZSBtZXRob2Qgb3IgYWNjZXNzb3IiX3MpOwogICAgICAgICBlbWl0TGFiZWwo
YnJhbmRDaGVja09rTGFiZWwuZ2V0KCkpOwogICAgICAgICByZXR1cm47CiAgICAgCkBAIC0zNjU2
LDcgKzM2NTYsNyBAQCBSZWdpc3RlcklEKiBCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdFJldHVybihS
ZWdpc3RlcklEKiBzcmMsIFJldHVybkZyb20gZnJvbSkKICAgICAgICAgICAgIGlmIChpc0Rlcml2
ZWQpIHsKICAgICAgICAgICAgICAgICBSZWY8TGFiZWw+IGlzVW5kZWZpbmVkTGFiZWwgPSBuZXdM
YWJlbCgpOwogICAgICAgICAgICAgICAgIGVtaXRKdW1wSWZUcnVlKGVtaXRJc1VuZGVmaW5lZChu
ZXdUZW1wb3JhcnkoKSwgc3JjKSwgaXNVbmRlZmluZWRMYWJlbC5nZXQoKSk7Ci0gICAgICAgICAg
ICAgICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgcmV0dXJuIGEgbm9uLW9iamVjdCB0eXBl
IGluIHRoZSBjb25zdHJ1Y3RvciBvZiBhIGRlcml2ZWQgY2xhc3MuIik7CisgICAgICAgICAgICAg
ICAgZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgcmV0dXJuIGEgbm9uLW9iamVjdCB0eXBlIGlu
IHRoZSBjb25zdHJ1Y3RvciBvZiBhIGRlcml2ZWQgY2xhc3MuIl9zKTsKICAgICAgICAgICAgICAg
ICBlbWl0TGFiZWwoaXNVbmRlZmluZWRMYWJlbC5nZXQoKSk7CiAgICAgICAgICAgICAgICAgZW1p
dFREWkNoZWNrKCZtX3RoaXNSZWdpc3Rlcik7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAKaW5kZXggZjZl
NDNlYzhjYmJhOGYyNTU5MGM2ZjgwOGEyNDQ3NWRjMmI2ZWFlMS4uN2FjNzU4NjY1ZDlmYzJhYzkw
ODZlOTdlZDFjYzQ0ZTA2NmRiZTNkNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcApAQCAtODk2LDcgKzg5Niw3IEBAIHZvaWQg
UHJvcGVydHlMaXN0Tm9kZTo6ZW1pdFNhdmVDb21wdXRlZEZpZWxkTmFtZShCeXRlY29kZUdlbmVy
YXRvciYgZ2VuZXJhdG9yLCBQCiAgICAgICAgIFJlZjxMYWJlbD4gdmFsaWRQcm9wZXJ0eU5hbWVM
YWJlbCA9IGdlbmVyYXRvci5uZXdMYWJlbCgpOwogICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4g
cHJvdG90eXBlU3RyaW5nID0gZ2VuZXJhdG9yLmVtaXRMb2FkKG51bGxwdHIsIEpTVmFsdWUoZ2Vu
ZXJhdG9yLmFkZFN0cmluZ0NvbnN0YW50KGdlbmVyYXRvci5wcm9wZXJ0eU5hbWVzKCkucHJvdG90
eXBlKSkpOwogICAgICAgICBnZW5lcmF0b3IuZW1pdEp1bXBJZkZhbHNlKGdlbmVyYXRvci5lbWl0
QmluYXJ5T3A8T3BTdHJpY3RlcT4oZ2VuZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCBwcm90b3R5cGVT
dHJpbmcuZ2V0KCksIHByb3BlcnR5TmFtZS5nZXQoKSwgT3BlcmFuZFR5cGVzKFJlc3VsdFR5cGU6
OnN0cmluZ1R5cGUoKSwgUmVzdWx0VHlwZTo6c3RyaW5nVHlwZSgpKSksIHZhbGlkUHJvcGVydHlO
YW1lTGFiZWwuZ2V0KCkpOwotICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJD
YW5ub3QgZGVjbGFyZSBhIHN0YXRpYyBmaWVsZCBuYW1lZCAncHJvdG90eXBlJyIpOworICAgICAg
ICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJDYW5ub3QgZGVjbGFyZSBhIHN0YXRpYyBm
aWVsZCBuYW1lZCAncHJvdG90eXBlJyJfcyk7CiAgICAgICAgIGdlbmVyYXRvci5lbWl0TGFiZWwo
dmFsaWRQcm9wZXJ0eU5hbWVMYWJlbC5nZXQoKSk7CiAgICAgfQogCkBAIC0xMDE1LDcgKzEwMTUs
NyBAQCBSZWdpc3RlcklEKiBCYXNlRG90Tm9kZTo6ZW1pdEdldFByb3BlcnR5VmFsdWUoQnl0ZWNv
ZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaQogICAgICAgICAgICAgQVNTRVJUKHNjb3BlKTsg
Ly8gUHJpdmF0ZSBuYW1lcyBhcmUgYWx3YXlzIGNhcHR1cmVkLgogICAgICAgICAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IHByaXZhdGVCcmFuZFN5bWJvbCA9IGdlbmVyYXRvci5lbWl0R2V0UHJpdmF0
ZUJyYW5kKGdlbmVyYXRvci5uZXdUZW1wb3JhcnkoKSwgc2NvcGUuZ2V0KCksIHByaXZhdGVUcmFp
dHMuaXNTdGF0aWMoKSk7CiAgICAgICAgICAgICBnZW5lcmF0b3IuZW1pdENoZWNrUHJpdmF0ZUJy
YW5kKGJhc2UsIHByaXZhdGVCcmFuZFN5bWJvbC5nZXQoKSwgcHJpdmF0ZVRyYWl0cy5pc1N0YXRp
YygpKTsKLSAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRyeWluZyB0
byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIik7CisgICAgICAgICAgICBnZW5l
cmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBw
cml2YXRlIGdldHRlciJfcyk7CiAgICAgICAgICAgICByZXR1cm4gZHN0OwogICAgICAgICB9CiAK
QEAgLTEwNzQsNyArMTA3NCw3IEBAIFJlZ2lzdGVySUQqIEJhc2VEb3ROb2RlOjplbWl0UHV0UHJv
cGVydHkoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0ZXJJCiAgICAgICAgICAg
ICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJpdmF0ZUJyYW5kU3ltYm9sID0gZ2VuZXJhdG9yLmVtaXRH
ZXRQcml2YXRlQnJhbmQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCBzY29wZS5nZXQoKSwgcHJp
dmF0ZVRyYWl0cy5pc1N0YXRpYygpKTsKICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQ
cml2YXRlQnJhbmQoYmFzZSwgcHJpdmF0ZUJyYW5kU3ltYm9sLmdldCgpLCBwcml2YXRlVHJhaXRz
LmlzU3RhdGljKCkpOwogCi0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9y
KCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciIpOworICAgICAg
ICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1
bmRlZmluZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwog
ICAgICAgICB9CiAKQEAgLTI0NTQsNyArMjQ1NCw3IEBAIFJlZ2lzdGVySUQqIFBvc3RmaXhOb2Rl
OjplbWl0RG90KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkK
ICAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZS5nZXQoKSwg
cHJpdmF0ZUJyYW5kU3ltYm9sLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogCiAg
ICAgICAgICAgICBnZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3Rh
cnQoKSwgZGl2b3RFbmQoKSk7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVy
cm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciIpOworICAg
ICAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBh
biB1bmRlZmluZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVy
YXRvci50ZW1wRGVzdGluYXRpb24oZHN0KTsKICAgICAgICAgfQogCkBAIC0yNDcyLDcgKzI0NzIs
NyBAQCBSZWdpc3RlcklEKiBQb3N0Zml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYg
Z2VuZXJhdG9yLCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICBnZW5lcmF0b3IubW92ZShh
cmdzLnRoaXNSZWdpc3RlcigpLCBiYXNlLmdldCgpKTsKICAgICAgICAgICAgIHZhbHVlID0gZ2Vu
ZXJhdG9yLmVtaXRDYWxsKGdlbmVyYXRvci5uZXdUZW1wb3JhcnkoKSwgZ2V0dGVyRnVuY3Rpb24u
Z2V0KCksIE5vRXhwZWN0ZWRGdW5jdGlvbiwgYXJncywgbV9wb3NpdGlvbiwgbV9wb3NpdGlvbiwg
bV9wb3NpdGlvbiwgRGVidWdnYWJsZUNhbGw6Olllcyk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAg
ICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlpbmcgdG8gYWNjZXNzIGFu
IHVuZGVmaW5lZCBwcml2YXRlIGdldHRlciIpOworICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRU
aHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0
ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci50ZW1wRGVzdGluYXRpb24oZHN0
KTsKICAgICAgICAgfQogCkBAIC0yNDkwLDcgKzI0OTAsNyBAQCBSZWdpc3RlcklEKiBQb3N0Zml4
Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJhdG9yLCBSZWdpc3RlcklEKiBk
c3QpCiAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBvbGRWYWx1ZS5nZXQo
KSk7CiAgICAgICAgIH0gCiAKLSAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigi
VHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiKTsKKyAgICAgICAg
Z2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmlu
ZWQgcHJpdmF0ZSBnZXR0ZXIiX3MpOwogICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0
LCBvbGRWYWx1ZS5nZXQoKSk7CiAgICAgfQogCkBAIC0yNTU4LDcgKzI1NTgsNyBAQCBSZWdpc3Rl
cklEKiBEZWxldGVCcmFja2V0Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2RlR2VuZXJhdG9yJiBn
ZW5lcmF0b3IsIFJlZ2lzdAogICAgIFJlZlB0cjxSZWdpc3RlcklEPiByMSA9IGdlbmVyYXRvci5l
bWl0Tm9kZShtX3N1YnNjcmlwdCk7CiAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9uSW5mbyhk
aXZvdCgpLCBkaXZvdFN0YXJ0KCksIGRpdm90RW5kKCkpOwogICAgIGlmIChtX2Jhc2UtPmlzU3Vw
ZXJOb2RlKCkpCi0gICAgICAgIHJldHVybiBlbWl0VGhyb3dSZWZlcmVuY2VFcnJvcihnZW5lcmF0
b3IsICJDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiLCBkc3QpOworICAgICAgICByZXR1
cm4gZW1pdFRocm93UmVmZXJlbmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1
cGVyIHByb3BlcnR5Il9zLCBkc3QpOwogICAgIHJldHVybiBnZW5lcmF0b3IuZW1pdERlbGV0ZUJ5
VmFsKGZpbmFsRGVzdC5nZXQoKSwgcjAuZ2V0KCksIHIxLmdldCgpKTsKIH0KIApAQCAtMjU3NCw3
ICsyNTc0LDcgQEAgUmVnaXN0ZXJJRCogRGVsZXRlRG90Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVj
b2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQKIAogICAgIGdlbmVyYXRvci5lbWl0
RXhwcmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydCgpLCBkaXZvdEVuZCgpKTsKICAgICBp
ZiAobV9iYXNlLT5pc1N1cGVyTm9kZSgpKQotICAgICAgICByZXR1cm4gZW1pdFRocm93UmVmZXJl
bmNlRXJyb3IoZ2VuZXJhdG9yLCAiQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHByb3BlcnR5IiwgZHN0
KTsKKyAgICAgICAgcmV0dXJuIGVtaXRUaHJvd1JlZmVyZW5jZUVycm9yKGdlbmVyYXRvciwgIkNh
bm5vdCBkZWxldGUgYSBzdXBlciBwcm9wZXJ0eSJfcywgZHN0KTsKICAgICByZXR1cm4gZ2VuZXJh
dG9yLmVtaXREZWxldGVCeUlkKGZpbmFsRGVzdC5nZXQoKSwgcjAuZ2V0KCksIG1faWRlbnQpOwog
fQogCkBAIC0yNzQzLDcgKzI3NDMsNyBAQCBSZWdpc3RlcklEKiBQcmVmaXhOb2RlOjplbWl0RG90
KEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIGRzdCkKICAgICAgICAg
ICAgIGdlbmVyYXRvci5lbWl0Q2hlY2tQcml2YXRlQnJhbmQoYmFzZS5nZXQoKSwgcHJpdmF0ZUJy
YW5kU3ltYm9sLmdldCgpLCBwcml2YXRlVHJhaXRzLmlzU3RhdGljKCkpOwogCiAgICAgICAgICAg
ICBnZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnQoKSwgZGl2
b3RFbmQoKSk7Ci0gICAgICAgICAgICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJUcnlp
bmcgdG8gYWNjZXNzIGFuIHVuZGVmaW5lZCBwcml2YXRlIHNldHRlciIpOworICAgICAgICAgICAg
Z2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmlu
ZWQgcHJpdmF0ZSBzZXR0ZXIiX3MpOwogICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRvci5tb3Zl
KGRzdCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0KIApAQCAtMjc2MCw3ICsyNzYwLDcgQEAg
UmVnaXN0ZXJJRCogUHJlZml4Tm9kZTo6ZW1pdERvdChCeXRlY29kZUdlbmVyYXRvciYgZ2VuZXJh
dG9yLCBSZWdpc3RlcklEKiBkc3QpCiAgICAgICAgICAgICBnZW5lcmF0b3IubW92ZShhcmdzLnRo
aXNSZWdpc3RlcigpLCBiYXNlLmdldCgpKTsKICAgICAgICAgICAgIHZhbHVlID0gZ2VuZXJhdG9y
LmVtaXRDYWxsKHByb3BEc3QuZ2V0KCksIGdldHRlckZ1bmN0aW9uLmdldCgpLCBOb0V4cGVjdGVk
RnVuY3Rpb24sIGFyZ3MsIG1fcG9zaXRpb24sIG1fcG9zaXRpb24sIG1fcG9zaXRpb24sIERlYnVn
Z2FibGVDYWxsOjpZZXMpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgZ2VuZXJhdG9y
LmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0
ZSBnZXR0ZXIiKTsKKyAgICAgICAgICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJyb3IoIlRy
eWluZyB0byBhY2Nlc3MgYW4gdW5kZWZpbmVkIHByaXZhdGUgZ2V0dGVyIl9zKTsKICAgICAgICAg
ICAgIHJldHVybiBnZW5lcmF0b3IubW92ZShkc3QsIHByb3BEc3QuZ2V0KCkpOwogICAgICAgICB9
CiAKQEAgLTI3NzgsNyArMjc3OCw3IEBAIFJlZ2lzdGVySUQqIFByZWZpeE5vZGU6OmVtaXREb3Qo
Qnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0ZXJJRCogZHN0KQogICAgICAgICAg
ICAgcmV0dXJuIGdlbmVyYXRvci5tb3ZlKGRzdCwgcHJvcERzdC5nZXQoKSk7CiAgICAgICAgIH0g
CiAKLSAgICAgICAgZ2VuZXJhdG9yLmVtaXRUaHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2Vz
cyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0ZXIiKTsKKyAgICAgICAgZ2VuZXJhdG9yLmVtaXRU
aHJvd1R5cGVFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBhbiB1bmRlZmluZWQgcHJpdmF0ZSBnZXR0
ZXIiX3MpOwogICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLm1vdmUoZHN0LCBwcm9wRHN0LmdldCgp
KTsKICAgICB9CiAKQEAgLTMyMDgsNyArMzIwOCw3IEBAIFJlZ2lzdGVySUQqIEluc3RhbmNlT2ZO
b2RlOjplbWl0Qnl0ZWNvZGUoQnl0ZWNvZGVHZW5lcmF0b3ImIGdlbmVyYXRvciwgUmVnaXN0ZXJJ
CiAgICAgZ2VuZXJhdG9yLmVtaXRKdW1wKGRvbmUuZ2V0KCkpOwogCiAgICAgZ2VuZXJhdG9yLmVt
aXRMYWJlbCh0eXBlRXJyb3IuZ2V0KCkpOwotICAgIGdlbmVyYXRvci5lbWl0VGhyb3dUeXBlRXJy
b3IoIlJpZ2h0IGhhbmQgc2lkZSBvZiBpbnN0YW5jZW9mIGlzIG5vdCBhbiBvYmplY3QiKTsKKyAg
ICBnZW5lcmF0b3IuZW1pdFRocm93VHlwZUVycm9yKCJSaWdodCBoYW5kIHNpZGUgb2YgaW5zdGFu
Y2VvZiBpcyBub3QgYW4gb2JqZWN0Il9zKTsKIAogICAgIGdlbmVyYXRvci5lbWl0TGFiZWwoY3Vz
dG9tLmdldCgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2Vy
L0RlYnVnZ2VyQ2FsbEZyYW1lLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9E
ZWJ1Z2dlckNhbGxGcmFtZS5jcHAKaW5kZXggYTMxZmMxZjE1ZDRiODM4OTQ4ZjQyYjRjZjFjMDlj
NDdkMzk5NTA3YS4uZTAyZmI4MTdkM2ZmYjYxMDYwODBjYTkwN2YxMTJmYzY5ZDQ0NjBhZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1l
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJDYWxsRnJh
bWUuY3BwCkBAIC0xNDUsNyArMTQ1LDcgQEAgU3RyaW5nIERlYnVnZ2VyQ2FsbEZyYW1lOjpmdW5j
dGlvbk5hbWUoKSBjb25zdAogICAgIGlmIChpc1RhaWxEZWxldGVkKCkpIHsKICAgICAgICAgaWYg
KEpTRnVuY3Rpb24qIGZ1bmMgPSBqc0R5bmFtaWNDYXN0PEpTRnVuY3Rpb24qPih2bSwgbV9zaGFk
b3dDaGlja2VuRnJhbWUuY2FsbGVlKSkKICAgICAgICAgICAgIHJldHVybiBmdW5jLT5jYWxjdWxh
dGVkRGlzcGxheU5hbWUodm0pOwotICAgICAgICByZXR1cm4gbV9zaGFkb3dDaGlja2VuRnJhbWUu
Y29kZUJsb2NrLT5pbmZlcnJlZE5hbWUoKS5kYXRhKCk7CisgICAgICAgIHJldHVybiBTdHJpbmcg
eyBtX3NoYWRvd0NoaWNrZW5GcmFtZS5jb2RlQmxvY2stPmluZmVycmVkTmFtZSgpLmRhdGEoKSB9
OwogICAgIH0KIAogICAgIHJldHVybiBtX3ZhbGlkTWFjaGluZUZyYW1lLT5mcmllbmRseUZ1bmN0
aW9uTmFtZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0Rl
YnVnZ2VyU2NvcGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2Vy
U2NvcGUuY3BwCmluZGV4IDA0Yjk0ZjVlNWNhY2NjOWZkNTMxNGVhODBiOTJkODQzYWIzMWZhYjIu
LmU3NmE0MWYzYWM2ODdjOGY1ZWQ0ZGVhYWVlOTgxYWQ5MjNiOTVhOWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RS
VUNUSUJMRShEZWJ1Z2dlclNjb3BlKTsKIAotY29uc3QgQ2xhc3NJbmZvIERlYnVnZ2VyU2NvcGU6
OnNfaW5mbyA9IHsgIkRlYnVnZ2VyU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gRGVidWdnZXJTY29wZTo6c19pbmZvID0geyAiRGVidWdnZXJTY29wZSJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEZWJ1Z2dlclNjb3Bl
KSB9OwogCiBEZWJ1Z2dlclNjb3BlKiBEZWJ1Z2dlclNjb3BlOjpjcmVhdGUoVk0mIHZtLCBKU1Nj
b3BlKiBzY29wZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXBTbmFwc2hvdEJ1aWxkZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNu
YXBzaG90QnVpbGRlci5jcHAKaW5kZXggYThjZGU4ODE1MTc1N2NkN2RkYTQ5MGQ0NDQ1ODI3OGVh
M2FmOGUxOS4uZjBhODE5MzI0OWYwNjNjNjUwM2NiNzdlNzJiZTJjNzg3MTc2YjM5YyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFNuYXBzaG90QnVpbGRlci5jcHAK
QEAgLTU3NSw3ICs1NzUsNyBAQCBTdHJpbmcgSGVhcFNuYXBzaG90QnVpbGRlcjo6anNvbihGdW5j
dGlvbjxib29sIChjb25zdCBIZWFwU25hcHNob3ROb2RlJik+IGFsbG93TgogICAgICAgICAgICAg
anNvbi5hcHBlbmQoc25hcHNob3ROb2RlLnZhbHVlKCkuaWRlbnRpZmllcik7CiAKICAgICAgICAg
ICAgIC8vIE1heWJlIHdlIHNob3VsZCBqdXN0IGFsd2F5cyBlbmNvZGUgdGhlIHJvb3QgbmFtZXMu
Ci0gICAgICAgICAgICBjb25zdCBjaGFyKiByb290TmFtZSA9IHJvb3RNYXJrUmVhc29uRGVzY3Jp
cHRpb24oaXQudmFsdWUubWFya1JlYXNvbik7CisgICAgICAgICAgICBhdXRvIHJvb3ROYW1lID0g
cm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihpdC52YWx1ZS5tYXJrUmVhc29uKTsKICAgICAgICAg
ICAgIGF1dG8gcmVzdWx0ID0gbGFiZWxJbmRleGVzLmFkZChyb290TmFtZSwgbmV4dExhYmVsSW5k
ZXgpOwogICAgICAgICAgICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICAgICAgICAg
IG5leHRMYWJlbEluZGV4Kys7CkBAIC01ODMsNyArNTgzLDcgQEAgU3RyaW5nIEhlYXBTbmFwc2hv
dEJ1aWxkZXI6Ompzb24oRnVuY3Rpb248Ym9vbCAoY29uc3QgSGVhcFNuYXBzaG90Tm9kZSYpPiBh
bGxvd04KIAogICAgICAgICAgICAgdW5zaWduZWQgcmVhY2hhYmlsaXR5UmVhc29uSW5kZXggPSAw
OwogICAgICAgICAgICAgaWYgKGl0LnZhbHVlLnJlYWNoYWJpbGl0eUZyb21PcGFxdWVSb290UmVh
c29ucykgewotICAgICAgICAgICAgICAgIGF1dG8gcmVzdWx0ID0gbGFiZWxJbmRleGVzLmFkZChp
dC52YWx1ZS5yZWFjaGFiaWxpdHlGcm9tT3BhcXVlUm9vdFJlYXNvbnMsIG5leHRMYWJlbEluZGV4
KTsKKyAgICAgICAgICAgICAgICBhdXRvIHJlc3VsdCA9IGxhYmVsSW5kZXhlcy5hZGQoU3RyaW5n
IHsgaXQudmFsdWUucmVhY2hhYmlsaXR5RnJvbU9wYXF1ZVJvb3RSZWFzb25zIH0sIG5leHRMYWJl
bEluZGV4KTsKICAgICAgICAgICAgICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpCiAgICAgICAg
ICAgICAgICAgICAgIG5leHRMYWJlbEluZGV4Kys7CiAgICAgICAgICAgICAgICAgcmVhY2hhYmls
aXR5UmVhc29uSW5kZXggPSByZXN1bHQuaXRlcmF0b3ItPnZhbHVlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uY3BwCmluZGV4IDk0MzkzOWNjZTc5YTE3YmRi
ZGZlMWJhYTE2NzFkZDcyM2YyY2NkOWEuLjY1MjI0YjliM2ViNzIyMWUxNTM5Nzk1Yzg3ODFmNmE0
NDg1NDQ3NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJr
UmVhc29uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Sb290TWFya1JlYXNv
bi5jcHAKQEAgLTMwLDExICszMCwxMSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgY2hh
ciogcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihSb290TWFya1JlYXNvbiByZWFzb24pCitBU0NJ
SUxpdGVyYWwgcm9vdE1hcmtSZWFzb25EZXNjcmlwdGlvbihSb290TWFya1JlYXNvbiByZWFzb24p
CiB7CiAjZGVmaW5lIENBU0VfUk9PVF9NQVJLX1JFQVNPTihyZWFzb24pIFwKICAgICBjYXNlIEpT
Qzo6Um9vdE1hcmtSZWFzb246OnJlYXNvbjogXAotICAgICAgICByZXR1cm4gI3JlYXNvbjsgXAor
ICAgICAgICByZXR1cm4gI3JlYXNvbiIiX3M7IFwKIAogICAgIHN3aXRjaCAocmVhc29uKSB7CiAg
ICAgICAgIEZPUl9FQUNIX1JPT1RfTUFSS19SRUFTT04oQ0FTRV9ST09UX01BUktfUkVBU09OKQpA
QCAtNDIsNyArNDIsNyBAQCBjb25zdCBjaGFyKiByb290TWFya1JlYXNvbkRlc2NyaXB0aW9uKFJv
b3RNYXJrUmVhc29uIHJlYXNvbikKICN1bmRlZiBDQVNFX1JPT1RfTUFSS19SRUFTT04KIAogICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAiTm9uZSI7CisgICAgcmV0dXJuICJO
b25lIl9zOwogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9Sb290TWFya1JlYXNvbi5oCmluZGV4IGYyMDk2MzM2YTJkMmEzNjE1MzMwMTJiNDFlMjgy
ZjUwNTAzZTU1ZjQuLmE4NmY5YzRiOTk2MzI3ZjYyMjRiYTgyNTUyMmFlOGI2ZDc4NTFkNTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Jvb3RNYXJrUmVhc29uLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUm9vdE1hcmtSZWFzb24uaApAQCAtNTUsNyAr
NTUsNyBAQCBlbnVtIGNsYXNzIFJvb3RNYXJrUmVhc29uIDogdWludDhfdCB7CiAKICN1bmRlZiBE
RUNMQVJFX1JPT1RfTUFSS19SRUFTT04KIAotY29uc3QgY2hhciogcm9vdE1hcmtSZWFzb25EZXNj
cmlwdGlvbihSb290TWFya1JlYXNvbik7CitBU0NJSUxpdGVyYWwgcm9vdE1hcmtSZWFzb25EZXNj
cmlwdGlvbihSb290TWFya1JlYXNvbik7CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xvYmFsT2JqZWN0SW5zcGVj
dG9yQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTR2xv
YmFsT2JqZWN0SW5zcGVjdG9yQ29udHJvbGxlci5jcHAKaW5kZXggNmFlMTc5MzlmNDg4NThkNjA0
NmM5NTkyOTJkMzZjZmJjNjM0NzFmMS4uMjUxZGJlM2E1ZGU5MDZhNTZlMGQ3ODMwM2MyYmU0YjQ0
NTMxMTFkOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0ds
b2JhbE9iamVjdEluc3BlY3RvckNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyLmNwcApAQCAt
MTYzLDcgKzE2Myw3IEBAIHZvaWQgSlNHbG9iYWxPYmplY3RJbnNwZWN0b3JDb250cm9sbGVyOjph
cHBlbmRBUElCYWNrdHJhY2UoU2NyaXB0Q2FsbFN0YWNrJiBjYWxsCiAgICAgZm9yIChpbnQgaSA9
IDA7IGkgPCBzaXplOyArK2kpIHsKICAgICAgICAgYXV0byBkZW1hbmdsZWQgPSBTdGFja1RyYWNl
OjpkZW1hbmdsZShzdGFja1tpXSk7CiAgICAgICAgIGlmIChkZW1hbmdsZWQpCi0gICAgICAgICAg
ICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxGcmFtZShkZW1hbmdsZWQtPmRlbWFuZ2xlZE5h
bWUoKSA/IGRlbWFuZ2xlZC0+ZGVtYW5nbGVkTmFtZSgpIDogZGVtYW5nbGVkLT5tYW5nbGVkTmFt
ZSgpLCAiW25hdGl2ZSBjb2RlXSJfcywgbm9Tb3VyY2VJRCwgMCwgMCkpOworICAgICAgICAgICAg
Y2FsbFN0YWNrLmFwcGVuZChTY3JpcHRDYWxsRnJhbWUoU3RyaW5nIHsgZGVtYW5nbGVkLT5kZW1h
bmdsZWROYW1lKCkgPyBkZW1hbmdsZWQtPmRlbWFuZ2xlZE5hbWUoKSA6IGRlbWFuZ2xlZC0+bWFu
Z2xlZE5hbWUoKSB9LCAiW25hdGl2ZSBjb2RlXSJfcywgbm9Tb3VyY2VJRCwgMCwgMCkpOwogICAg
ICAgICBlbHNlCiAgICAgICAgICAgICBjYWxsU3RhY2suYXBwZW5kKFNjcmlwdENhbGxGcmFtZSgi
PyJfcywgIltuYXRpdmUgY29kZV0iX3MsIG5vU291cmNlSUQsIDAsIDApKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRI
b3N0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlw
dEhvc3QuY3BwCmluZGV4IDc4ZTc3MzRlMjYzOWI3ZTk4OGJkOTQ1OWIwNzZiZjdiY2U0YzA3MWUu
LjMwYTJiMDFlYTgwYjNlZTQ5YWVjMzlkNzMxZDZjNDQ5MDM3MDllMDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3Qu
Y3BwCkBAIC03Miw3ICs3Miw3IEBAIG5hbWVzcGFjZSBJbnNwZWN0b3IgewogCiB1c2luZyBuYW1l
c3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNJbmplY3RlZFNjcmlwdEhvc3Q6OnNfaW5m
byA9IHsgIkluamVjdGVkU2NyaXB0SG9zdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbmplY3RlZFNjcmlwdEhvc3QpIH07Citjb25zdCBD
bGFzc0luZm8gSlNJbmplY3RlZFNjcmlwdEhvc3Q6OnNfaW5mbyA9IHsgIkluamVjdGVkU2NyaXB0
SG9zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0luamVjdGVkU2NyaXB0SG9zdCkgfTsKIAogSlNJbmplY3RlZFNjcmlwdEhvc3Q6OkpT
SW5qZWN0ZWRTY3JpcHRIb3N0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxJbmpl
Y3RlZFNjcmlwdEhvc3Q+JiYgaW1wbCkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKQEAgLTMz
NiwxMyArMzM2LDEzIEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldEludGVybmFs
UHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgIHVuc2lnbmVk
IGluZGV4ID0gMDsKICAgICAgICAgSlNBcnJheSogYXJyYXkgPSBjb25zdHJ1Y3RFbXB0eUFycmF5
KGdsb2JhbE9iamVjdCwgbnVsbHB0cik7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2Nv
cGUsIEpTVmFsdWUoKSk7Ci0gICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmpl
Y3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAidGFy
Z2V0RnVuY3Rpb24iLCBib3VuZEZ1bmN0aW9uLT50YXJnZXRGdW5jdGlvbigpKSk7CisgICAgICAg
IGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdElu
dGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAidGFyZ2V0RnVuY3Rpb24iX3MsIGJvdW5kRnVu
Y3Rpb24tPnRhcmdldEZ1bmN0aW9uKCkpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgSlNWYWx1ZSgpKTsKLSAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJi
b3VuZFRoaXMiLCBib3VuZEZ1bmN0aW9uLT5ib3VuZFRoaXMoKSkpOworICAgICAgICBhcnJheS0+
cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFBy
b3BlcnR5KGdsb2JhbE9iamVjdCwgImJvdW5kVGhpcyJfcywgYm91bmRGdW5jdGlvbi0+Ym91bmRU
aGlzKCkpKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsK
ICAgICAgICAgaWYgKGJvdW5kRnVuY3Rpb24tPmJvdW5kQXJncygpKSB7CiAgICAgICAgICAgICBz
Y29wZS5yZWxlYXNlKCk7Ci0gICAgICAgICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFs
T2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwg
ImJvdW5kQXJncyIsIGJvdW5kRnVuY3Rpb24tPmJvdW5kQXJnc0NvcHkoZ2xvYmFsT2JqZWN0KSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJib3VuZEFyZ3MiX3Ms
IGJvdW5kRnVuY3Rpb24tPmJvdW5kQXJnc0NvcHkoZ2xvYmFsT2JqZWN0KSkpOwogICAgICAgICAg
ICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBhcnJheTsKQEAgLTM4
OCwxMCArMzg4LDEwIEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldEludGVybmFs
UHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgICAgICB1bnNp
Z25lZCBpbmRleCA9IDA7CiAgICAgICAgICAgICBKU0FycmF5KiBhcnJheSA9IGNvbnN0cnVjdEVt
cHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCAyKTsKICAgICAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7Ci0gICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImFycmF5IiwgaXRlcmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJy
YXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJu
YWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJhcnJheSJfcywgaXRlcmF0ZWRWYWx1ZSkpOwogICAg
ICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAg
ICAgIHNjb3BlLnJlbGVhc2UoKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChn
bG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2Jq
ZWN0LCAia2luZCIsIHRvU3RyaW5nKGtpbmQpKSk7CisgICAgICAgICAgICBhcnJheS0+cHV0RGly
ZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3BlcnR5
KGdsb2JhbE9iamVjdCwgImtpbmQiX3MsIHRvU3RyaW5nKGtpbmQpKSk7CiAgICAgICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgICAgIH0KIApAQCAtNDAyLDEwICs0MDIsMTAgQEAgSlNWYWx1ZSBK
U0luamVjdGVkU2NyaXB0SG9zdDo6Z2V0SW50ZXJuYWxQcm9wZXJ0aWVzKEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QKICAgICAgICAgICAgIHVuc2lnbmVkIGluZGV4ID0gMDsKICAgICAgICAg
ICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxPYmplY3QsIG51
bGxwdHIsIDIpOwogICAgICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgSlNWYWx1
ZSgpKTsKLSAgICAgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGlu
ZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAibWFwIiwgaXRl
cmF0ZWRWYWx1ZSkpOworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9i
amVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJt
YXAiX3MsIGl0ZXJhdGVkVmFsdWUpKTsKICAgICAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIEpTVmFsdWUoKSk7CiAgICAgICAgICAgICBzY29wZS5yZWxlYXNlKCk7Ci0gICAgICAg
ICAgICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1
Y3RJbnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgImtpbmQiLCB0b1N0cmluZyhraW5kKSkp
OworICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGdsb2JhbE9iamVjdCwgaW5kZXgr
KywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmplY3QsICJraW5kIl9zLCB0b1N0
cmluZyhraW5kKSkpOwogICAgICAgICAgICAgcmV0dXJuIGFycmF5OwogICAgICAgICB9CiAKQEAg
LTQxNiwxMCArNDE2LDEwIEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmdldEludGVy
bmFsUHJvcGVydGllcyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgICAgICAgICB1
bnNpZ25lZCBpbmRleCA9IDA7CiAgICAgICAgICAgICBKU0FycmF5KiBhcnJheSA9IGNvbnN0cnVj
dEVtcHR5QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCAyKTsKICAgICAgICAgICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIEpTVmFsdWUoKSk7Ci0gICAgICAgICAgICBhcnJheS0+cHV0
RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJbnRlcm5hbFByb3Bl
cnR5KGdsb2JhbE9iamVjdCwgInNldCIsIGl0ZXJhdGVkVmFsdWUpKTsKKyAgICAgICAgICAgIGFy
cmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVy
bmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAic2V0Il9zLCBpdGVyYXRlZFZhbHVlKSk7CiAgICAg
ICAgICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBKU1ZhbHVlKCkpOwogICAgICAgICAg
ICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAgICAgICAgYXJyYXktPnB1dERpcmVjdEluZGV4KGds
b2JhbE9iamVjdCwgaW5kZXgrKywgY29uc3RydWN0SW50ZXJuYWxQcm9wZXJ0eShnbG9iYWxPYmpl
Y3QsICJraW5kIiwgdG9TdHJpbmcoa2luZCkpKTsKKyAgICAgICAgICAgIGFycmF5LT5wdXREaXJl
Y3RJbmRleChnbG9iYWxPYmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHko
Z2xvYmFsT2JqZWN0LCAia2luZCJfcywgdG9TdHJpbmcoa2luZCkpKTsKICAgICAgICAgICAgIHJl
dHVybiBhcnJheTsKICAgICAgICAgfQogICAgIH0KQEAgLTQyOSw3ICs0MjksNyBAQCBKU1ZhbHVl
IEpTSW5qZWN0ZWRTY3JpcHRIb3N0OjpnZXRJbnRlcm5hbFByb3BlcnRpZXMoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdAogICAgICAgICBKU0FycmF5KiBhcnJheSA9IGNvbnN0cnVjdEVtcHR5
QXJyYXkoZ2xvYmFsT2JqZWN0LCBudWxscHRyLCAxKTsKICAgICAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgSlNWYWx1ZSgpKTsKICAgICAgICAgc2NvcGUucmVsZWFzZSgpOwotICAgICAg
ICBhcnJheS0+cHV0RGlyZWN0SW5kZXgoZ2xvYmFsT2JqZWN0LCBpbmRleCsrLCBjb25zdHJ1Y3RJ
bnRlcm5hbFByb3BlcnR5KGdsb2JhbE9iamVjdCwgInN0cmluZyIsIHN0cmluZ0l0ZXJhdG9yLT5p
dGVyYXRlZFN0cmluZygpKSk7CisgICAgICAgIGFycmF5LT5wdXREaXJlY3RJbmRleChnbG9iYWxP
YmplY3QsIGluZGV4KyssIGNvbnN0cnVjdEludGVybmFsUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCAi
c3RyaW5nIl9zLCBzdHJpbmdJdGVyYXRvci0+aXRlcmF0ZWRTdHJpbmcoKSkpOwogICAgICAgICBy
ZXR1cm4gYXJyYXk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aW5zcGVjdG9yL0pTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwCmlu
ZGV4IGFkYmI1ZTU3YzM0NTFjM2QzYTg4ZjgxOGY3ZWMwNTdjZWI1OTg4MjQuLjk4YjUyZWMyZTg0
ODVjZjdhYjFkMGEyMWE0ZDZhNzY2ZDVlZTllOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90
b3R5cGUuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNU
SU9OKGpzSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlRnVuY3Rpb25FdmFsdWF0ZVdpCiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlw
ZUF0dHJpYnV0ZUV2YWx1YXRlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGpz
SW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlQXR0cmlidXRlU2F2ZWRSZXN1bHRBbGlhcyk7CiAK
LWNvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZTo6c19pbmZvID0g
eyAiSW5qZWN0ZWRTY3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZTo6c19pbmZvID0geyAi
SW5qZWN0ZWRTY3JpcHRIb3N0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9OwogCiB2
b2lkIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAKaW5kZXgg
Mjg5OGNkZmViOTllZWFhYzkzZTI2ZWEwNjkyY2Q3MTIxZWM3ODYxMi4uOTU1NjllMGJjYmQ0MjU5
NTNmNWI2MmNkY2QxOTJhYTJkZDcxMGM5YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcApAQCAtMzUsNyAr
MzUsNyBAQCBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAiSmF2YVNj
cmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
SmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ph
dmFTY3JpcHRDYWxsRnJhbWUpIH07CiAKIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6SlNKYXZhU2Ny
aXB0Q2FsbEZyYW1lKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxKYXZhU2NyaXB0
Q2FsbEZyYW1lPiYmIGltcGwpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZVBy
b3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlw
dENhbGxGcmFtZVByb3RvdHlwZS5jcHAKaW5kZXggYWI1YThhY2QwMzJmYjgyMTU5MzRjN2U0MGEw
MzMyZjg2YTBiOGIxMi4uMTcwODhkODU5MzZkNTY3ZjllMDcxYzI2N2U1N2NjNmE2NGNiMWU4NiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRD
YWxsRnJhbWVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0
b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0phdmFTY3JpcHRDYWxsRnJhbWVBdHRy
aWJ1dGVUaGlzT2JqZWN0KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGpzSmF2
YVNjcmlwdENhbGxGcmFtZUF0dHJpYnV0ZVR5cGUpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oanNKYXZhU2NyaXB0Q2FsbEZyYW1lSXNUYWlsRGVsZXRlZCk7CiAKLWNvbnN0IENs
YXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFT
Y3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFT
Y3JpcHRDYWxsRnJhbWUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQXVkaXRBZ2VudC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBdWRpdEFnZW50LmNw
cAppbmRleCAzMGFjYWYzMzQ1ODA1Mzc0ZDgxZGJiMGIxYzVkNDlmZjdhZjBhNmUxLi5jMjg3NzM2
ZDcxZTdlYjllODg1NThmZmNkMGI3MDQ1MjViZmZjZjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBdWRpdEFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JBdWRpdEFn
ZW50LmNwcApAQCAtOTIsNyArOTIsNyBAQCBQcm90b2NvbDo6RXJyb3JTdHJpbmdPcjxzdGQ6OnR1
cGxlPFJlZjxQcm90b2NvbDo6UnVudGltZTo6UmVtb3RlT2JqZWN0Piwgc3RkOjpvcAogICAgIGlm
IChpbmplY3RlZFNjcmlwdC5oYXNOb1ZhbHVlKCkpCiAgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZChlcnJvclN0cmluZyk7CiAKLSAgICBhdXRvIGZ1bmN0aW9uU3RyaW5nID0gbWFrZVN0cmlu
ZygiKGZ1bmN0aW9uKFdlYkluc3BlY3RvckF1ZGl0KSB7IFwidXNlIHN0cmljdFwiOyByZXR1cm4g
ZXZhbChgKCIsIFN0cmluZyB7IHRlc3QgfS5yZXBsYWNlKCdgJywgIlxcYCIpLCAiKWApKFdlYklu
c3BlY3RvckF1ZGl0KTsgfSkiKTsKKyAgICBhdXRvIGZ1bmN0aW9uU3RyaW5nID0gbWFrZVN0cmlu
ZygiKGZ1bmN0aW9uKFdlYkluc3BlY3RvckF1ZGl0KSB7IFwidXNlIHN0cmljdFwiOyByZXR1cm4g
ZXZhbChgKCIsIFN0cmluZyB7IHRlc3QgfS5yZXBsYWNlKCdgJywgIlxcYCJfcyksICIpYCkoV2Vi
SW5zcGVjdG9yQXVkaXQpOyB9KSIpOwogCiAgICAgSW5qZWN0ZWRTY3JpcHQ6OkV4ZWN1dGVPcHRp
b25zIG9wdGlvbnM7CiAgICAgb3B0aW9ucy5vYmplY3RHcm91cCA9ICJhdWRpdCJfczsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRl
YnVnZ2VyQWdlbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKaW5kZXggZWYwZmY2MmE3OGEzYTFmNjBkNTUzMjlh
NTUzNzhiNGY1NTEyZmQ3ZC4uMGE2N2M4ZWFmNzhjMzJmYzkyYWNkZDYxYjdjMzljNjZjNThmZDI2
OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5z
cGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9hZ2VudHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAK
IAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNvbnN0IGNoYXIqIGNvbnN0IEluc3BlY3RvckRl
YnVnZ2VyQWdlbnQ6OmJhY2t0cmFjZU9iamVjdEdyb3VwID0gImJhY2t0cmFjZSI7Citjb25zdCBB
U0NJSUxpdGVyYWwgSW5zcGVjdG9yRGVidWdnZXJBZ2VudDo6YmFja3RyYWNlT2JqZWN0R3JvdXAg
PSAiYmFja3RyYWNlIl9zOwogCiAvLyBPYmplY3RzIGNyZWF0ZWQgYW5kIHJldGFpbmVkIGJ5IGV2
YWx1YXRpbmcgYnJlYWtwb2ludCBhY3Rpb25zIGFyZSBwdXQgaW50byBvYmplY3QgZ3JvdXBzCiAv
LyBhY2NvcmRpbmcgdG8gdGhlIGJyZWFrcG9pbnQgYWN0aW9uIGlkZW50aWZpZXIgYXNzaWduZWQg
YnkgdGhlIGZyb250ZW5kLiBBIGJyZWFrcG9pbnQgbWF5CkBAIC03NDEsNyArNzQxLDcgQEAgUHJv
dG9jb2w6OkVycm9yU3RyaW5nT3I8U3RyaW5nPiBJbnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpnZXRT
Y3JpcHRTb3VyY2UoY29uc3QgUHIKIHsKICAgICBhdXRvIGl0ID0gbV9zY3JpcHRzLmZpbmQocGFy
c2VJbnRlZ2VyQWxsb3dpbmdUcmFpbGluZ0p1bms8SlNDOjpTb3VyY2VJRD4oc2NyaXB0SWQpLnZh
bHVlX29yKDApKTsKICAgICBpZiAoaXQgPT0gbV9zY3JpcHRzLmVuZCgpKQotICAgICAgICByZXR1
cm4gbWFrZVVuZXhwZWN0ZWQoIk1pc3Npbmcgc2NyaXB0IGZvciBnaXZlbiBzY3JpcHRJZCIpOwor
ICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoIk1pc3Npbmcgc2NyaXB0IGZvciBnaXZlbiBz
Y3JpcHRJZCJfcyk7CiAKICAgICByZXR1cm4gaXQtPnZhbHVlLnNvdXJjZTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRlYnVn
Z2VyQWdlbnQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3RvckRlYnVnZ2VyQWdlbnQuaAppbmRleCBlMGNlNzY1YTQyY2FhNWZkMDYzNzAxNWRlYWRkNTI1
NGFhMzk3YTE4Li40ZmFlMWE5OWRiYTJjZmVjMjljOTM3Njg3YzQ0Y2U1ZTEzZjkwMDdlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JE
ZWJ1Z2dlckFnZW50LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2Vu
dHMvSW5zcGVjdG9yRGVidWdnZXJBZ2VudC5oCkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKIAog
ICAgIHN0YXRpYyBSZWZQdHI8SlNDOjpCcmVha3BvaW50PiBkZWJ1Z2dlckJyZWFrcG9pbnRGcm9t
UGF5bG9hZChQcm90b2NvbDo6RXJyb3JTdHJpbmcmLCBSZWZQdHI8SlNPTjo6T2JqZWN0PiYmIG9w
dGlvbnMpOwogCi0gICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGJhY2t0cmFjZU9iamVjdEdy
b3VwOworICAgIHN0YXRpYyBjb25zdCBBU0NJSUxpdGVyYWwgYmFja3RyYWNlT2JqZWN0R3JvdXA7
CiAKICAgICAvLyBJbnNwZWN0b3JBZ2VudEJhc2UKICAgICB2b2lkIGRpZENyZWF0ZUZyb250ZW5k
QW5kQmFja2VuZChGcm9udGVuZFJvdXRlciosIEJhY2tlbmREaXNwYXRjaGVyKikgZmluYWw7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0
b3JIZWFwQWdlbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9ySGVhcEFnZW50LmNwcAppbmRleCAyNGIzZWZkN2MyYTE4OTE5ZWI1MjVhMTU2NzIz
NGUzMDY3NTg2NmUwLi5iMDcxOGI5YzA1NjJiNTE3NDQyYTgwN2NmZmVjYWIxZjQ4NmFmZDVhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0
b3JIZWFwQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckhlYXBBZ2VudC5jcHAKQEAgLTI1NCw3ICsyNTQsNyBAQCBQcm90b2NvbDo6
RXJyb3JTdHJpbmdPcjxSZWY8UHJvdG9jb2w6OlJ1bnRpbWU6OlJlbW90ZU9iamVjdD4+IEluc3Bl
Y3RvckhlYXBBZ2VudAogCiAgICAgYXV0byBvYmplY3QgPSBpbmplY3RlZFNjcmlwdC53cmFwT2Jq
ZWN0KGNlbGwsIG9iamVjdEdyb3VwLCB0cnVlKTsKICAgICBpZiAoIW9iamVjdCkKLSAgICAgICAg
cmV0dXJuIG1ha2VVbmV4cGVjdGVkKCJJbnRlcm5hbCBlcnJvcjogdW5hYmxlIHRvIGNhc3QgT2Jq
ZWN0Iik7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBlY3RlZCgiSW50ZXJuYWwgZXJyb3I6IHVu
YWJsZSB0byBjYXN0IE9iamVjdCJfcyk7CiAKICAgICByZXR1cm4gb2JqZWN0LnJlbGVhc2VOb25O
dWxsKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFi
bGVBbGxvY2F0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9FeGVjdXRhYmxlQWxs
b2NhdG9yLmNwcAppbmRleCBhMTczMTVjYzY4NDk5NmEwNWM1YTViYTYxNTY0NDFlOGE5YmVkODVl
Li5jODY3ZWVkMjVhOWY1ODM3Yjk3ZmMzN2VhMTE0ZGRkYzJjYjY0YmYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAKQEAgLTExNTIs
OCArMTE1Miw4IEBAIHZvaWQgZHVtcEpJVE1lbW9yeShjb25zdCB2b2lkKiBkc3QsIGNvbnN0IHZv
aWQqIHNyYywgc2l6ZV90IHNpemUpCiAgICAgICAgIHN0YXRpYyB2b2lkIGZsdXNoKCkgV1RGX1JF
UVVJUkVTX0xPQ0soZHVtcEpJVE1lbW9yeUxvY2spCiAgICAgICAgIHsKICAgICAgICAgICAgIGlm
IChmZCA9PSAtMSkgewotICAgICAgICAgICAgICAgIFN0cmluZyBwYXRoID0gT3B0aW9uczo6ZHVt
cEpJVE1lbW9yeVBhdGgoKTsKLSAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKCIl
cGlkIiwgU3RyaW5nOjpudW1iZXIoZ2V0Q3VycmVudFByb2Nlc3NJRCgpKSk7CisgICAgICAgICAg
ICAgICAgU3RyaW5nIHBhdGggeyBPcHRpb25zOjpkdW1wSklUTWVtb3J5UGF0aCgpIH07CisgICAg
ICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgiJXBpZCJfcywgU3RyaW5nOjpudW1iZXIo
Z2V0Q3VycmVudFByb2Nlc3NJRCgpKSk7CiAgICAgICAgICAgICAgICAgZmQgPSBvcGVuKEZpbGVT
eXN0ZW06OmZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbihwYXRoKS5kYXRhKCksIE9fQ1JFQVQgfCBP
X1RSVU5DIHwgT19BUFBFTkQgfCBPX1dST05MWSB8IE9fRVhMT0NLIHwgT19OT05CTE9DSywgMDY2
Nik7CiAgICAgICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoZmQgIT0gLTEpOwogICAgICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ29kZS5jcHAKaW5kZXggNmJmNWExYzM2Mjg1
ZWQ3YjIwMDE2N2M0ODg3MjNkMDRkNjUwYmUwYy4uOTgzNmVhNWYzOWY3MGIwYTQ3YTc2ZTUyMzQ2
NmE5MzQ4NmZjMWNmOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRD
b2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVENvZGUuY3BwCkBAIC00
NCwyNCArNDQsMjQgQEAgSklUQ29kZTo6fkpJVENvZGUoKQogewogfQogCi1jb25zdCBjaGFyKiBK
SVRDb2RlOjp0eXBlTmFtZShKSVRUeXBlIGppdFR5cGUpCitBU0NJSUxpdGVyYWwgSklUQ29kZTo6
dHlwZU5hbWUoSklUVHlwZSBqaXRUeXBlKQogewogICAgIHN3aXRjaCAoaml0VHlwZSkgewogICAg
IGNhc2UgSklUVHlwZTo6Tm9uZToKLSAgICAgICAgcmV0dXJuICJOb25lIjsKKyAgICAgICAgcmV0
dXJuICJOb25lIl9zOwogICAgIGNhc2UgSklUVHlwZTo6SG9zdENhbGxUaHVuazoKLSAgICAgICAg
cmV0dXJuICJIb3N0IjsKKyAgICAgICAgcmV0dXJuICJIb3N0Il9zOwogICAgIGNhc2UgSklUVHlw
ZTo6SW50ZXJwcmV0ZXJUaHVuazoKLSAgICAgICAgcmV0dXJuICJMTEludCI7CisgICAgICAgIHJl
dHVybiAiTExJbnQiX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpCYXNlbGluZUpJVDoKLSAgICAgICAg
cmV0dXJuICJCYXNlbGluZSI7CisgICAgICAgIHJldHVybiAiQmFzZWxpbmUiX3M7CiAgICAgY2Fz
ZSBKSVRUeXBlOjpERkdKSVQ6Ci0gICAgICAgIHJldHVybiAiREZHIjsKKyAgICAgICAgcmV0dXJu
ICJERkciX3M7CiAgICAgY2FzZSBKSVRUeXBlOjpGVExKSVQ6Ci0gICAgICAgIHJldHVybiAiRlRM
IjsKKyAgICAgICAgcmV0dXJuICJGVEwiX3M7CiAgICAgZGVmYXVsdDoKICAgICAgICAgQ1JBU0go
KTsKLSAgICAgICAgcmV0dXJuICIiOworICAgICAgICByZXR1cm4gIiJfczsKICAgICB9CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQ29kZS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmgKaW5kZXggN2UzODMzODJiM2Y1MWNlNzQxODUz
MzhkNjBkZDYwMDVjM2E1YmNjNy4uZmIxMDZkZWZkMzA5ZjE3YjFiZDRkNmRjYTAxOTAyN2Y1OTBi
M2FiYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRDb2RlLmgKQEAgLTcwLDcgKzcwLDcgQEAg
cHVibGljOgogICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+IHVzaW5nIENvZGVQdHIgPSBNYWNyb0Fz
c2VtYmxlckNvZGVQdHI8dGFnPjsKICAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPiB1c2luZyBDb2Rl
UmVmID0gTWFjcm9Bc3NlbWJsZXJDb2RlUmVmPHRhZz47CiAKLSAgICBzdGF0aWMgY29uc3QgY2hh
ciogdHlwZU5hbWUoSklUVHlwZSk7CisgICAgc3RhdGljIEFTQ0lJTGl0ZXJhbCB0eXBlTmFtZShK
SVRUeXBlKTsKIAogICAgIHN0YXRpYyBKSVRUeXBlIGJvdHRvbVRpZXJKSVQoKQogICAgIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUT3BlcmF0aW9ucy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3BwCmluZGV4IGVmYzlhMGU4
YmIwMmUyMjU4MTE4NDYyM2QxMDYwYTg5MzVjZGYyYTEuLmFiNjZlYTQyOWQ0ODUwZWI3YzFiYmRl
NjZmYzkxZDJiZGQzY2VlMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
SklUT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVy
YXRpb25zLmNwcApAQCAtMTI3LDcgKzEyNyw3IEBAIHN0YXRpYyBKU1ZhbHVlIGdldFdyYXBwZWRW
YWx1ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamVjdCogdGFyCiAg
ICAgaWYgKHZhbHVlLmlzQ2FsbGFibGUodm0pKQogICAgICAgICBSRUxFQVNFX0FORF9SRVRVUk4o
c2NvcGUsIEpTUmVtb3RlRnVuY3Rpb246OnRyeUNyZWF0ZSh0YXJnZXRHbG9iYWxPYmplY3QsIHZt
LCBzdGF0aWNfY2FzdDxKU09iamVjdCo+KHZhbHVlLmFzQ2VsbCgpKSkpOwogCi0gICAgdGhyb3dU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgInZhbHVlIHBhc3NpbmcgYmV0d2VlbiByZWFs
bXMgbXVzdCBiZSBjYWxsYWJsZSBvciBwcmltaXRpdmUiKTsKKyAgICB0aHJvd1R5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAidmFsdWUgcGFzc2luZyBiZXR3ZWVuIHJlYWxtcyBtdXN0IGJl
IGNhbGxhYmxlIG9yIHByaW1pdGl2ZSJfcyk7CiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggZTdkM2NlOTQyMWU1ZGMxMmUwOWJhZjAyYmU1NTA0
MmFmYWQ2MDdkOC4uYmQyZWI4MTJjNmMzN2VkNTJlZGM2M2I5MjY3ZmNiY2E5ODE1OTRhMyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAKQEAgLTc0MSw3ICs3NDEsNyBAQCBzdGF0aWMgYm9vbCBzaGVsbFN1
cHBvcnRzUmljaFNvdXJjZUluZm8oY29uc3QgSlNHbG9iYWxPYmplY3QqKQogICAgIHJldHVybiBz
dXBwb3J0c1JpY2hTb3VyY2VJbmZvOwogfQogCi1jb25zdCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0
OjpzX2luZm8gPSB7ICJnbG9iYWwiLCAmSlNHbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJnbG9iYWwiX3MsICZKU0dsb2JhbE9iamVj
dDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbE9i
amVjdCkgfTsKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEdsb2JhbE9iamVjdDo6c19n
bG9iYWxPYmplY3RNZXRob2RUYWJsZSA9IHsKICAgICAmc2hlbGxTdXBwb3J0c1JpY2hTb3VyY2VJ
bmZvLAogICAgICZzaG91bGRJbnRlcnJ1cHRTY3JpcHQsCkBAIC0xMDkzLDEwICsxMDkzLDEwIEBA
IHByaXZhdGU6CiAgICAgU3RyaW5nIGNhY2hlUGF0aCgpIGNvbnN0CiAgICAgewogICAgICAgICBp
ZiAoIWNhY2hlRW5hYmxlZCgpKQotICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0
IGNoYXIqPihudWxscHRyKTsKKyAgICAgICAgICAgIHJldHVybiB7IH07CiAgICAgICAgIGNvbnN0
IGNoYXIqIGNhY2hlUGF0aCA9IE9wdGlvbnM6OmRpc2tDYWNoZVBhdGgoKTsKICAgICAgICAgU3Ry
aW5nIGZpbGVuYW1lID0gRmlsZVN5c3RlbTo6ZW5jb2RlRm9yRmlsZU5hbWUoRmlsZVN5c3RlbTo6
bGFzdENvbXBvbmVudE9mUGF0aElnbm9yaW5nVHJhaWxpbmdTbGFzaChzb3VyY2VPcmlnaW4oKS51
cmwoKS5maWxlU3lzdGVtUGF0aCgpKSk7Ci0gICAgICAgIHJldHVybiBGaWxlU3lzdGVtOjpwYXRo
QnlBcHBlbmRpbmdDb21wb25lbnQoY2FjaGVQYXRoLCBtYWtlU3RyaW5nKHNvdXJjZSgpLnRvU3Ry
aW5nKCkuaGFzaCgpLCAnLScsIGZpbGVuYW1lLCAiLmJ5dGVjb2RlLWNhY2hlIikpOworICAgICAg
ICByZXR1cm4gRmlsZVN5c3RlbTo6cGF0aEJ5QXBwZW5kaW5nQ29tcG9uZW50KFN0cmluZyB7IGNh
Y2hlUGF0aCB9LCBtYWtlU3RyaW5nKHNvdXJjZSgpLnRvU3RyaW5nKCkuaGFzaCgpLCAnLScsIGZp
bGVuYW1lLCAiLmJ5dGVjb2RlLWNhY2hlIikpOwogICAgIH0KIAogICAgIHZvaWQgbG9hZEJ5dGVj
b2RlKCkgY29uc3QKQEAgLTEyNTksMTAgKzEyNTksMTAgQEAgc3RhdGljIENTdHJpbmcgdG9DU3Ry
aW5nKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBUJiBz
dHIKICAgICAgICAgdGhyb3dPdXRPZk1lbW9yeUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUpOwog
ICAgICAgICBicmVhazsKICAgICBjYXNlIFVURjhDb252ZXJzaW9uRXJyb3I6OklsbGVnYWxTb3Vy
Y2U6Ci0gICAgICAgIHNjb3BlLnRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgY3JlYXRlRXJy
b3IoZ2xvYmFsT2JqZWN0LCAiSWxsZWdhbCBzb3VyY2UgZW5jb3VudGVyZWQgZHVyaW5nIFVURjgg
Y29udmVyc2lvbiIpKTsKKyAgICAgICAgc2NvcGUudGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0
LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJJbGxlZ2FsIHNvdXJjZSBlbmNvdW50ZXJlZCBk
dXJpbmcgVVRGOCBjb252ZXJzaW9uIl9zKSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgVVRG
OENvbnZlcnNpb25FcnJvcjo6U291cmNlRXhoYXVzdGVkOgotICAgICAgICBzY29wZS50aHJvd0V4
Y2VwdGlvbihnbG9iYWxPYmplY3QsIGNyZWF0ZUVycm9yKGdsb2JhbE9iamVjdCwgIlNvdXJjZSBl
eGhhdXN0ZWQgZHVyaW5nIFVURjggY29udmVyc2lvbiIpKTsKKyAgICAgICAgc2NvcGUudGhyb3dF
eGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBjcmVhdGVFcnJvcihnbG9iYWxPYmplY3QsICJTb3VyY2Ug
ZXhoYXVzdGVkIGR1cmluZyBVVEY4IGNvbnZlcnNpb24iX3MpKTsKICAgICAgICAgYnJlYWs7CiAg
ICAgZGVmYXVsdDoKICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTE0
NzcsNyArMTQ3Nyw3IEBAIHByaXZhdGU6CiAgICAgfQogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
Q01lbW9yeUZvb3RwcmludDo6c19pbmZvID0geyAiTWVtb3J5Rm9vdHByaW50IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NNZW1vcnlGb290
cHJpbnQpIH07Citjb25zdCBDbGFzc0luZm8gSlNDTWVtb3J5Rm9vdHByaW50OjpzX2luZm8gPSB7
ICJNZW1vcnlGb290cHJpbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNDTWVtb3J5Rm9vdHByaW50KSB9OwogCiBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oZnVuY3Rpb25NZW1vcnlVc2FnZVN0YXRpc3RpY3MsIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqKSkKIHsKQEAgLTE2NjIsMTMgKzE2NjIsMTMgQEAg
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUmVhZEZpbGUsIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnIKICAgICAgICAgU3RyaW5nIHR5cGUgPSBjYWxsRnJhbWUt
PmFyZ3VtZW50KDEpLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwogICAgICAgICBpZiAodHlwZSAh
PSAiYmluYXJ5IikKLSAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkV4cGVjdGVkICdiaW5hcnknIGFzIHNlY29uZCBhcmd1bWVudC4iKTsKKyAgICAg
ICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkV4cGVjdGVk
ICdiaW5hcnknIGFzIHNlY29uZCBhcmd1bWVudC4iX3MpOwogICAgICAgICBpc0JpbmFyeSA9IHRy
dWU7CiAgICAgfQogCiAgICAgUmVmUHRyPFVpbnQ4QXJyYXk+IGNvbnRlbnQgPSBmaWxsQnVmZmVy
V2l0aENvbnRlbnRzT2ZGaWxlKGZpbGVOYW1lKTsKICAgICBpZiAoIWNvbnRlbnQpCi0gICAgICAg
IHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkNvdWxkIG5vdCBvcGVu
IGZpbGUuIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29w
ZSwgIkNvdWxkIG5vdCBvcGVuIGZpbGUuIl9zKTsKIAogICAgIGlmICghaXNCaW5hcnkpCiAgICAg
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZzo6ZnJvbVVURjhX
aXRoTGF0aW4xRmFsbGJhY2soY29udGVudC0+ZGF0YSgpLCBjb250ZW50LT5sZW5ndGgoKSkpKTsK
QEAgLTE4MTIsNyArMTgxMiw3IEBAIHByaXZhdGU6CiAgICAgRklMRSogbV9kZXNjcmlwdG9yOwog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRmlsZURlc2NyaXB0b3I6OnNfaW5mbyA9IHsgIkZpbGVE
ZXNjcmlwdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU0ZpbGVEZXNjcmlwdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRmlsZURlc2Ny
aXB0b3I6OnNfaW5mbyA9IHsgIkZpbGVEZXNjcmlwdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZURlc2NyaXB0b3IpIH07CiAK
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbk9wZW5GaWxlLCAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpAQCAtMTg0Nyw3ICsx
ODQ3LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUmVhZGxpbmUsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnIKICAgICAgICAgbGluZS5hcHBlbmQoYyk7
CiAgICAgfQogICAgIGxpbmUuYXBwZW5kKCdcMCcpOwotICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUoanNTdHJpbmcoZ2xvYmFsT2JqZWN0LT52bSgpLCBsaW5lLmRhdGEoKSkpOworICAgIHJldHVy
biBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcoZ2xvYmFsT2JqZWN0LT52bSgpLCBTdHJpbmcgeyBs
aW5lLmRhdGEoKSB9KSk7CiB9CiAKIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvblBy
ZWNpc2VUaW1lLCAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqKSkKQEAgLTE5MDEsNyArMTkw
MSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkNhbGxlcklzQkJRT3JPTUdD
b21waWxlZCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iCiAgICAgQ2FsbGVyRnVuY3RvciB3YXNtVG9K
U0ZyYW1lOwogICAgIFN0YWNrVmlzaXRvcjo6dmlzaXQoY2FsbEZyYW1lLCB2bSwgd2FzbVRvSlNG
cmFtZSk7CiAgICAgaWYgKCF3YXNtVG9KU0ZyYW1lLmNhbGxlckZyYW1lKCkgfHwgIXdhc21Ub0pT
RnJhbWUuY2FsbGVyRnJhbWUoKS0+aXNBbnlXYXNtQ2FsbGVlKCkpCi0gICAgICAgIHJldHVybiB0
aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImNhbGxlciBpcyBub3QgYSB3YXNtLT5q
cyBpbXBvcnQgZnVuY3Rpb24iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxP
YmplY3QsIHNjb3BlLCAiY2FsbGVyIGlzIG5vdCBhIHdhc20tPmpzIGltcG9ydCBmdW5jdGlvbiJf
cyk7CiAKICAgICAvLyBXZSBoYXZlIGEgd3JhcHBlciBmcmFtZSB0aGF0IHdlIGdlbmVyYXRlIGZv
ciBpbXBvcnRzLiBJZiB3ZSBldmVyIGNhbiBkaXJlY3QgY2FsbCBmcm9tIHdhc20gd2Ugd291bGQg
bmVlZCB0byBjaGFuZ2UgdGhpcy4KICAgICBBU1NFUlQoIXdhc21Ub0pTRnJhbWUuY2FsbGVyRnJh
bWUoKS0+Y2FsbGVlKCkuaXNXYXNtKCkpOwpAQCAtMjUyNCw3ICsyNTI0LDcgQEAgSlNDX0RFRklO
RV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uU2V0VGltZW91dCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIENhbGwKICAgICB2bS5kZWZlcnJlZFdvcmtUaW1lci0+c2NoZWR1bGVXb3JrU29v
bih0aWNrZXQsIFtjYWxsYmFja10oRGVmZXJyZWRXb3JrVGltZXI6OlRpY2tldCkgewogICAgICAg
ICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gY2FsbGJhY2stPmdsb2JhbE9iamVjdCgp
OwogICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdzOwotICAgICAgICBjYWxsKGdsb2Jh
bE9iamVjdCwgY2FsbGJhY2ssIGpzVW5kZWZpbmVkKCksIGFyZ3MsICJZb3Ugc2hvdWxkbid0IHNl
ZSB0aGlzLi4uIik7CisgICAgICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRl
ZmluZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iX3MpOwogICAgIH0pOwog
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CiB9CkBAIC0yODEzLDkg
KzI4MTMsOSBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25XZWJBc3NlbWJseU1l
bW9yeU1vZGUsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsTwogCiAgICAgaWYgKEpTT2JqZWN0KiBv
YmplY3QgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmdldE9iamVjdCgpKSB7CiAgICAgICAgIGlm
IChhdXRvKiBtZW1vcnkgPSBqc0R5bmFtaWNDYXN0PEpTV2ViQXNzZW1ibHlNZW1vcnkqPih2bSwg
b2JqZWN0KSkKLSAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0s
IG1ha2VTdHJpbmcobWVtb3J5LT5tZW1vcnkoKS5tb2RlKCkpKSk7CisgICAgICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBTdHJpbmcgeyBtYWtlU3RyaW5nKG1lbW9y
eS0+bWVtb3J5KCkubW9kZSgpKSB9KSk7CiAgICAgICAgIGlmIChhdXRvKiBpbnN0YW5jZSA9IGpz
RHluYW1pY0Nhc3Q8SlNXZWJBc3NlbWJseUluc3RhbmNlKj4odm0sIG9iamVjdCkpCi0gICAgICAg
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzU3RyaW5nKHZtLCBtYWtlU3RyaW5nKGluc3Rh
bmNlLT5tZW1vcnlNb2RlKCkpKSk7CisgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KGpzU3RyaW5nKHZtLCBTdHJpbmcgeyBtYWtlU3RyaW5nKGluc3RhbmNlLT5tZW1vcnlNb2RlKCkp
IH0pKTsKICAgICB9CiAKICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiV2ViQXNzZW1ibHlNZW1vcnlNb2RlIGV4cGVjdHMgZWl0aGVyIGEgV2ViQXNzZW1i
bHkuTWVtb3J5IG9yIFdlYkFzc2VtYmx5Lkluc3RhbmNlIl9zKTsKQEAgLTMxODMsNyArMzE4Myw3
IEBAIHN0YXRpYyB2b2lkIHJ1bldpdGhPcHRpb25zKEdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBDb21tYW5kTGluZSYgb3B0aW9ucywgYm9vCiAgICAgICAgIEpTSW50ZXJuYWxQcm9taXNlKiBw
cm9taXNlID0gbnVsbHB0cjsKICAgICAgICAgYm9vbCBpc01vZHVsZSA9IG9wdGlvbnMubV9tb2R1
bGUgfHwgc2NyaXB0c1tpXS5zY3JpcHRUeXBlID09IFNjcmlwdDo6U2NyaXB0VHlwZTo6TW9kdWxl
OwogICAgICAgICBpZiAoc2NyaXB0c1tpXS5jb2RlU291cmNlID09IFNjcmlwdDo6Q29kZVNvdXJj
ZTo6RmlsZSkgewotICAgICAgICAgICAgZmlsZU5hbWUgPSBzY3JpcHRzW2ldLmFyZ3VtZW50Owor
ICAgICAgICAgICAgZmlsZU5hbWUgPSBTdHJpbmcgeyBzY3JpcHRzW2ldLmFyZ3VtZW50IH07CiAg
ICAgICAgICAgICBpZiAoc2NyaXB0c1tpXS5zdHJpY3RNb2RlID09IFNjcmlwdDo6U3RyaWN0TW9k
ZTo6U3RyaWN0KQogICAgICAgICAgICAgICAgIHNjcmlwdEJ1ZmZlci5hcHBlbmQoIlwidXNlIHN0
cmljdFwiO1xuIiwgc3RybGVuKCJcInVzZSBzdHJpY3RcIjtcbiIpKTsKIApAQCAtMzQzMCw3ICsz
NDMwLDcgQEAgdm9pZCBDb21tYW5kTGluZTo6cGFyc2VBcmd1bWVudHMoaW50IGFyZ2MsIGNoYXIq
KiBhcmd2KQogICAgICAgICAgICAgaWYgKCsraSA9PSBhcmdjKQogICAgICAgICAgICAgICAgIHBy
aW50VXNhZ2VTdGF0ZW1lbnQoKTsKICAgICAgICAgICAgIE9wdGlvbnM6OnNldE9wdGlvbigidXNl
UHJvZmlsZXI9MSIpOwotICAgICAgICAgICAgbV9wcm9maWxlck91dHB1dCA9IGFyZ3ZbaV07Cisg
ICAgICAgICAgICBtX3Byb2ZpbGVyT3V0cHV0ID0gU3RyaW5nIHsgYXJndltpXSB9OwogICAgICAg
ICAgICAgY29udGludWU7CiAgICAgICAgIH0KICAgICAgICAgaWYgKCFzdHJjbXAoYXJnLCAiLW0i
KSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50U2xvd1Bh
dGhzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5jcHAK
aW5kZXggZGE2MDBlYTAwZjBjOGQ2NDNhNTdmNjZmYjVmOWIwZTNhMzU2ODNhOC4uN2I0ODI3ZWYz
YzIzNjcyMDVkYzhkMjM5ZWE0MmE4MTdhMzk4Mjc5NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwCkBAIC0yMzI4LDkgKzIzMjgsOSBAQCBzdGF0
aWMgdm9pZCBoYW5kbGVWYXJhcmdzQ2hlY2twb2ludChWTSYgdm0sIENhbGxGcmFtZSogY2FsbEZy
YW1lLCBKU0dsb2JhbE9iamVjdAogCiAgICAgSlNWYWx1ZSByZXN1bHQ7CiAgICAgaWYgKE9wY29k
ZTo6b3Bjb2RlSUQgIT0gb3BfY29uc3RydWN0X3ZhcmFyZ3MpCi0gICAgICAgIHJlc3VsdCA9IGNh
bGwoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV9jYWxsZWUp
LCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90aGlzVmFsdWUpLCBhcmdzLCAiIik7
CisgICAgICAgIHJlc3VsdCA9IGNhbGwoZ2xvYmFsT2JqZWN0LCBnZXRPcGVyYW5kKGNhbGxGcmFt
ZSwgYnl0ZWNvZGUubV9jYWxsZWUpLCBnZXRPcGVyYW5kKGNhbGxGcmFtZSwgYnl0ZWNvZGUubV90
aGlzVmFsdWUpLCBhcmdzLCAiIl9zKTsKICAgICBlbHNlCi0gICAgICAgIHJlc3VsdCA9IGNvbnN0
cnVjdChnbG9iYWxPYmplY3QsIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX2NhbGxl
ZSksIGdldE9wZXJhbmQoY2FsbEZyYW1lLCBieXRlY29kZS5tX3RoaXNWYWx1ZSksIGFyZ3MsICIi
KTsKKyAgICAgICAgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgZ2V0T3BlcmFuZChj
YWxsRnJhbWUsIGJ5dGVjb2RlLm1fY2FsbGVlKSwgZ2V0T3BlcmFuZChjYWxsRnJhbWUsIGJ5dGVj
b2RlLm1fdGhpc1ZhbHVlKSwgYXJncywgIiJfcyk7CiAKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9O
KHNjb3BlLCB2b2lkKCkpOwogICAgIGNhbGxGcmFtZS0+dW5jaGVja2VkUihieXRlY29kZS5tX2Rz
dCkgPSByZXN1bHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xl
eGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCmluZGV4IDhj
ZWU5ZjA5Y2E4YjEwMTkyY2NjMmE4YjliZDFjMGM3MDAyZWMyYzkuLmJlMTQwMzg5N2VhODdmODdj
NWRiOThjOTAwZmI0ZWNkZWM0MDY5ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvTGV4ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4
ZXIuY3BwCkBAIC0yNjg1LDcgKzI2ODUsNyBAQCBKU1Rva2VuVHlwZSBMZXhlcjxUPjo6c2NhblJl
Z0V4cChKU1Rva2VuKiB0b2tlblJlY29yZCwgVUNoYXIgcGF0dGVyblByZWZpeCkKICAgICAgICAg
bV9lcnJvciA9IHRydWU7CiAgICAgICAgIFN0cmluZyBjb2RlUG9pbnQgPSBTdHJpbmc6OmZyb21D
b2RlUG9pbnQoY3VycmVudENvZGVQb2ludCgpKTsKICAgICAgICAgaWYgKCFjb2RlUG9pbnQpCi0g
ICAgICAgICAgICBjb2RlUG9pbnQgPSAiYGludmFsaWQgdW5pY29kZSBjaGFyYWN0ZXJgIjsKKyAg
ICAgICAgICAgIGNvZGVQb2ludCA9ICJgaW52YWxpZCB1bmljb2RlIGNoYXJhY3RlcmAiX3M7CiAg
ICAgICAgIG1fbGV4RXJyb3JNZXNzYWdlID0gbWFrZVN0cmluZygiSW52YWxpZCBub24tbGF0aW4g
Y2hhcmFjdGVyIGluIFJleEV4cCBsaXRlcmFsJ3MgZmxhZ3MgJyIsIGdldFRva2VuKCp0b2tlblJl
Y29yZCksIGNvZGVQb2ludCwgIiciKTsKICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCA1NTI2ZjVjOWExMjUwMDgx
MzNlOTE4ZTI2ZWYzMjQ3YTg1ZGUyMzg5Li44MmVjMjVhOGJmZTNiNDU2ZjMwNjc1OTY2YjBmNDk2
MTM1MWE2NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC01
MDA5LDcgKzUwMDksNyBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNz
aW9uIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZVByaW1hcnlFeHByZQogICAgICAgICBUcmVlRXhw
cmVzc2lvbiByZSA9IGNvbnRleHQuY3JlYXRlUmVnRXhwKGxvY2F0aW9uLCAqcGF0dGVybiwgKmZs
YWdzLCBzdGFydCk7CiAgICAgICAgIGlmICghcmUpIHsKICAgICAgICAgICAgIFlhcnI6OkVycm9y
Q29kZSBlcnJvckNvZGUgPSBZYXJyOjpjaGVja1N5bnRheChwYXR0ZXJuLT5zdHJpbmcoKSwgZmxh
Z3MtPnN0cmluZygpKTsKLSAgICAgICAgICAgIHJlZ2V4RmFpbChZYXJyOjplcnJvck1lc3NhZ2Uo
ZXJyb3JDb2RlKSk7CisgICAgICAgICAgICByZWdleEZhaWwoU3RyaW5nIHsgWWFycjo6ZXJyb3JN
ZXNzYWdlKGVycm9yQ29kZSkgfSk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIHJlOwogICAg
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fic3RyYWN0TW9k
dWxlUmVjb3JkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fic3RyYWN0TW9k
dWxlUmVjb3JkLmNwcAppbmRleCA0MjViOGZhZDEzODBlNzNjNjhlODIxNmRlNDViZWQ0NmRiYWFk
ZTU4Li5lOTM4MmQ0OTQzMmM5MmVjODVlMzMxZGQ1YmUzMzE1MGEzNmNmMTliIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BYnN0cmFjdE1vZHVsZVJlY29yZC5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQWJzdHJhY3RNb2R1bGVSZWNvcmQu
Y3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBBYnN0cmFjdE1vZHVsZVJlY29yZEludGVy
bmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CiB9IC8vIG5hbWVz
cGFjZSBBYnN0cmFjdE1vZHVsZVJlY29yZEludGVybmFsCiAKLWNvbnN0IENsYXNzSW5mbyBBYnN0
cmFjdE1vZHVsZVJlY29yZDo6c19pbmZvID0geyAiQWJzdHJhY3RNb2R1bGVSZWNvcmQiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFic3RyYWN0
TW9kdWxlUmVjb3JkKSB9OworY29uc3QgQ2xhc3NJbmZvIEFic3RyYWN0TW9kdWxlUmVjb3JkOjpz
X2luZm8gPSB7ICJBYnN0cmFjdE1vZHVsZVJlY29yZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBYnN0cmFjdE1vZHVsZVJlY29yZCkgfTsK
IAogQWJzdHJhY3RNb2R1bGVSZWNvcmQ6OkFic3RyYWN0TW9kdWxlUmVjb3JkKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IElkZW50aWZpZXImIG1vZHVsZUtleSkKICAgICA6IEJh
c2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0FnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTliZGI3Yzg1ZGFh
ZmU1NmNiZjgxYmU2YjRlNzVlZjdkZTNiZDI3ZS4uMGY0OTViNjc4MzljMDNkZjQwZjA5ZjI5ZTE1
OThlMmU2NmFhN2Y1MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQWdncmVnYXRlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShBZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEFnZ3JlZ2F0
ZUVycm9yQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBZ2dyZWdhdGVFcnJvckNvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEFnZ3JlZ2F0ZUVycm9yQ29uc3RydWN0b3IpIH07CiAKIHN0YXRp
YyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxBZ2dyZWdhdGVFcnJvckNvbnN0cnVjdG9y
KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEFnZ3JlZ2F0ZUVy
cm9yQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUNvbnN0cnVjdG9yLmNwcAppbmRleCAwODg2ZjkzZjY1Y2Y1YzYxMWM1M2I0ZDhiNTJkNjQ1
YzNkNTMxZWJmLi5kN2IxMzg2NmEzMGJlZTIxOWQ3MTE0YjliODZmOTJhZWQ2YzFiNWI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNw
cApAQCAtMzQsNyArMzQsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19U
UklWSUFMTFlfREVTVFJVQ1RJQkxFKEFycmF5Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0lu
Zm8gQXJyYXlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAmYXJyYXlDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFycmF5Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXJyYXlDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2lu
Zm8sICZhcnJheUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJyYXlDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBBcnJheUNvbnN0cnVjdG9yLmx1
dC5oCiBAYmVnaW4gYXJyYXlDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IGQz
YWQyMWU1YmM5N2VhOTQ1MGM2Y2UwYjZmN2UwYzYyNTE3YzkxOTkuLjNmOTY4ZDIxZDUzN2RlN2Y2
YTJkOTEwYjgwMjM2YjM4ZGFjNzNiOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMSw3ICszMSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRvclBy
b3RvdHlwZTo6c19pbmZvID0geyAiQXJyYXkgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5SXRlcmF0b3JQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAi
QXJyYXkgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBBcnJheUl0
ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9BcnJheVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJh
eVByb3RvdHlwZS5jcHAKaW5kZXggMTgxNWUxNDdiOTY1ZWNjNjJhMmVlM2JlODhkOTQ4YTBjMGI0
ZjBlZC4uNTczYTE3YjBkYzBkOTBkMzQxOWEwMzY1MTYwYTQyYzQxNTAzZjNkYSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcApAQCAtNTcs
NyArNTcsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihhcnJheVByb3RvRnVu
Y0xhc3RJbmRleE9mKTsKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEFycmF5
UHJvdG90eXBlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotY29uc3QgQ2xhc3NJbmZv
IEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7IkFycmF5IiwgJkpTQXJyYXk6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheVByb3RvdHlwZSl9OworY29u
c3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSJfcywgJkpTQXJy
YXk6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheVBy
b3RvdHlwZSkgfTsKIAogQXJyYXlQcm90b3R5cGUqIEFycmF5UHJvdG90eXBlOjpjcmVhdGUoVk0m
IHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkK
IHsKQEAgLTI1NCw3ICsyNTQsNyBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBzdGQ6OnBhaXI8U3Bl
Y2llc0NvbnN0cnVjdFJlc3VsdCwgSlNPYmplY3QqPiBzcGVjaWVzQ29uc3RydQogICAgIE1hcmtl
ZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgYXJncy5hcHBlbmQoanNOdW1iZXIobGVuZ3RoKSk7
CiAgICAgQVNTRVJUKCFhcmdzLmhhc092ZXJmbG93ZWQoKSk7Ci0gICAgSlNPYmplY3QqIG5ld09i
amVjdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGNvbnN0cnVjdG9yLCBhcmdzLCAiU3BlY2ll
cyBjb25zdHJ1Y3Rpb24gZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciIpOworICAgIEpT
T2JqZWN0KiBuZXdPYmplY3QgPSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBjb25zdHJ1Y3Rvciwg
YXJncywgIlNwZWNpZXMgY29uc3RydWN0aW9uIGRpZCBub3QgZ2V0IGEgdmFsaWQgY29uc3RydWN0
b3IiX3MpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGV4Y2VwdGlvblJlc3VsdCk7
CiAgICAgcmV0dXJuIHN0ZDo6cGFpciB7IFNwZWNpZXNDb25zdHJ1Y3RSZXN1bHQ6OkNyZWF0ZWRP
YmplY3QsIG5ld09iamVjdCB9OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnJvbVN5bmNJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5k
ZXggMzIwOTU5YTk5MDQ3MTUzYWNlYjM5YWRiZGIwZjIxNDEyNjFmYWY5ZS4uY2U4ZGFlZWU0ZmRk
MmExODQxYjhjZmY4NGRiMzAzMWFkMGFmMTdhNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5
cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0Zy
b21TeW5jSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAmYXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGcm9tU3luY0l0
ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnJvbVN5bmNJdGVyYXRv
clByb3RvdHlwZTo6c19pbmZvID0geyAiQXN5bmNGcm9tU3luY0l0ZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCAmYXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGcm9tU3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBB
c3luY0Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGU6OkFzeW5jRnJvbVN5bmNJdGVyYXRvclByb3Rv
dHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5j
dGlvbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5j
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggZjdmYWM1OGJjNDk4YmUwY2QyY2E0NGQ1ZTNm
YTJiZDA2MTFjZjYwOS4uNGNmN2Q2ZmIzODAzYjU2MDIwMGNkMjU2YjU0NmIwZTUzNmZmYzU4ZCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0Z1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQXN5bmNGdW5jdGlvbkNv
bnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiQXN5bmNGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQXN5bmNG
dW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNhbGxBc3luY0Z1bmN0aW9uQ29uc3RydWN0b3IpOwogc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0QXN5bmNGdW5jdGlvbkNvbnN0cnVjdG9y
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jRnVuY3Rp
b25Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5j
dGlvblByb3RvdHlwZS5jcHAKaW5kZXggNDUxZDEwOTM3ZDY0MmM3ZDI2YWVlMDJlMzVmODVkNWVh
OGIzN2QxZi4uNWZmMTUyY2FmNWMxODU1NWRmZTBmYzMwZjZjZDIwNzkzMzk5NmEwMiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNGdW5jdGlvblBy
b3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBBc3luY0Z1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0Z1bmN0
aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShBc3luY0Z1bmN0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFzeW5jRnVuY3Rp
b25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNGdW5jdGlvblByb3Rv
dHlwZSkgfTsKIAogQXN5bmNGdW5jdGlvblByb3RvdHlwZTo6QXN5bmNGdW5jdGlvblByb3RvdHlw
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNDOjpKU05vbkZpbmFsT2Jq
ZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yLmNwcApp
bmRleCAxMmM5YWJlNDU3NmM5ZWI5ZTNhYjQ3Yjg4MmIyZGI2NmM2ZTIxZDc1Li41N2FlOWIwM2Ex
YTUzOTM0NzgyNThlZTk1Y2E3MTYyMjg1MTlkZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yRnVuY3Rpb25D
b25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBc3luY0dlbmVyYXRvckZ1bmN0aW9u
Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JG
dW5jdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFz
eW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJF
X0hPU1RfRlVOQ1RJT04oY2FsbEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RBc3luY0dlbmVyYXRvckZ1
bmN0aW9uQ29uc3RydWN0b3IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXN5bmNHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcAppbmRl
eCA4YjQwNDg1NDdmOGZkYmNhNTU5N2IzOGE5N2Y4MDQ5YjI5ZDQ3MTg3Li42ZjQ2M2NmZTNiNDU1
MDk3OTY4OWRmNzE1Mjk4MjkyYzI4MWQzN2FlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5j
R2VuZXJhdG9yRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAi
QXN5bmNHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlKSB9
OwogCiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlOjpBc3luY0dlbmVyYXRvckZ1bmN0
aW9uUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU0M6OkpT
Tm9uRmluYWxPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAwZTZk
Y2I1M2Q2MzgwOTU1NTUyZGQwYzdmM2QxMjYwZTcyM2RmNThjLi5jZjIyMThkZTVhYWI5ZmZmNTcz
ODFmNTFkNzBhNDRhY2NiMWZiYTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Bc3luY0dlbmVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQXN5bmNHZW5lcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0b3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgJmFz
eW5jR2VuZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXN5bmNHZW5lcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gQXN5bmNHZW5lcmF0
b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZv
LCAmYXN5bmNHZW5lcmF0b3JQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShBc3luY0dlbmVyYXRvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBBc3luY0dl
bmVyYXRvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGFzeW5jR2VuZXJhdG9yUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FzeW5jSXRlcmF0
b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVy
YXRvclByb3RvdHlwZS5jcHAKaW5kZXggY2M2OTg2MzIxMDczMGZjZmY0MTBjN2U5ZmI5MmM0OTJk
MGQwN2NkZS4uZmEzYTAzY2FiYWRhN2NhNzFlNTIwZWUwMjdmNTg4MTVhN2M1ZjI4YSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXN5bmNJdGVyYXRvclBy
b3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBBc3luY0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBc3luY0l0ZXJh
dG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShBc3luY0l0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFzeW5jSXRlcmF0
b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkFzeW5jSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXN5bmNJdGVyYXRvclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBBc3luY0l0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BdG9taWNzT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0F0b21pY3NPYmplY3QuY3BwCmluZGV4IDllZTQ1ZGY0NzNhNDkx
NTc1ZDk1NWJjZjc5OTBlZmQwNWI4MGFkODYuLmUyZjgxNzU4MWNjMTgwNmU4Nzg0M2Q1ZDhmOTk1
NDMxMGY2OTJmN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0
b21pY3NPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0F0b21p
Y3NPYmplY3QuY3BwCkBAIC01NSw3ICs1NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShBdG9taWNzT2JqZWN0KTsKIEZPUl9FQUNIX0FUT01JQ1NfRlVOQyhERUNM
QVJFX0ZVTkNfUFJPVE8pCiAjdW5kZWYgREVDTEFSRV9GVU5DX1BST1RPCiAKLWNvbnN0IENsYXNz
SW5mbyBBdG9taWNzT2JqZWN0OjpzX2luZm8gPSB7ICJBdG9taWNzIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShBdG9taWNzT2JqZWN0KSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEF0b21pY3NPYmplY3Q6OnNfaW5mbyA9IHsgIkF0b21pY3MiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQXRvbWlj
c09iamVjdCkgfTsKIAogQXRvbWljc09iamVjdDo6QXRvbWljc09iamVjdChWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50Q29uc3RydWN0
b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50Q29uc3RydWN0b3Iu
Y3BwCmluZGV4IDViODVkOWIxYjc1NDVmNjRmZjVhMmJmYWExY2U4ZjU1MDY4MDdlOWQuLjc3NTZj
YWUxYTcwNTc0MTg1Y2U5NzU3ZTdjMjNiN2IzNWQyOTRlMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ1LDcgKzQ1
LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RS
VUNUSUJMRShCaWdJbnRDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBCaWdJbnRDb25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmYmlnSW50Q29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRDb25zdHJ1
Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCaWdJbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZiaWdJbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJpZ0ludENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3Vy
Y2UgZm9yIEJpZ0ludENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gYmlnSW50Q29uc3RydWN0b3JU
YWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50T2Jq
ZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludE9iamVjdC5jcHAK
aW5kZXggZjE3ZTU3Yzg1ZGQ2YTBjYTUxZGZlNjViNmMzNGNlYmQyY2Y4YWFjYi4uMjdmYTY4Y2Yw
MzMxOGQ4ODI5MzQyNDU1MjNiYmUxOWRiOGUyMzUzNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CaWdJbnRPYmplY3QuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQmlnSW50
T2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIEJpZ0ludE9iamVjdDo6c19pbmZvID0geyAiQmln
SW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShCaWdJbnRPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQmlnSW50T2JqZWN0OjpzX2luZm8g
PSB7ICJCaWdJbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoQmlnSW50T2JqZWN0KSB9OwogCiAKIEJpZ0ludE9iamVjdCogQmlnSW50T2Jq
ZWN0OjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVl
IGJpZ0ludCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0lu
dFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9CaWdJbnRQcm90
b3R5cGUuY3BwCmluZGV4IDk1MjIwOWQzNzE2NTVjNjA5OGRiNmJlZTdiNWIzZTc1NmY2ZjliZGYu
Ljc4NjVhNzlmZTZlZDgyYmM1MDdmNTBkODAzZmEzMDNiYmZmYTZmNzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0JpZ0ludFByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQmlnSW50UHJvdG90eXBlLmNwcApAQCAtNDgsNyAr
NDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihiaWdJbnRQcm90b0Z1bmNW
YWx1ZU9mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBCaWdJbnRQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkJpZ0ludCIsICZCYXNlOjpzX2luZm8sICZiaWdJbnRQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCaWdJbnRQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gQmlnSW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJCaWdJbnQiX3Ms
ICZCYXNlOjpzX2luZm8sICZiaWdJbnRQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShCaWdJbnRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgQmlnSW50UHJv
dG90eXBlLmx1dC5oCiBAYmVnaW4gYmlnSW50UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCmluZGV4IGVl
MjUwNmY5MjYzNzU1NmQ3NDM5ODZiOTExNTU2NmVmMWJiYWFhMzUuLmZhMmNmZGJjNjRiZWQwMzI0
NzMxMWM3MDhlY2NjODdlNDMwZWE2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcApAQCAtMjgsNyArMjgsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEJv
b2xlYW5Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gQm9vbGVhbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuQ29uc3Ry
dWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxCb29sZWFu
Q29uc3RydWN0b3IpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0
V2l0aEJvb2xlYW5Db25zdHJ1Y3Rvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Jvb2xlYW5PYmplY3QuY3BwCmluZGV4IGI4YzYyNDZkMWZiOTBiY2Q1ODI0NmVhZWY0Mzky
ZmEyZDI2YWJmZmEuLjMxMWNhYzgxZmQxY2U1MzUzMmZkNTNkOTVhNjkwNTFmODI0NGZjYTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCkBA
IC0yNyw3ICsyNyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29s
ZWFuT2JqZWN0OjpzX2luZm8gPSB7ICJCb29sZWFuIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OworY29uc3QgQ2xh
c3NJbmZvIEJvb2xlYW5PYmplY3Q6OnNfaW5mbyA9IHsgIkJvb2xlYW4iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhbk9iamVjdCkg
fTsKIAogQm9vbGVhbk9iamVjdDo6Qm9vbGVhbk9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Cb29sZWFuUHJvdG90eXBlLmNwcAppbmRleCBhZjAwN2EzNWVhMGU0
MGY1MzdmMTY3Y2QzMGYzNTNmNjk3ZGEwMzViLi44NzdlMzg1MGUyMzAzZTZlNjY1MzkxZGY2NTFj
Yjg3NDQxOGRlMmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihib29sZWFuUHJvdG9GdW5jVmFsdWVPZik7CiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVh
biIsICZCb29sZWFuT2JqZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90eXBlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQm9vbGVhblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBCb29sZWFuUHJvdG90eXBlOjpzX2luZm8gPSB7ICJCb29sZWFuIl9zLCAmQm9vbGVhbk9i
amVjdDo6c19pbmZvLCAmYm9vbGVhblByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEJvb2xlYW5Qcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgQm9vbGVhblBy
b3RvdHlwZS5sdXQuaAogQGJlZ2luIGJvb2xlYW5Qcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQnl0ZWNvZGVDYWNoZUVycm9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0J5dGVjb2RlQ2FjaGVFcnJvci5jcHAKaW5kZXgg
YTlmY2IzZWYyNTQ5NjJlYzljMGQ4NDFmZjdhMmZmZjFjNjE4NmZlZi4uZGQ5YzBlMzZjYWRmMmZh
OWYzNjQzY2UxNGMzNzIzYTg5MjUxNDQ2NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQnl0ZWNvZGVDYWNoZUVycm9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9CeXRlY29kZUNhY2hlRXJyb3IuY3BwCkBAIC0zNyw3ICszNyw3IEBAIGJv
b2wgQnl0ZWNvZGVDYWNoZUVycm9yOjpTdGFuZGFyZEVycm9yOjppc1ZhbGlkKCkgY29uc3QKIAog
U3RyaW5nIEJ5dGVjb2RlQ2FjaGVFcnJvcjo6U3RhbmRhcmRFcnJvcjo6bWVzc2FnZSgpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIHNhZmVTdHJlcnJvcihtX2Vycm5vKS5kYXRhKCk7CisgICAgcmV0dXJu
IFN0cmluZyB7IHNhZmVTdHJlcnJvcihtX2Vycm5vKS5kYXRhKCkgfTsKIH0KIAogYm9vbCBCeXRl
Y29kZUNhY2hlRXJyb3I6OldyaXRlRXJyb3I6OmlzVmFsaWQoKSBjb25zdApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuY3BwCmluZGV4IDk3ODlkNzczYzFjMzRlNjBhYTA1
MjRjZmM3MmU3YTFiNjIzMGNhOWUuLmI2NDIyNjYzOGY3ZjQ1YWU3ZTJkZDljNWU3Yzk2NWQ3M2Vi
YTQzODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NhbGxEYXRh
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5jcHAKQEAg
LTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotSlNWYWx1ZSBjYWxsKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IEFy
Z0xpc3QmIGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0pTVmFsdWUgY2FsbChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBB
cmdMaXN0JiBhcmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIHJldHVybiBj
YWxsKGdsb2JhbE9iamVjdCwgZnVuY3Rpb25PYmplY3QsIGZ1bmN0aW9uT2JqZWN0LCBhcmdzLCBl
cnJvck1lc3NhZ2UpOwogfQogCi1KU1ZhbHVlIGNhbGwoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNWYWx1ZSBmdW5jdGlvbk9iamVjdCwgSlNWYWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFy
Z0xpc3QmIGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0pTVmFsdWUgY2FsbChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBKU1ZhbHVl
IHRoaXNWYWx1ZSwgY29uc3QgQXJnTGlzdCYgYXJncywgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2Fn
ZSkKIHsKICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9
IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ2FsbERhdGEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nh
bGxEYXRhLmgKaW5kZXggNzNhOWMxNTVlZDQzZmEyMGI1ODljMThiMWZmZWZmNGM0NDk0NTIzYy4u
MWFjOTNlODEyMDhiOGQwZmMzZTZiMmUyZDYxMTAyMDJkN2FmYjA3YSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FsbERhdGEuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9DYWxsRGF0YS5oCkBAIC02MCw4ICs2MCw4IEBAIGVudW0gY2xhc3Mg
UHJvZmlsaW5nUmVhc29uIDogdWludDhfdCB7CiB9OwogCiAvLyBDb252ZW5pZW5jZSB3cmFwcGVy
IHNvIHlvdSBkb24ndCBuZWVkIHRvIGRlYWwgd2l0aCBDYWxsRGF0YSB1bmxlc3MgeW91IGFyZSBn
b2luZyB0byB1c2UgaXQuCi1KU19FWFBPUlRfUFJJVkFURSBKU1ZhbHVlIGNhbGwoSlNHbG9iYWxP
YmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hh
ciogZXJyb3JNZXNzYWdlKTsKLUpTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2Jh
bE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25z
dCBBcmdMaXN0JiwgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklWQVRF
IEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIGNv
bnN0IEFyZ0xpc3QmLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKTsKK0pTX0VYUE9SVF9QUklW
QVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3Qs
IEpTVmFsdWUgdGhpc1ZhbHVlLCBjb25zdCBBcmdMaXN0JiwgQVNDSUlMaXRlcmFsIGVycm9yTWVz
c2FnZSk7CiAKIEpTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgY2FsbChKU0dsb2JhbE9iamVjdCos
IEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IENhbGxEYXRhJiwgSlNWYWx1ZSB0aGlzVmFs
dWUsIGNvbnN0IEFyZ0xpc3QmKTsKIEpTX0VYUE9SVF9QUklWQVRFIEpTVmFsdWUgY2FsbChKU0ds
b2JhbE9iamVjdCosIEpTVmFsdWUgZnVuY3Rpb25PYmplY3QsIGNvbnN0IENhbGxEYXRhJiwgSlNW
YWx1ZSB0aGlzVmFsdWUsIGNvbnN0IEFyZ0xpc3QmLCBOYWtlZFB0cjxFeGNlcHRpb24+JiByZXR1
cm5lZEV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9DbGFzc0luZm8uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5o
CmluZGV4IDI0NjQwMmUwYzVkMGJiNzdmNDZmOGUwZTFhMjI5ZDFiY2FiZGI3OGIuLmE1NzY5Mjhl
ZDhhYmMxMjVkOTU4NTQ4ZGFkMGQ5ZDBkNDk1MDc3OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NsYXNzSW5mby5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0NsYXNzSW5mby5oCkBAIC0xNzYsNyArMTc2LDcgQEAgc3RydWN0IENsYXNzSW5m
byB7CiAgICAgdXNpbmcgQ2hlY2tKU0Nhc3RTbmlwcGV0RnVuY3Rpb25QdHIgPSBSZWY8U25pcHBl
dD4gKCopKHZvaWQpOwogCiAgICAgLy8gQSBzdHJpbmcgZGVub3RpbmcgdGhlIGNsYXNzIG5hbWUu
IEV4YW1wbGU6ICJXaW5kb3ciLgotICAgIGNvbnN0IGNoYXIqIGNsYXNzTmFtZTsKKyAgICBBU0NJ
SUxpdGVyYWwgY2xhc3NOYW1lOwogICAgIC8vIFBvaW50ZXIgdG8gdGhlIGNsYXNzIGluZm9ybWF0
aW9uIG9mIHRoZSBiYXNlIGNsYXNzLgogICAgIC8vIG51bGxwdHJpZiB0aGVyZSBpcyBub25lLgog
ICAgIGNvbnN0IENsYXNzSW5mbyogcGFyZW50Q2xhc3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9DbG9uZWRBcmd1bWVudHMuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQ2xvbmVkQXJndW1lbnRzLmNwcAppbmRleCBkYTkwOGRhYzQ0MGJlNzY4
ODAyNDRhMDY1YmNkOWU3ZTE4NjdiNWNkLi45ZjUxYmVkM2RhYWZhOWIzODIxMDFmNjI0MjAzMDM5
NWZmNjRkMWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbG9u
ZWRBcmd1bWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Nsb25l
ZEFyZ3VtZW50cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJ
Q19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShDbG9uZWRBcmd1bWVudHMpOwogCi1j
b25zdCBDbGFzc0luZm8gQ2xvbmVkQXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENsb25l
ZEFyZ3VtZW50cykgfTsKK2NvbnN0IENsYXNzSW5mbyBDbG9uZWRBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShDbG9uZWRBcmd1bWVudHMpIH07CiAKIENsb25lZEFyZ3VtZW50czo6Q2xv
bmVkQXJndW1lbnRzKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEJ1dHRlcmZseSogYnV0
dGVyZmx5KQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlLCBidXR0ZXJmbHkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcAppbmRleCAyODg0ZTlhNGFjYjlkODk3
NjhhYTBjMzQ1ZDgzNjkwZTYzZDdlZjg2Li41MjYxZTMwNDliOWNiYjQ2YzJkMDJlZjI2MzRhM2M1
MmYyZDkyYzhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2Rl
Q2FjaGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5j
cHAKQEAgLTIzMyw3ICsyMzMsNyBAQCBVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSogQ29kZUNh
Y2hlOjpnZXRVbmxpbmtlZEdsb2JhbEZ1bmN0aW9uRXhlY3V0YWJsZShWTSYgdgogICAgIFN0YXRl
bWVudE5vZGUqIGZ1bmNEZWNsID0gcHJvZ3JhbS0+c2luZ2xlU3RhdGVtZW50KCk7CiAgICAgaWYg
KFVOTElLRUxZKCFmdW5jRGVjbCkpIHsKICAgICAgICAgSlNUb2tlbiB0b2tlbjsKLSAgICAgICAg
ZXJyb3IgPSBQYXJzZXJFcnJvcihQYXJzZXJFcnJvcjo6U3ludGF4RXJyb3IsIFBhcnNlckVycm9y
OjpTeW50YXhFcnJvcklycmVjb3ZlcmFibGUsIHRva2VuLCAiUGFyc2VyIGVycm9yIiwgLTEpOwor
ICAgICAgICBlcnJvciA9IFBhcnNlckVycm9yKFBhcnNlckVycm9yOjpTeW50YXhFcnJvciwgUGFy
c2VyRXJyb3I6OlN5bnRheEVycm9ySXJyZWNvdmVyYWJsZSwgdG9rZW4sICJQYXJzZXIgZXJyb3Ii
X3MsIC0xKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogICAgIEFTU0VSVChmdW5j
RGVjbC0+aXNGdW5jRGVjbE5vZGUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9Db21wbGV0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0NvbXBsZXRpb24uY3BwCmluZGV4IDNmYmYxZDhkMzM4M2E3YWIyMTcxYTkzOGFmYWU2OTYyYzdm
Y2IwY2YuLjE5ZDE2Y2I4MjQ4ZTlhMWY5ZmQ4YjhhMzE5OGU3NzZiNDI5MmM4MWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbXBsZXRpb24uY3BwCkBAIC04MCw3ICs4MCw3
IEBAIGJvb2wgY2hlY2tNb2R1bGVTeW50YXgoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Y29uc3QgU291cmNlQ29kZSYgc291cmNlLCBQCiAgICAgaWYgKCFtb2R1bGVQcm9ncmFtTm9kZSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5hbWUoUHJp
dmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSIpOworICAgIFByaXZhdGVO
YW1lIHByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlvbiwgIkVudHJ5UG9pbnRNb2R1
bGUiX3MpOwogICAgIE1vZHVsZUFuYWx5emVyIG1vZHVsZUFuYWx5emVyKGdsb2JhbE9iamVjdCwg
SWRlbnRpZmllcjo6ZnJvbVVpZChwcml2YXRlTmFtZSksIHNvdXJjZSwgbW9kdWxlUHJvZ3JhbU5v
ZGUtPnZhckRlY2xhcmF0aW9ucygpLCBtb2R1bGVQcm9ncmFtTm9kZS0+bGV4aWNhbFZhcmlhYmxl
cygpKTsKICAgICBtb2R1bGVBbmFseXplci5hbmFseXplKCptb2R1bGVQcm9ncmFtTm9kZSk7CiAg
ICAgcmV0dXJuIHRydWU7CkBAIC0xNzIsNyArMTcyLDcgQEAgSlNWYWx1ZSBldmFsdWF0ZVdpdGhT
Y29wZUV4dGVuc2lvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTb3VyY2VD
b2QKIHN0YXRpYyBTeW1ib2wqIGNyZWF0ZVN5bWJvbEZvckVudHJ5UG9pbnRNb2R1bGUoVk0mIHZt
KQogewogICAgIC8vIEdlbmVyYXRlIHRoZSB1bmlxdWUga2V5IGZvciB0aGUgc291cmNlLXByb3Zp
ZGVkIG1vZHVsZS4KLSAgICBQcml2YXRlTmFtZSBwcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVz
Y3JpcHRpb24sICJFbnRyeVBvaW50TW9kdWxlIik7CisgICAgUHJpdmF0ZU5hbWUgcHJpdmF0ZU5h
bWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiRW50cnlQb2ludE1vZHVsZSJfcyk7CiAgICAg
cmV0dXJuIFN5bWJvbDo6Y3JlYXRlKHZtLCBwcml2YXRlTmFtZS51aWQoKSk7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVPYmplY3QuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAKaW5kZXggMGRk
ZTk4NzcyNzY2NTU5ODQ2OTY0NWY0Mzk2YzIzMmM1NjZlNDNhMS4uYjlhYWJkNGMxNDhkMjRkMzI0
ZjY2MjI4YmExYzg0ZWJmMzE5ZTc0ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29uc29sZU9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29uc29sZU9iamVjdC5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04oY29uc29sZVByb3RvRnVuY1JlY29yZCk7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjb25zb2xlUHJvdG9GdW5jUmVjb3JkRW5kKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnNvbGVQcm90b0Z1bmNTY3JlZW5zaG90KTsKIAot
Y29uc3QgQ2xhc3NJbmZvIENvbnNvbGVPYmplY3Q6OnNfaW5mbyA9IHsgImNvbnNvbGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENvbnNvbGVP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQ29uc29sZU9iamVjdDo6c19pbmZvID0geyAiY29u
c29sZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShDb25zb2xlT2JqZWN0KSB9OwogCiBDb25zb2xlT2JqZWN0OjpDb25zb2xlT2JqZWN0KFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBz
dHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db25z
dHJ1Y3REYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERh
dGEuY3BwCmluZGV4IDk2ZTY3ZDhkZTI2MmNhMGRmYTFiZjExYjMxMDIxZjMwMTZiY2M1MzcuLjYy
ZmJhNmE3MTFmOGJiMjg1NGQ4NzNmNTc4YTNiMGFiODk3ODZhZDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuY3BwCkBAIC0zMywxMiArMzMsMTIg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLUpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBjb25zdHJ1Y3Rvck9iamVjdCwgY29uc3QgQXJnTGlz
dCYgYXJncywgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlKQorSlNPYmplY3QqIGNvbnN0cnVjdChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGNvbnN0cnVjdG9yT2JqZWN0LCBj
b25zdCBBcmdMaXN0JiBhcmdzLCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlKQogewogICAgIHJl
dHVybiBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBjb25zdHJ1Y3Rvck9iamVjdCwgY29uc3RydWN0
b3JPYmplY3QsIGFyZ3MsIGVycm9yTWVzc2FnZSk7CiB9CiAKLUpTT2JqZWN0KiBjb25zdHJ1Y3Qo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBjb25zdHJ1Y3Rvck9iamVjdCwg
SlNWYWx1ZSBuZXdUYXJnZXQsIGNvbnN0IEFyZ0xpc3QmIGFyZ3MsIGNvbnN0IGNoYXIqIGVycm9y
TWVzc2FnZSkKK0pTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlNWYWx1ZSBjb25zdHJ1Y3Rvck9iamVjdCwgSlNWYWx1ZSBuZXdUYXJnZXQsIGNvbnN0IEFy
Z0xpc3QmIGFyZ3MsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgVk0mIHZtID0g
Z2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BF
KHZtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVj
dERhdGEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnN0cnVjdERhdGEuaApp
bmRleCA1NDUyYWUyYWI4ZThkNGEyNDU2YWYxYzVlZjUyMWQ4NmU4YTZlY2MzLi43OTE2MWNhMDUx
MmZjYjFkNTMwZTYyYjYwZjE4ZjY3Y2NhY2VkYjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db25zdHJ1Y3REYXRhLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29uc3RydWN0RGF0YS5oCkBAIC0zNSw4ICszNSw4IEBAIG5hbWVzcGFjZSBK
U0MgewogY2xhc3MgSlNPYmplY3Q7CiAKIC8vIENvbnZlbmllbmNlIHdyYXBwZXIgc28geW91IGRv
bid0IG5lZWQgdG8gZGVhbCB3aXRoIENhbGxEYXRhIHVubGVzcyB5b3UgYXJlIGdvaW5nIHRvIHVz
ZSBpdC4KLUpTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNHbG9iYWxPYmpl
Y3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBjb25zdCBBcmdMaXN0JiwgY29uc3QgY2hhciog
ZXJyb3JNZXNzYWdlKTsKLUpTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBjb25zdHJ1Y3QoSlNH
bG9iYWxPYmplY3QqLCBKU1ZhbHVlIGZ1bmN0aW9uT2JqZWN0LCBKU1ZhbHVlIG5ld1RhcmdldCwg
Y29uc3QgQXJnTGlzdCYsIGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSk7CitKU19FWFBPUlRfUFJJ
VkFURSBKU09iamVjdCogY29uc3RydWN0KEpTR2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSBmdW5jdGlv
bk9iamVjdCwgY29uc3QgQXJnTGlzdCYsIEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpOworSlNf
RVhQT1JUX1BSSVZBVEUgSlNPYmplY3QqIGNvbnN0cnVjdChKU0dsb2JhbE9iamVjdCosIEpTVmFs
dWUgZnVuY3Rpb25PYmplY3QsIEpTVmFsdWUgbmV3VGFyZ2V0LCBjb25zdCBBcmdMaXN0JiwgQVND
SUlMaXRlcmFsIGVycm9yTWVzc2FnZSk7CiAKIEpTX0VYUE9SVF9QUklWQVRFIEpTT2JqZWN0KiBj
b25zdHJ1Y3QoSlNHbG9iYWxPYmplY3QqLCBKU1ZhbHVlIGNvbnN0cnVjdG9yLCBjb25zdCBDYWxs
RGF0YSYsIGNvbnN0IEFyZ0xpc3QmLCBKU1ZhbHVlIG5ld1RhcmdldCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4
IGQxYzAyZjA1OWQwNDRmYTAzZTUzNDQ5MzVjYTBjMmZjYmY1MGZmODcuLmViZmNjNDM2NjFjNjA3
NzM3YTc5N2EyNDliMGVhZWM3YmE3YzM0YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcApAQCAtMzIsNiArMzIsNiBAQCBu
YW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KEN1c3RvbUdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlclNldHRlciIsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEN1c3RvbUdldHRlclNldHRlcjo6c19pbmZvID0geyAiQ3VzdG9tR2V0dGVyU2V0
dGVyIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEN1
c3RvbUdldHRlclNldHRlcikgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVy
LmNwcAppbmRleCA5N2U3MmUxNDJlYmE4NDg5NDM2M2YwNDM5Mjk5NWZhNWI5Y2RkMjUxLi43MWZk
YmU2YTJmOWZjYWQ3Nzk4ZTc4Y2E3MmNjNTdjMDA2ZDYzZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9ET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RPTUF0dHJpYnV0ZUdldHRlclNldHRlci5j
cHAKQEAgLTMyLDYgKzMyLDYgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNf
VFJJVklBTExZX0RFU1RSVUNUSUJMRShET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIpOwogCi1jb25z
dCBDbGFzc0luZm8gRE9NQXR0cmlidXRlR2V0dGVyU2V0dGVyOjpzX2luZm8gPSB7ICJET01BdHRy
aWJ1dGVHZXR0ZXJTZXR0ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKERPTUF0dHJpYnV0ZUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUF0dHJpYnV0ZUdl
dHRlclNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShET01BdHRyaWJ1dGVHZXR0ZXJTZXR0ZXIpIH07CiAKIH0gLy8gbmFtZXNwYWNl
IEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rv
ci5jcHAKaW5kZXggZTczN2IyZmEzOGRhNzA5OWM2MTBhY2Y5NzU0YmRmM2QwYTg5NjM4My4uNmQw
OTAyYzlmY2M5NGFkMGQ1MWU1MWRlMjhlYTJjOTY1Mjk0YzdhMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCkBAIC00MCw3ICs0MCw3
IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGRhdGVOb3cpOwogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmZGF0ZUNvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIERhdGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZkYXRlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShEYXRlQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
RGF0ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gZGF0ZUNvbnN0cnVjdG9yVGFibGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5zdGFuY2UuY3BwCmluZGV4IDUzMjVj
ZmZlZjMxOGE3MzdiYmJiYmU0ZWM2NDYwYmQ4OTY4ZTRkOTIuLmY4N2JiNjZjMDM2NzViMjY1NTMz
ZjE4OWJmNGRkOWRlMDg5NTg0MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0RhdGVJbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRGF0ZUluc3RhbmNlLmNwcApAQCAtMjcsNyArMjcsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0geyJEYXRlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEYXRlSW5zdGFu
Y2UpfTsKK2NvbnN0IENsYXNzSW5mbyBEYXRlSW5zdGFuY2U6OnNfaW5mbyA9IHsgIkRhdGUiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0
ZUluc3RhbmNlKSB9OwogCiBEYXRlSW5zdGFuY2U6OkRhdGVJbnN0YW5jZShWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBlLmNwcAppbmRleCA4NTQ1YTU1OWE3
MzI4YjU1MzdkYjgxMjgzYzk4YTYzOWQ2YzRhODNiLi40ZDA0YTUyYmVkOGZjMjIxM2I1MjFiZGE1
NmI3YjhjMzk1MWQxMTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9EYXRlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9E
YXRlUHJvdG90eXBlLmNwcApAQCAtMjEwLDcgKzIxMCw3IEBAIHN0YXRpYyBib29sIGZpbGxTdHJ1
Y3R1cmVzVXNpbmdEYXRlQXJncyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJh
bWUqCiAgICAgcmV0dXJuIG9rOwogfQogCi1jb25zdCBDbGFzc0luZm8gRGF0ZVByb3RvdHlwZTo6
c19pbmZvID0geyJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZGF0ZVByb3RvdHlwZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVQcm90b3R5cGUpfTsKK2NvbnN0IENsYXNz
SW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8s
ICZkYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZVBy
b3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBEYXRlUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4g
ZGF0ZVByb3RvdHlwZVRhYmxlCkBAIC0zNTgsMTIgKzM1OCwxMiBAQCBKU0NfREVGSU5FX0hPU1Rf
RlVOQ1RJT04oZGF0ZVByb3RvRnVuY1RvUHJpbWl0aXZlU3ltYm9sLCAoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbAogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBK
U1ZhbHVlIHRoaXNWYWx1ZSA9IGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCkudG9UaGlzKGdsb2JhbE9i
amVjdCwgRUNNQU1vZGU6OnN0cmljdCgpKTsKICAgICBpZiAoIXRoaXNWYWx1ZS5pc09iamVjdCgp
KQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAi
RGF0ZS5wcm90b3R5cGVbU3ltYm9sLnRvUHJpbWl0aXZlXSBleHBlY3RlZCB8dGhpc3wgdG8gYmUg
YW4gb2JqZWN0LiIpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsIHNjb3BlLCAiRGF0ZS5wcm90b3R5cGVbU3ltYm9sLnRvUHJpbWl0aXZlXSBleHBlY3RlZCB8
dGhpc3wgdG8gYmUgYW4gb2JqZWN0LiJfcyk7CiAgICAgSlNPYmplY3QqIHRoaXNPYmplY3QgPSBq
c0Nhc3Q8SlNPYmplY3QqPih0aGlzVmFsdWUpOwogICAgIEludGVncml0eTo6YXVkaXRTdHJ1Y3R1
cmVJRCh0aGlzT2JqZWN0LT5zdHJ1Y3R1cmVJRCgpKTsKIAogICAgIGlmICghY2FsbEZyYW1lLT5h
cmd1bWVudENvdW50KCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9QcmltaXRpdmVdIGV4cGVjdGVk
IGEgZmlyc3QgYXJndW1lbnQuIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGds
b2JhbE9iamVjdCwgc2NvcGUsICJEYXRlLnByb3RvdHlwZVtTeW1ib2wudG9QcmltaXRpdmVdIGV4
cGVjdGVkIGEgZmlyc3QgYXJndW1lbnQuIl9zKTsKIAogICAgIEpTVmFsdWUgaGludFZhbHVlID0g
Y2FsbEZyYW1lLT51bmNoZWNrZWRBcmd1bWVudCgwKTsKICAgICBQcmVmZXJyZWRQcmltaXRpdmVU
eXBlIHR5cGUgPSB0b1ByZWZlcnJlZFByaW1pdGl2ZVR5cGUoZ2xvYmFsT2JqZWN0LCBoaW50VmFs
dWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJn
dW1lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RpcmVjdEFyZ3VtZW50
cy5jcHAKaW5kZXggYmE0MmM2MTg3M2UzNzljMGQzZDJiMzhlNzczY2MxNzc2ZmU0ZDE1Ny4uYWNj
NjI5ZjBkMzBkMTQxMTM4MzVjNmVlMmM1YzJmMjdkMGFmMzc2ZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGlyZWN0QXJndW1lbnRzLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9EaXJlY3RBcmd1bWVudHMuY3BwCkBAIC0zMyw3ICszMyw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoRGlyZWN0QXJndW1lbnRzKTsKIAotY29uc3QgQ2xhc3NJbmZvIERpcmVjdEFyZ3VtZW50
czo6c19pbmZvID0geyAiQXJndW1lbnRzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShEaXJlY3RBcmd1bWVudHMpIH07Citjb25zdCBDbGFzc0lu
Zm8gRGlyZWN0QXJndW1lbnRzOjpzX2luZm8gPSB7ICJBcmd1bWVudHMiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRGlyZWN0QXJndW1lbnRz
KSB9OwogCiBEaXJlY3RBcmd1bWVudHM6OkRpcmVjdEFyZ3VtZW50cyhWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlLCB1bnNpZ25lZCBsZW5ndGgsIHVuc2lnbmVkIGNhcGFjaXR5KQogICAgIDog
R2VuZXJpY0FyZ3VtZW50cyh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Vycm9yLmgKaW5kZXggNTRiMTQ5NDU4ZmYyMjg3MGZkZGI4MzFmZWE5OTY3NGQyMmQxYTUyMi4u
OGU0OGJiMTRkZDYxZGM4MjNhMjgwMmRkMTgzZDUzNjhhNmFmZWZlZCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvci5oCkBAIC05Myw3ICs5Myw3IEBAIEpTX0VYUE9SVF9QUklWQVRF
IEpTVmFsdWUgdGhyb3dET01BdHRyaWJ1dGVTZXR0ZXJUeXBlRXJyb3IoSlNHbG9iYWxPYmplY3Qq
LCBUaHJvCiAvLyBDb252ZW5pZW5jZSB3cmFwcGVycywgd3JhcCByZXN1bHQgYXMgYW4gRW5jb2Rl
ZEpTVmFsdWUuCiBpbmxpbmUgdm9pZCB0aHJvd1ZNRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUsIEV4Y2VwdGlvbiogZXhjZXB0aW9uKSB7IHRocm93
RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGV4Y2VwdGlvbik7IH0KIGlubGluZSBFbmNv
ZGVkSlNWYWx1ZSB0aHJvd1ZNRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhy
b3dTY29wZSYgc2NvcGUsIEpTVmFsdWUgZXJyb3IpIHsgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0
aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBlcnJvcikpOyB9Ci1pbmxpbmUgRW5j
b2RlZEpTVmFsdWUgdGhyb3dWTUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRo
cm93U2NvcGUmIHNjb3BlLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFs
dWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVFcnJv
cihnbG9iYWxPYmplY3QsIGVycm9yTWVzc2FnZSkpKTsgfQoraW5saW5lIEVuY29kZWRKU1ZhbHVl
IHRocm93Vk1FcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBUaHJvd1Njb3BlJiBz
Y29wZSwgY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpIHsgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVFcnJvcihnbG9iYWxP
YmplY3QsIGVycm9yTWVzc2FnZSkpKTsgfQogaW5saW5lIEVuY29kZWRKU1ZhbHVlIHRocm93Vk1U
eXBlRXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgVGhyb3dTY29wZSYgc2NvcGUp
IHsgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNj
b3BlKSk7IH0KIGlubGluZSBFbmNvZGVkSlNWYWx1ZSB0aHJvd1ZNVHlwZUVycm9yKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUmIHNjb3BlLCBBU0NJSUxpdGVyYWwgZXJy
b3JNZXNzYWdlKSB7IHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dUeXBlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgZXJyb3JNZXNzYWdlKSk7IH0KIGlubGluZSBFbmNvZGVkSlNWYWx1ZSB0
aHJvd1ZNVHlwZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFRocm93U2NvcGUm
IHNjb3BlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkgeyByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsIGVycm9yTWVzc2FnZSkpOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3Iu
Y3BwCmluZGV4IDMwNjRkMTIwYTdmOGM0MjE4ZTExN2I1NjY1ZGI3ZWE1MDI4YTdiN2QuLjUwZDJl
ZjA0Y2EzMjcwNTEyYmRmZmUwMmMzYzE1NzAyZDIyOGYwMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoRXJyb3JDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvckNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJvckNvbnN0cnVj
dG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsRXJyb3JDb25z
dHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RFcnJv
ckNvbnN0cnVjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Vycm9ySW5zdGFuY2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJ
bnN0YW5jZS5jcHAKaW5kZXggNzM4ZTdmNGUxMjdlMTdkZWYyZjQ1OWM5OGJhMGE3NzI1MDU2NTk4
Yi4uMzUyYjdkMjk4M2MzYTk1ZTBhZGQ2MTYyOGIzMjA0ZDE4MGUzNmQ2MyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JJbnN0YW5jZS5jcHAKQEAgLTMxLDcgKzMx
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvckluc3RhbmNl
OjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBFcnJvckluc3RhbmNlOjpzX2luZm8gPSB7ICJFcnJvciJfcywgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFcnJv
ckluc3RhbmNlKSB9OwogCiBFcnJvckluc3RhbmNlOjpFcnJvckluc3RhbmNlKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEVycm9yVHlwZSBlcnJvclR5cGUpCiAgICAgOiBCYXNlKHZtLCBz
dHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJv
clByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvclByb3Rv
dHlwZS5jcHAKaW5kZXggZWY0MzFmMzk1ZTM0MjVhMjYzNTRlOTMyMGFjYzRmOTI1MmIzODI5Yy4u
YzY2YmZhODMwYzQxZDI3ZjkxYTMzMGI2NmI2MGEwYTlkMDdmNDczOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNwcApAQCAtMzgsNyArMzgs
NyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihlcnJvclByb3RvRnVuY1RvU3Ry
aW5nKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlw
ZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgJmVycm9yUHJvdG90eXBlVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gRXJyb3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6
OnNfaW5mbywgJmVycm9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoRXJyb3JQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgRXJyb3JQcm90b3R5cGUubHV0
LmgKIEBiZWdpbiBlcnJvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FdmFsRXhlY3V0YWJsZS5jcHAKaW5kZXggMWIyZjRmNTJhYjdiZmNlMzQwYjNj
Mzk1MjllMTgwNTcyY2QxNjQ0My4uZGQ4NDkzMzgyZmY2MTQxMGJiZWVlZGQwYmJlMjc3ZGM1MjA4
ZTYyZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXZhbEV4ZWN1
dGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V2YWxFeGVjdXRh
YmxlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEV2YWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJFdmFsRXhlY3V0YWJsZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1
dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkV2
YWxFeGVjdXRhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEV2YWxFeGVjdXRhYmxlKSB9OwogCiBFdmFsRXhlY3V0YWJsZTo6RXZhbEV4
ZWN1dGFibGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU291cmNlQ29kZSYg
c291cmNlLCBib29sIGluU3RyaWN0Q29udGV4dCwgRGVyaXZlZENvbnRleHRUeXBlIGRlcml2ZWRD
b250ZXh0VHlwZSwgYm9vbCBpc0Fycm93RnVuY3Rpb25Db250ZXh0LCBib29sIGlzSW5zaWRlT3Jk
aW5hcnlGdW5jdGlvbiwgRXZhbENvbnRleHRUeXBlIGV2YWxDb250ZXh0VHlwZSwgTmVlZHNDbGFz
c0ZpZWxkSW5pdGlhbGl6ZXIgbmVlZHNDbGFzc0ZpZWxkSW5pdGlhbGl6ZXIsIFByaXZhdGVCcmFu
ZFJlcXVpcmVtZW50IHByaXZhdGVCcmFuZFJlcXVpcmVtZW50KQogICAgIDogQmFzZShnbG9iYWxP
YmplY3QtPnZtKCkuZXZhbEV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIGdsb2JhbE9iamVjdC0+
dm0oKSwgc291cmNlLCBpblN0cmljdENvbnRleHQsIGRlcml2ZWRDb250ZXh0VHlwZSwgaXNBcnJv
d0Z1bmN0aW9uQ29udGV4dCwgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uLCBldmFsQ29udGV4dFR5
cGUsIE5vSW50cmluc2ljKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4Y2VwdGlv
bi5jcHAKaW5kZXggNGUyMDY0NjBiOWQyMDA2NzhmZmM0YWJlYTMxNjkwNTQxZDhmZmY1Zi4uZmIx
OTlmMzg3NjBhY2JlMGQzOTRiZTMwMTZmOWYyZGMyNzYyNjlkYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9FeGNlcHRpb24uY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRXhjZXB0aW9uOjpzX2luZm8gPSB7ICJFeGNl
cHRpb24iLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4
Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBFeGNlcHRpb246OnNfaW5mbyA9IHsgIkV4Y2Vw
dGlvbiJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
eGNlcHRpb24pIH07CiAKIEV4Y2VwdGlvbiogRXhjZXB0aW9uOjpjcmVhdGUoVk0mIHZtLCBKU1Zh
bHVlIHRocm93blZhbHVlLCBTdGFja0NhcHR1cmVBY3Rpb24gYWN0aW9uKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0aW9uSGVscGVycy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAppbmRleCAw
OTlmZjcxY2Q2MjY1YjhkMWNhOGM5MWUzNjExMzYxZWUwZWU3ZmEzLi5kMjEzNDM5NjQ3MzYwZTlj
YjViNWQ5Mzk2YWNhYTQxMmRjOGRjODRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcApAQCAtMTYxLDcgKzE2MSw3IEBAIHN0YXRp
YyBTdHJpbmcgbm90QUZ1bmN0aW9uU291cmNlQXBwZW5kZXIoY29uc3QgU3RyaW5nJiBvcmlnaW5h
bE1lc3NhZ2UsIGNvbnN0IFN0CiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1hdGVTb3Vy
Y2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJUKG9jY3Vy
cmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0byBub3RB
RnVuY3Rpb25JbmRleCA9IG9yaWdpbmFsTWVzc2FnZS5yZXZlcnNlRmluZCgiaXMgbm90IGEgZnVu
Y3Rpb24iKTsKKyAgICBhdXRvIG5vdEFGdW5jdGlvbkluZGV4ID0gb3JpZ2luYWxNZXNzYWdlLnJl
dmVyc2VGaW5kKCJpcyBub3QgYSBmdW5jdGlvbiJfcyk7CiAgICAgUkVMRUFTRV9BU1NFUlQobm90
QUZ1bmN0aW9uSW5kZXggIT0gbm90Rm91bmQpOwogICAgIFN0cmluZ1ZpZXcgZGlzcGxheVZhbHVl
OwogICAgIGlmIChvcmlnaW5hbE1lc3NhZ2UuaXM4Qml0KCkpIApAQCAtMTk3LDcgKzE5Nyw3IEBA
IHN0YXRpYyBTdHJpbmcgaW52YWxpZFBhcmFtZXRlckluU291cmNlQXBwZW5kZXIoY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbE1lc3NhZ2UsIGNvCiAgICAgICAgIHJldHVybiBkZWZhdWx0QXBwcm94aW1h
dGVTb3VyY2VFcnJvcihvcmlnaW5hbE1lc3NhZ2UsIHNvdXJjZVRleHQpOwogCiAgICAgQVNTRVJU
KG9jY3VycmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRFeGFjdFNvdXJjZSk7Ci0gICAgYXV0
byBpbkluZGV4ID0gc291cmNlVGV4dC5yZXZlcnNlRmluZCgiaW4iKTsKKyAgICBhdXRvIGluSW5k
ZXggPSBzb3VyY2VUZXh0LnJldmVyc2VGaW5kKCJpbiJfcyk7CiAgICAgaWYgKGluSW5kZXggPT0g
bm90Rm91bmQpIHsKICAgICAgICAgLy8gVGhpcyBzaG91bGQgYmFzaWNhbGx5IG5ldmVyIGhhcHBl
biwgc2luY2UgSlMgY29kZSBtdXN0IHVzZSB0aGUgbGl0ZXJhbAogICAgICAgICAvLyB0ZXh0ICJp
biIgZm9yIHRoZSBgaW5gIG9wZXJhdGlvbi4gSG93ZXZlciwgaWYgd2UgZmFpbCB0byBmaW5kICJp
biIKQEAgLTIxOCw3ICsyMTgsNyBAQCBpbmxpbmUgU3RyaW5nIGludmFsaWRQYXJhbWV0ZXJJbnN0
YW5jZW9mU291cmNlQXBwZW5kZXIoY29uc3QgU3RyaW5nJiBjb250ZW50LCBjbwogICAgICAgICBy
ZXR1cm4gZGVmYXVsdEFwcHJveGltYXRlU291cmNlRXJyb3Iob3JpZ2luYWxNZXNzYWdlLCBzb3Vy
Y2VUZXh0KTsKIAogICAgIEFTU0VSVChvY2N1cnJlbmNlID09IEVycm9ySW5zdGFuY2U6OkZvdW5k
RXhhY3RTb3VyY2UpOwotICAgIGF1dG8gaW5zdGFuY2VvZkluZGV4ID0gc291cmNlVGV4dC5yZXZl
cnNlRmluZCgiaW5zdGFuY2VvZiIpOworICAgIGF1dG8gaW5zdGFuY2VvZkluZGV4ID0gc291cmNl
VGV4dC5yZXZlcnNlRmluZCgiaW5zdGFuY2VvZiJfcyk7CiAgICAgLy8gVGhpcyBjYW4gaGFwcGVu
IHdoZW4gU3ltYm9sLmhhc0luc3RhbmNlIGZ1bmN0aW9uIGlzIGRpcmVjdGx5IGNhbGxlZC4KICAg
ICBpZiAoaW5zdGFuY2VvZkluZGV4ID09IG5vdEZvdW5kKQogICAgICAgICByZXR1cm4gb3JpZ2lu
YWxNZXNzYWdlOwpAQCAtMjQ2LDcgKzI0Niw3IEBAIHN0YXRpYyBTdHJpbmcgaW52YWxpZFByb3Rv
dHlwZVNvdXJjZUFwcGVuZGVyKGNvbnN0IFN0cmluZyYgb3JpZ2luYWxNZXNzYWdlLCBjb25zCiAg
ICAgaWYgKG9jY3VycmVuY2UgPT0gRXJyb3JJbnN0YW5jZTo6Rm91bmRBcHByb3hpbWF0ZVNvdXJj
ZSkKICAgICAgICAgcmV0dXJuIGRlZmF1bHRBcHByb3hpbWF0ZVNvdXJjZUVycm9yKG9yaWdpbmFs
TWVzc2FnZSwgc291cmNlVGV4dCk7CiAKLSAgICBhdXRvIGV4dGVuZHNJbmRleCA9IHNvdXJjZVRl
eHQucmV2ZXJzZUZpbmQoImV4dGVuZHMiKTsKKyAgICBhdXRvIGV4dGVuZHNJbmRleCA9IHNvdXJj
ZVRleHQucmV2ZXJzZUZpbmQoImV4dGVuZHMiX3MpOwogICAgIGlmIChleHRlbmRzSW5kZXggPT0g
bm90Rm91bmQgfHwgc291cmNlVGV4dC5maW5kKCJleHRlbmRzIikgIT0gZXh0ZW5kc0luZGV4KQog
ICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhvcmlnaW5hbE1lc3NhZ2UsICIgKGV2YWx1YXRpbmcg
JyIsIHNvdXJjZVRleHQsICInKSIpOwogCkBAIC0zMjQsMjcgKzMyNCwyNyBAQCBKU09iamVjdCog
Y3JlYXRlRXJyb3JGb3JJbnZhbGlkR2xvYmFsQXNzaWdubWVudChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBjbwogCiBKU09iamVjdCogY3JlYXRlVERaRXJyb3IoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlUmVmZXJlbmNlRXJyb3IoZ2xvYmFs
T2JqZWN0LCAiQ2Fubm90IGFjY2VzcyB1bmluaXRpYWxpemVkIHZhcmlhYmxlLiIpOworICAgIHJl
dHVybiBjcmVhdGVSZWZlcmVuY2VFcnJvcihnbG9iYWxPYmplY3QsICJDYW5ub3QgYWNjZXNzIHVu
aW5pdGlhbGl6ZWQgdmFyaWFibGUuIl9zKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0ZUludmFsaWRQ
cml2YXRlTmFtZUVycm9yKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7Ci0gICAgcmV0
dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIG1ha2VTdHJpbmcoIkNhbm5vdCBhY2Nl
c3MgaW52YWxpZCBwcml2YXRlIGZpZWxkIiksIGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5v
dGhpbmcpOworICAgIHJldHVybiBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiQ2Fubm90
IGFjY2VzcyBpbnZhbGlkIHByaXZhdGUgZmllbGQiX3MsIGRlZmF1bHRTb3VyY2VBcHBlbmRlciwg
VHlwZU5vdGhpbmcpOwogfQogCiBKU09iamVjdCogY3JlYXRlUmVkZWZpbmVkUHJpdmF0ZU5hbWVF
cnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVybiBjcmVhdGVU
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5nKCJDYW5ub3QgcmVkZWZpbmUgZXhpc3Rp
bmcgcHJpdmF0ZSBmaWVsZCIpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsK
KyAgICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCByZWRlZmlu
ZSBleGlzdGluZyBwcml2YXRlIGZpZWxkIl9zLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVO
b3RoaW5nKTsKIH0KIAogSlNPYmplY3QqIGNyZWF0ZVByaXZhdGVNZXRob2RBY2Nlc3NFcnJvcihK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogewotICAgIHJldHVybiBjcmVhdGVUeXBlRXJy
b3IoZ2xvYmFsT2JqZWN0LCBtYWtlU3RyaW5nKCJDYW5ub3QgYWNjZXNzIHByaXZhdGUgbWV0aG9k
IG9yIGFjZXNzb3IiX3MpLCBkZWZhdWx0U291cmNlQXBwZW5kZXIsIFR5cGVOb3RoaW5nKTsKKyAg
ICByZXR1cm4gY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIkNhbm5vdCBhY2Nlc3MgcHJp
dmF0ZSBtZXRob2Qgb3IgYWNlc3NvciJfcywgZGVmYXVsdFNvdXJjZUFwcGVuZGVyLCBUeXBlTm90
aGluZyk7CiB9CiAKIEpTT2JqZWN0KiBjcmVhdGVSZWluc3RhbGxQcml2YXRlTWV0aG9kRXJyb3Io
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKLSAgICByZXR1cm4gY3JlYXRlVHlwZUVy
cm9yKGdsb2JhbE9iamVjdCwgbWFrZVN0cmluZygiQ2Fubm90IGluc3RhbGwgc2FtZSBwcml2YXRl
IG1ldGhvZHMgb24gb2JqZWN0IG1vcmUgdGhhbiBvbmNlIl9zKSwgZGVmYXVsdFNvdXJjZUFwcGVu
ZGVyLCBUeXBlTm90aGluZyk7CisgICAgcmV0dXJuIGNyZWF0ZVR5cGVFcnJvcihnbG9iYWxPYmpl
Y3QsICJDYW5ub3QgaW5zdGFsbCBzYW1lIHByaXZhdGUgbWV0aG9kcyBvbiBvYmplY3QgbW9yZSB0
aGFuIG9uY2UiX3MsIGRlZmF1bHRTb3VyY2VBcHBlbmRlciwgVHlwZU5vdGhpbmcpOwogfQogCiBF
eGNlcHRpb24qIHRocm93T3V0T2ZNZW1vcnlFcnJvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBUaHJvd1Njb3BlJiBzY29wZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0V4ZWN1dGFibGVCYXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0V4ZWN1dGFibGVCYXNlLmNwcAppbmRleCBmZDQ3MzgyZDE1ZWY3NTk5NzJmOTRjNjJlMzAw
Y2U5MGYwNjliOGYwLi42OGFlZWFhZmExYjAxOTM1ODAyZjlmYzU1YmQ2OGE3OTU3MjA3NzY1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGVjdXRhYmxlQmFzZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZUJhc2UuY3Bw
CkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
RXhlY3V0YWJsZUJhc2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGUiLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4ZWN1dGFibGVCYXNlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEV4ZWN1dGFibGVCYXNlOjpzX2luZm8gPSB7ICJFeGVjdXRhYmxlIl9zLCBudWxs
cHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEV4ZWN1dGFibGVCYXNl
KSB9OwogCiB2b2lkIEV4ZWN1dGFibGVCYXNlOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlvblJlZ2lz
dHJ5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxp
emF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjMxZGI4NmE3OTYxNmU0NWE4ZGMx
MTVhYTI2NTcwYWMzYzdlNjZmNS4uZjVmYzFhODFkNjZjNWVmYzE1MjM0ZjAwNzlhMmYwMjgwNzU1
MGI1YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRmluYWxpemF0
aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlDb25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdp
c3RyeUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRmluYWxpemF0aW9uUmVnaXN0cnlD
b25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25SZWdpc3RyeUNvbnN0cnVj
dG9yKSB9OwogCiB2b2lkIEZpbmFsaXphdGlvblJlZ2lzdHJ5Q29uc3RydWN0b3I6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUqIHByb3RvdHlwZSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ZpbmFsaXphdGlv
blJlZ2lzdHJ5UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Zp
bmFsaXphdGlvblJlZ2lzdHJ5UHJvdG90eXBlLmNwcAppbmRleCA4NTNlNGFhODc0Y2I1MTAwYTM2
M2IyYzAwMTQzMzUzY2ZmYTViMDljLi44YTBjMTE4MTk2NjIyZTE2NmZjODFhYWJjZDk4ZWE3ODhh
MWVjZDVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GaW5hbGl6
YXRpb25SZWdpc3RyeVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRmluYWxpemF0aW9uUmVnaXN0cnlQcm90b3R5cGUuY3BwCkBAIC0zMiw3ICszMiw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gRmluYWxpemF0aW9uUmVnaXN0
cnlQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZpbmFsaXphdGlvblJlZ2lzdHJ5IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGaW5hbGl6YXRpb25S
ZWdpc3RyeVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBGaW5hbGl6YXRpb25SZWdpc3Ry
eVByb3RvdHlwZTo6c19pbmZvID0geyAiRmluYWxpemF0aW9uUmVnaXN0cnkiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRmluYWxpemF0aW9u
UmVnaXN0cnlQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHByb3RvRnVuY0ZpbmFsaXphdGlvblJlZ2lzdHJ5UmVnaXN0ZXIpOwogc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jRmluYWxpemF0aW9uUmVnaXN0cnlVbnJlZ2lzdGVy
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25z
dHJ1Y3Rvci5jcHAKaW5kZXggMTY1ZTdhN2Y3ZTQ2ZGRkYzgxNDA1NTlkMjE3MTFiODIwYTUyNzE0
Mi4uZWEzNTRhMGNmZmYzYzI0ZTU0ODBkMjlmMzRjZGQ3OWFhZTFlN2IzYyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAK
QEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkNvbnN0
cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEZ1bmN0aW9uQ29uc3RydWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFS
RV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdFdpdGhGdW5jdGlvbkNvbnN0cnVjdG9yKTsKIHN0YXRp
YyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxGdW5jdGlvbkNvbnN0cnVjdG9yKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJs
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkV4ZWN1dGFibGUu
Y3BwCmluZGV4IDIzMDdhY2VjYzUwNGRlYTc1OTQxMDk5MjQ3NGJiYmNhNTllYjEwZjEuLmQ4MWFj
NjA2Zjc0ZDg1MmI4ZGJlZTkzZGRkNTY3NjU4YmUwNzQ5OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uRXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25FeGVjdXRhYmxlLmNwcApAQCAtMzIsNyAr
MzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uRXhl
Y3V0YWJsZTo6c19pbmZvID0geyAiRnVuY3Rpb25FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1dGFi
bGU6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlv
bkV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbkV4ZWN1dGFibGUiX3MsICZTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25FeGVjdXRhYmxl
KSB9OwogCiBGdW5jdGlvbkV4ZWN1dGFibGU6OkZ1bmN0aW9uRXhlY3V0YWJsZShWTSYgdm0sIGNv
bnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIHVubGlu
a2VkRXhlY3V0YWJsZSwgSW50cmluc2ljIGludHJpbnNpYywgYm9vbCBpc0luc2lkZU9yZGluYXJ5
RnVuY3Rpb24pCiAgICAgOiBTY3JpcHRFeGVjdXRhYmxlKHZtLmZ1bmN0aW9uRXhlY3V0YWJsZVN0
cnVjdHVyZS5nZXQoKSwgdm0sIHNvdXJjZSwgdW5saW5rZWRFeGVjdXRhYmxlLT5sZXhpY2FsU2Nv
cGVGZWF0dXJlcygpLCB1bmxpbmtlZEV4ZWN1dGFibGUtPmRlcml2ZWRDb250ZXh0VHlwZSgpLCBm
YWxzZSwgaXNJbnNpZGVPcmRpbmFyeUZ1bmN0aW9uIHx8ICF1bmxpbmtlZEV4ZWN1dGFibGUtPmlz
QXJyb3dGdW5jdGlvbigpLCBFdmFsQ29udGV4dFR5cGU6Ok5vbmUsIGludHJpbnNpYykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uUHJvdG90eXBlLmNwcApp
bmRleCAxZDUyYWJmNTg1YzJiYWJlZDZjODRiNTk5NzRiYmE5NjczZGEwZmE5Li5jOWM5YThhYzdl
MjQ3MTE4YTZiZjM0ZTJiMjVhNTVlOWQwZDQ0YTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Qcm90b3R5cGUuY3BwCkBAIC0zMiw3ICszMiw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElC
TEUoRnVuY3Rpb25Qcm90b3R5cGUpOwogCi1jb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Qcm90b3R5
cGU6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Qcm90
b3R5cGUpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uUHJv
dG9GdW5jVG9TdHJpbmcpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbEZ1
bmN0aW9uUHJvdG90eXBlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0Z1bmN0aW9uUmFyZURhdGEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25SYXJlRGF0YS5jcHAKaW5kZXggYTEzZGZhNDU2NjgzMTg4Zjc5NGQ3OTkzNmE5MjEz
ODU2MWYyMzI3MC4uNGE5YjY0MDRkZDRjNzNlZWM3OTQzODY5YzU4NDQ1ZmJiNDI0YmY4MiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25SYXJlRGF0YS5j
cHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBGdW5jdGlvblJhcmVEYXRhOjpzX2luZm8gPSB7ICJGdW5jdGlvblJhcmVEYXRhIiwgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblJhcmVEYXRh
KSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUmFyZURhdGE6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uUmFyZURhdGEiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoRnVuY3Rpb25SYXJlRGF0YSkgfTsKIAogRnVuY3Rpb25SYXJlRGF0YSogRnVuY3Rpb25S
YXJlRGF0YTo6Y3JlYXRlKFZNJiB2bSwgRXhlY3V0YWJsZUJhc2UqIGV4ZWN1dGFibGUpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JGdW5jdGlv
bkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRv
ckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IDdmYTNiMjExNjIzNjg3YzFhOTliMzU1MThk
MmI0ZDA0MjdkNDc3NjAuLmY0OTFlN2M1ZTdiN2MxMDNmM2VjMDE2NDNiNTBjMzRiZmFmNzE0ZDIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0
aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dl
bmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoR2VuZXJh
dG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5j
dGlvbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2VuZXJhdG9yRnVu
Y3Rpb25Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvbkNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJHZW5lcmF0b3JGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlv
bkNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxs
R2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvcik7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihjb25zdHJ1Y3RHZW5lcmF0b3JGdW5jdGlvbkNvbnN0cnVjdG9yKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90
eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvckZ1bmN0aW9u
UHJvdG90eXBlLmNwcAppbmRleCBhZTllZjIxODhkOGZiZTFkZmE1NjRiYzlhNDJkYmQ0MDcxMjU3
ZTkzLi5jNDJlZDQzMjU3MWE2MWQwNTRkZDYyNjJjNGUzY2NmYmU2NzQwZjBjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JGdW5jdGlvblByb3RvdHlw
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yRnVuY3Rp
b25Qcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoR2VuZXJhdG9yRnVuY3Rpb25Qcm90
b3R5cGUpOwogCi1jb25zdCBDbGFzc0luZm8gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAi
R2VuZXJhdG9yRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpIH07CiAKIEdlbmVy
YXRvckZ1bmN0aW9uUHJvdG90eXBlOjpHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZShWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9y
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dlbmVyYXRvclBy
b3RvdHlwZS5jcHAKaW5kZXggZmEwOWI5ZDMwNmZlZmUwNjM1ODE4YWYyYzIyZGJkZTgyYjFjZGM4
Yy4uN2U4MGIxYzM0NzEyMWEyNDcxYTE3NzA4MmE3NzdiMjEwY2M5MzZjMyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2VuZXJhdG9yUHJvdG90eXBlLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZW5lcmF0b3JQcm90b3R5cGUuY3BwCkBA
IC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gR2Vu
ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJHZW5lcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAm
Z2VuZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2Vu
ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEdlbmVyYXRvclByb3RvdHlwZTo6
c19pbmZvID0geyAiR2VuZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCAmZ2VuZXJhdG9yUHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoR2VuZXJhdG9yUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEdlbmVyYXRvclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIGdl
bmVyYXRvclByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
R2V0dGVyU2V0dGVyLmNwcAppbmRleCBmYWQyYzIzZjcxMDkyOTcwYjVlYzA4ZTgxNDg0ZjIxOTIx
MzA5MDc3Li5lNjZlMDMzNGU1OTY5NzM1NjdmOTFkMmFmN2Q1NjI5NDI2YjA4YjM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAKQEAgLTMxLDcg
KzMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShHZXR0ZXJTZXR0ZXIpOwogCi1jb25zdCBDbGFzc0luZm8gR2V0dGVyU2V0dGVy
OjpzX2luZm8gPSB7ICJHZXR0ZXJTZXR0ZXIiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBHZXR0
ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciJfcywgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHZXR0ZXJTZXR0ZXIpIH07CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEdldHRlclNldHRlcjo6dmlzaXRDaGlsZHJlbkltcGwo
SlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvR2xvYmFsRXhlY3V0YWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9HbG9iYWxFeGVjdXRhYmxlLmNwcAppbmRleCAwMGI2NWMwYmE4MjI2OGI0
ODI2OTU0MjFkMDg5MmJkN2QzM2I4YjNjLi43NWU4NGIzOGZmNzI3YjMyYzhlYjAwMTE2YTBiMWQw
YWQ4NDBiZmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9i
YWxFeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HbG9i
YWxFeGVjdXRhYmxlLmNwcApAQCAtMzAsNiArMzAsNiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEdsb2JhbEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkdsb2JhbEV4ZWN1
dGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEdsb2JhbEV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gR2xvYmFsRXhlY3V0YWJs
ZTo6c19pbmZvID0geyAiR2xvYmFsRXhlY3V0YWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxFeGVjdXRhYmxlKSB9OwogCiB9
IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0hhc2hNYXBJbXBsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0hhc2hN
YXBJbXBsLmNwcAppbmRleCBkMWM0YzVjZjk2ZTk3NTRmMjMyYmU1MjY1MGYyZWU4ZDJiNDJlNjUy
Li5lYWJhNjRlNmQ4ZTI2YjFlNWY3ZmViMWRmNDUwNTA2N2YxMGIyMzc2IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9IYXNoTWFwSW1wbC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSGFzaE1hcEltcGwuY3BwCkBAIC0zNiwxMSArMzYsMTEg
QEAgREVGSU5FX1ZJU0lUX0NISUxEUkVOX1dJVEhfTU9ESUZJRVIodGVtcGxhdGU8PiwgSGFzaE1h
cEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xhc3NJbmZv
IEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFLZXk+OjpzX2luZm8gPQotICAgIHsgIkhh
c2hNYXBCdWNrZXQiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFLZXk+KSB9OworICAgIHsgIkhhc2hN
YXBCdWNrZXQiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSGFzaE1hcEJ1Y2tldDxIYXNoTWFwQnVja2V0RGF0YUtleT4pIH07CiAKIHRlbXBsYXRlPD4K
IGNvbnN0IENsYXNzSW5mbyBIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXREYXRhS2V5VmFsdWU+
OjpzX2luZm8gPQotICAgIHsgIkhhc2hNYXBCdWNrZXQiLCBudWxscHRyLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEhhc2hNYXBCdWNrZXQ8SGFzaE1hcEJ1Y2tldERhdGFL
ZXlWYWx1ZT4pIH07CisgICAgeyAiSGFzaE1hcEJ1Y2tldCJfcywgbnVsbHB0ciwgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShIYXNoTWFwQnVja2V0PEhhc2hNYXBCdWNrZXRE
YXRhS2V5VmFsdWU+KSB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBEYXRhPgogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlzaXRvcj4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGVybmFsRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50
ZXJuYWxGdW5jdGlvbi5jcHAKaW5kZXggZDViYzQ5NDA5NTdlNTUyYmY2NGE1MGE1OTAyYzExMGMx
NTI2ZGI5MS4uMDFiYzA4NmFmODQ5ODBmODZhMDRiYjJhZGQ5YjU4YTE0ZGJlNjE4OSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50ZXJuYWxGdW5jdGlvbi5jcHAK
QEAgLTMxLDcgKzMxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShJbnRlcm5hbEZ1bmN0aW9uKTsKIAotY29uc3QgQ2xhc3NJbmZv
IEludGVybmFsRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRlcm5hbEZ1bmN0aW9uKSB9
OworY29uc3QgQ2xhc3NJbmZvIEludGVybmFsRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEludGVybmFsRnVuY3Rpb24pIH07CiAKIEludGVybmFsRnVuY3Rpb246OkludGVybmFsRnVuY3Rp
b24oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgTmF0aXZlRnVuY3Rpb24gZnVuY3Rpb25G
b3JDYWxsLCBOYXRpdmVGdW5jdGlvbiBmdW5jdGlvbkZvckNvbnN0cnVjdCkKICAgICA6IEJhc2Uo
dm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxDb2xsYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29s
bGF0b3IuY3BwCmluZGV4IGI2YmI3NTE1ODBkNzY4MmUxNjZhNDU5NjVmMzIzMjliZTJjNGM2NTUu
LjM2OTc1NTExMzQ5YWYzYTQ1ODlhM2EwMTVkZjBlNTFhMjlhZGUyZTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9yLmNwcApAQCAtMzYsNyArMzYsNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvcjo6c19p
bmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxh
dG9yOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bENvbGxhdG9yKSB9OwogCiBuYW1lc3BhY2UgSW50
bENvbGxhdG9ySW50ZXJuYWwgewogY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAt
MTcyLDcgKzE3Miw3IEBAIHZvaWQgSW50bENvbGxhdG9yOjppbml0aWFsaXplQ29sbGF0b3IoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBsb2NhCiAgICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAogICAgIHsKLSAgICAgICAgU3RyaW5nIGNvbGxhdGlv
biA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5h
bWVzLT5jb2xsYXRpb24sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgICAgIFN0cmluZyBj
b2xsYXRpb24gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJv
cGVydHlOYW1lcy0+Y29sbGF0aW9uLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxp
dGVyYWw6Om51bGwoKSk7CiAgICAgICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQo
KSk7CiAgICAgICAgIGlmICghY29sbGF0aW9uLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICBpZiAo
IWlzVW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKGNvbGxhdGlvbikpIHsKQEAgLTE4OCw3ICsx
ODgsNyBAQCB2b2lkIEludGxDb2xsYXRvcjo6aW5pdGlhbGl6ZUNvbGxhdG9yKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgbG9jYQogICAgIGlmIChudW1lcmljICE9IFRyaVN0
YXRlOjpJbmRldGVybWluYXRlKQogICAgICAgICBsb2NhbGVPcHRpb25zW3N0YXRpY19jYXN0PHVu
c2lnbmVkPihSZWxldmFudEV4dGVuc2lvbktleTo6S24pXSA9IFN0cmluZyhudW1lcmljID09IFRy
aVN0YXRlOjpUcnVlID8gInRydWUiX3MgOiAiZmFsc2UiX3MpOwogCi0gICAgU3RyaW5nIGNhc2VG
aXJzdE9wdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5w
cm9wZXJ0eU5hbWVzLT5jYXNlRmlyc3QsIHsgInVwcGVyIiwgImxvd2VyIiwgImZhbHNlIiB9LCAi
Y2FzZUZpcnN0IG11c3QgYmUgZWl0aGVyIFwidXBwZXJcIiwgXCJsb3dlclwiLCBvciBcImZhbHNl
XCIiLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY2FzZUZpcnN0T3B0aW9uID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwg
eyAidXBwZXIiLCAibG93ZXIiLCAiZmFsc2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIg
XCJ1cHBlclwiLCBcImxvd2VyXCIsIG9yIFwiZmFsc2VcIiJfcywgQVNDSUlMaXRlcmFsOjpudWxs
KCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFj
YXNlRmlyc3RPcHRpb24uaXNOdWxsKCkpCiAgICAgICAgIGxvY2FsZU9wdGlvbnNbc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5OjpLZildID0gY2FzZUZpcnN0T3B0aW9u
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxhdG9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bENvbGxh
dG9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDBiYzVhYTM3ZDdjZGUwMjAzM2Q3M2U5Zjg1Y2IyZTEz
MTczMTAzMjkuLjk0ZWVkODdmYjM4MTZkN2ZlYzhiN2ZjYTg5Mjk2Nzg4ODE1NWFjNDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvckNvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsQ29sbGF0b3JD
b25zdHJ1Y3Rvci5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiBzdGF0aWMg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSW50bENvbGxhdG9yKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEludGxDb2xsYXRvcik7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
SW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmY29sbGF0b3JDb25zdHJ1Y3RvclRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxDb2xsYXRvckNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIEludGxDb2xsYXRvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJmNvbGxhdG9yQ29uc3RydWN0b3JUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvcikg
fTsKIAogLyogU291cmNlIGZvciBJbnRsQ29sbGF0b3JDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2lu
IGNvbGxhdG9yQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bENvbGxhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxDb2xsYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMDU5YzE5NWZiMDM1
NWQ0NTUwNzE2YWViODRjNTk5MDFjODJkNDUzMS4uZDBmOWI2YzYxNjNmNDcxNWI1N2U4NWU0MDYz
MTA4YmM4ZjFkMzE5MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bENvbGxhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9JbnRsQ29sbGF0b3JQcm90b3R5cGUuY3BwCkBAIC00Myw3ICs0Myw3IEBAIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxDb2xsYXRvckZ1bmNDb21wYXJlKTsKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsQ29sbGF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuQ29sbGF0b3IiLCAmQmFzZTo6c19pbmZvLCAmY29sbGF0b3JQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3JQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bENvbGxhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJJbnRsLkNvbGxhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCAmY29sbGF0b3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsQ29sbGF0b3JQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgSW50bENvbGxhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gY29s
bGF0b3JQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdC5jcHAKaW5kZXggYzJkNDlkYTk4YTY2MGJjNjJiMDRhZmUx
OWM1NzhmMjU5MmZkNGJiOS4uYTFjNjE0NWMxNzFjNDBkMTg4ZjA3Mjk1ODVmMDVlZGI3NWMwYWFi
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVUaW1l
Rm9ybWF0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRp
bWVGb3JtYXQuY3BwCkBAIC02MCw3ICs2MCw3IEBAIHZvaWQgVURhdGVJbnRlcnZhbEZvcm1hdERl
bGV0ZXI6Om9wZXJhdG9yKCkoVURhdGVJbnRlcnZhbEZvcm1hdCogZm9ybWF0dGVyKQogICAgICAg
ICB1ZHRpdHZmbXRfY2xvc2UoZm9ybWF0dGVyKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEludGxE
YXRlVGltZUZvcm1hdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3JtYXQpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50
bERhdGVUaW1lRm9ybWF0KSB9OwogCiBuYW1lc3BhY2UgSW50bERhdGVUaW1lRm9ybWF0SW50ZXJu
YWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKQEAgLTYwNCw3ICs2
MDQsNyBAQCB2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6aW5pdGlhbGl6ZURhdGVUaW1lRm9ybWF0
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgTG9jYWxlTWF0Y2hlciBsb2NhbGVN
YXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVyPihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsgeyAibG9va3VwIl9zLCBMb2NhbGVN
YXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3MsIExvY2FsZU1hdGNoZXI6OkJlc3RGaXQg
fSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwiYmVzdCBm
aXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBjYWxlbmRhciA9IGludGxTdHJpbmdPcHRp
b24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwgeyB9
LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY2FsZW5kYXIgPSBpbnRsU3RyaW5nT3B0
aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2FsZW5kYXIsIHsg
fSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2FsZW5kYXIuaXNOdWxs
KCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShjYWxlbmRh
cikpIHsKQEAgLTYxNCw3ICs2MTQsNyBAQCB2b2lkIEludGxEYXRlVGltZUZvcm1hdDo6aW5pdGlh
bGl6ZURhdGVUaW1lRm9ybWF0KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsCiAgICAgICAg
IGxvY2FsZU9wdGlvbnNbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFJlbGV2YW50RXh0ZW5zaW9uS2V5
OjpDYSldID0gY2FsZW5kYXI7CiAgICAgfQogCi0gICAgU3RyaW5nIG51bWJlcmluZ1N5c3RlbSA9
IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVz
LT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIG51
bWJlcmluZ1N5c3RlbSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5udW1iZXJpbmdTeXN0ZW0sIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxs
KCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3Bl
LCB2b2lkKCkpOwogICAgIGlmICghbnVtYmVyaW5nU3lzdGVtLmlzTnVsbCgpKSB7CiAgICAgICAg
IGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUobnVtYmVyaW5nU3lzdGVtKSkgewpA
QCAtODgxLDcgKzg4MSw3IEBAIHZvaWQgSW50bERhdGVUaW1lRm9ybWF0Ojppbml0aWFsaXplRGF0
ZVRpbWVGb3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICAgICAgYnJlYWs7
CiAgICAgfQogCi0gICAgaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZt
LnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIHsgImJhc2ljIiwgImJlc3QgZml0IiB9LCAi
Zm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwiIiwg
ImJlc3QgZml0Iik7CisgICAgaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPmZvcm1hdE1hdGNoZXIsIHsgImJhc2ljIiwgImJlc3QgZml0IiB9
LCAiZm9ybWF0TWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImJhc2ljXCIgb3IgXCJiZXN0IGZpdFwi
Il9zLCAiYmVzdCBmaXQiX3MpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQo
KSk7CiAKICAgICBtX2RhdGVTdHlsZSA9IGludGxPcHRpb248RGF0ZVRpbWVTdHlsZT4oZ2xvYmFs
T2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5kYXRlU3R5bGUsIHsgeyAiZnVsbCJf
cywgRGF0ZVRpbWVTdHlsZTo6RnVsbCB9LCB7ICJsb25nIl9zLCBEYXRlVGltZVN0eWxlOjpMb25n
IH0sIHsgIm1lZGl1bSJfcywgRGF0ZVRpbWVTdHlsZTo6TWVkaXVtIH0sIHsgInNob3J0Il9zLCBE
YXRlVGltZVN0eWxlOjpTaG9ydCB9IH0sICJkYXRlU3R5bGUgbXVzdCBiZSBcImZ1bGxcIiwgXCJs
b25nXCIsIFwibWVkaXVtXCIsIG9yIFwic2hvcnRcIiJfcywgRGF0ZVRpbWVTdHlsZTo6Tm9uZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGF0ZVRpbWVG
b3JtYXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
RGF0ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggYjQ1MWVlMDliMWRkZjE3YWY1NzJh
YzlhNGViYjkxNzNlZTZmMmI3My4uM2Y4NTIxZDJiMjdjMjNhMjZmOGE4Mjk5ZTM0YmFhYmNkYWQz
YjE3MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERhdGVU
aW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsRGF0ZVRpbWVGb3JtYXRDb25zdHJ1
Y3RvckZ1bmNTdXBwb3J0ZWRMb2NhbAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZkYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yVGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERhdGVUaW1lRm9ybWF0Q29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0Q29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmZGF0
ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEludGxEYXRlVGltZUZvcm1hdENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxE
YXRlVGltZUZvcm1hdENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gZGF0ZVRpbWVGb3JtYXRDb25z
dHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlLmNwcAppbmRleCBlNzQxMmNjMjgyMTJm
YmE5ZmEyMTg5ZGY2NDQ2OGE0YjNmYzM4MTBhLi5lYzE4MTU2OTg3Mzg3MWZhMWYzMGI5ZGE4NTMz
N2QwNjM1ZWJjOGQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEYXRlVGltZUZvcm1hdFByb3RvdHlwZS5jcHAKQEAgLTUwLDcgKzUwLDcg
QEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bERhdGVUaW1lRm9ybWF0RnVu
Y0Zvcm1hdERhdGVUaW1lKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJ
bnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuRGF0ZVRpbWVGb3Jt
YXQiLCAmQmFzZTo6c19pbmZvLCAmZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3JtYXRQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSW50bERhdGVUaW1lRm9ybWF0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJ
bnRsLkRhdGVUaW1lRm9ybWF0Il9zLCAmQmFzZTo6c19pbmZvLCAmZGF0ZVRpbWVGb3JtYXRQcm90
b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGF0ZVRpbWVGb3Jt
YXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bERhdGVUaW1lRm9ybWF0UHJvdG90
eXBlLmx1dC5oCiBAYmVnaW4gZGF0ZVRpbWVGb3JtYXRQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bERpc3BsYXlOYW1lcy5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcAppbmRleCBm
YmU4NmU0YjdlYWEwNjNjYmI2NDYzYjlhMWZhOWY3MWIyOTE4N2U0Li5hOGJjZmJiYWQxNmQzMWU1
YmRiNGI4Yzg2ZjViNDQyYTk0YTExMTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzLmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXM6OnNfaW5mbyA9
IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bERpc3BsYXlOYW1lcykgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsRGlzcGxh
eU5hbWVzOjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lcykgfTsKIAogSW50bERp
c3BsYXlOYW1lcyogSW50bERpc3BsYXlOYW1lczo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yLmNwcAppbmRleCBlYTA1MWJiMzRjNWUx
ZDkyMmQ3YmYwODRmMTNhNWU0NmYxMGM0MzI0Li4wYTNiZjhkNDk0NDgyNzRkNjE3ZGExOTlhNDQy
MDBiYTZjYjY0ZTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcg
QEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bERpc3BsYXlOYW1lc0NvbnN0
cnVjdG9yU3VwcG9ydGVkTG9jYWxlc09mKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgJmRpc3BsYXlOYW1lc0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3BsYXlOYW1lc0NvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZkaXNwbGF5TmFtZXNDb25zdHJ1Y3RvclRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxEaXNwbGF5TmFtZXNDb25zdHJ1Y3Rvcikg
fTsKIAogLyogU291cmNlIGZvciBJbnRsRGlzcGxheU5hbWVzQ29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiBkaXNwbGF5TmFtZXNDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsRGlzcGxheU5hbWVzUHJvdG90eXBlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3BwCmlu
ZGV4IDQ1YTYyMDVkMTJiOGQ4YjM2ZDJmOGJhYTllNzczZWU0MTJjMDI1NDIuLjZjMTg1ZWE1OTAw
YTA0M2UyNDJmY2RhNTMxZjRhNmNmZDgwMGZjOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxEaXNwbGF5TmFtZXNQcm90b3R5cGUuY3BwCkBA
IC00MCw3ICs0MCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxEaXNw
bGF5TmFtZXNQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsRGlzcGxheU5hbWVzUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJJbnRsLkRpc3BsYXlOYW1lcyIsICZCYXNlOjpzX2luZm8sICZkaXNwbGF5TmFtZXNQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsRGlzcGxheU5hbWVzUHJv
dG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxEaXNwbGF5TmFtZXNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkludGwuRGlzcGxheU5hbWVzIl9zLCAmQmFzZTo6c19pbmZvLCAmZGlzcGxheU5h
bWVzUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bERpc3Bs
YXlOYW1lc1Byb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsRGlzcGxheU5hbWVzUHJv
dG90eXBlLmx1dC5oCiBAYmVnaW4gZGlzcGxheU5hbWVzUHJvdG90eXBlVGFibGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0LmNwcAppbmRleCBmNWMz
MDU3MDk4Yzk0OGYzMTRjZjFiY2ZkNjljZGU4OGQyNWU5MzNmLi43ODVjOTNmYzU0NGVjN2Q4Y2Vl
ZWJjMTk4OWQwN2ZhZDIyYjU0NTQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsTGlzdEZvcm1hdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bExpc3RGb3JtYXQuY3BwCkBAIC00OSw3ICs0OSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bExpc3RGb3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVj
dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bExpc3RGb3JtYXQpIH07Citjb25zdCBDbGFzc0luZm8gSW50bExpc3RGb3JtYXQ6OnNfaW5m
byA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShJbnRsTGlzdEZvcm1hdCkgfTsKIAogLy8gV2UgZG8gbm90IHVzZSBJQ1VE
ZWxldGVyPHVsaXN0Zm10X2Nsb3NlPiBiZWNhdXNlIHdlIGRvIG5vdCB3YW50IHRvIGluY2x1ZGUg
dWxpc3Rmb3JtYXR0ZXIuaCBpbiBJbnRsTGlzdEZvcm1hdC5oLgogLy8gdWxpc3Rmb3JtYXR0ZXIu
aCBuZWVkcyB0byBiZSBpbmNsdWRlZCB3aXRoICN1bmRlZiBVX0hJREVfRFJBRlRfQVBJLCBhbmQg
d2Ugd291bGQgbGlrZSB0byBtaW5pbWl6ZSB0aGlzIGVmZmVjdCBpbiBJbnRsTGlzdEZvcm1hdC5j
cHAuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZv
cm1hdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxM
aXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwCmluZGV4IDVkMDA4NDUzZmZmNmZmN2FkNzNiZjY5Njk2
YTUyOTc0NTEwMGVmYTUuLjYyZmYyZGU5NDVmYmQ4NDRiOTdmY2Y2MmM5NzA5YTI3ZDZiYzkxYjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxM
aXN0Rm9ybWF0Q29uc3RydWN0b3IuY3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVD
TEFSRV9IT1NUX0ZVTkNUSU9OKGludGxMaXN0Rm9ybWF0Q29uc3RydWN0b3JTdXBwb3J0ZWRMb2Nh
bGVzT2YpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxMaXN0Rm9y
bWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmxp
c3RGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKElu
dGxMaXN0Rm9ybWF0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bExpc3RGb3Jt
YXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZs
aXN0Rm9ybWF0Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJ
bnRsTGlzdEZvcm1hdENvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxMaXN0Rm9y
bWF0Q29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBsaXN0Rm9ybWF0Q29uc3RydWN0b3JUYWJsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3JtYXRQ
cm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExpc3RGb3Jt
YXRQcm90b3R5cGUuY3BwCmluZGV4IGJmNzM3YWM1YmE0YWJlMTIxYmVjNjE1ZjgzMGYyYmIzYzYw
NmIwYmYuLjIxYWViMDU3NjUzZmM5M2EwYTM0OWI3MDNiYzVjNzFlYjEwZDY4NTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMaXN0Rm9ybWF0UHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTGlzdEZvcm1hdFBy
b3RvdHlwZS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVO
Q1RJT04oaW50bExpc3RGb3JtYXRQcm90b3R5cGVGdW5jUmVzb2x2ZWRPcHRpb25zKTsKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdFByb3RvdHlwZTo6
c19pbmZvID0geyAiSW50bC5MaXN0Rm9ybWF0IiwgJkJhc2U6OnNfaW5mbywgJmxpc3RGb3JtYXRQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTGlzdEZvcm1h
dFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTGlzdEZvcm1hdFByb3RvdHlwZTo6
c19pbmZvID0geyAiSW50bC5MaXN0Rm9ybWF0Il9zLCAmQmFzZTo6c19pbmZvLCAmbGlzdEZvcm1h
dFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxMaXN0Rm9y
bWF0UHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxMaXN0Rm9ybWF0UHJvdG90eXBl
Lmx1dC5oCiBAYmVnaW4gbGlzdEZvcm1hdFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3BwCmluZGV4IGZjY2FkMzExODlhOGFkN2UwMDI0
OWQ0OTIwYzlhYThiYzYwNDdkYTUuLmViM2JmOTJmY2M0NzY0MDc0YmZlMzI0NWE3NTgxOTdkMjY2
ODkwODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2Nh
bGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGUuY3Bw
CkBAIC00MCw3ICs0MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
SW50bExvY2FsZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTG9jYWxlKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEludGxMb2NhbGU6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTG9jYWxlKSB9OwogCiBuYW1l
c3BhY2UgSW50bExvY2FsZUludGVybmFsIHsKIHN0YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3Nl
ID0gZmFsc2U7CkBAIC0yNTEsMjEgKzI1MSwyMSBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxp
emVMb2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQog
ICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIGxhbmd1YWdlID0gaW50bFN0cmlu
Z09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmxhbmd1YWdl
LCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBsYW5ndWFnZSA9IGludGxTdHJp
bmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYW5ndWFn
ZSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAg
IFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFsYW5ndWFnZS5p
c051bGwoKSAmJiAhaXNVbmljb2RlTGFuZ3VhZ2VTdWJ0YWcobGFuZ3VhZ2UpKSB7CiAgICAgICAg
IHRocm93UmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAibGFuZ3VhZ2UgaXMgbm90IGEg
d2VsbC1mb3JtZWQgbGFuZ3VhZ2UgdmFsdWUiX3MpOwogICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgU3RyaW5nIHNjcmlwdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRp
b25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5zY3JpcHQsIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7Cisg
ICAgU3RyaW5nIHNjcmlwdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25z
LCB2bS5wcm9wZXJ0eU5hbWVzLT5zY3JpcHQsIHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFT
Q0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lk
KCkpOwogICAgIGlmICghc2NyaXB0LmlzTnVsbCgpICYmICFpc1VuaWNvZGVTY3JpcHRTdWJ0YWco
c2NyaXB0KSkgewogICAgICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwg
InNjcmlwdCBpcyBub3QgYSB3ZWxsLWZvcm1lZCBzY3JpcHQgdmFsdWUiX3MpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIHJlZ2lvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xv
YmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5yZWdpb24sIHsgfSwgbnVsbHB0
ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIHJlZ2lvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFs
T2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5yZWdpb24sIHsgfSwgQVNDSUlMaXRl
cmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghcmVnaW9uLmlzTnVsbCgpICYmICFpc1VuaWNv
ZGVSZWdpb25TdWJ0YWcocmVnaW9uKSkgewogICAgICAgICB0aHJvd1JhbmdlRXJyb3IoZ2xvYmFs
T2JqZWN0LCBzY29wZSwgInJlZ2lvbiBpcyBub3QgYSB3ZWxsLWZvcm1lZCByZWdpb24gdmFsdWUi
X3MpOwpAQCAtMjc1LDcgKzI3NSw3IEBAIHZvaWQgSW50bExvY2FsZTo6aW5pdGlhbGl6ZUxvY2Fs
ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBTdHJpbmcmIHRhCiAgICAgaWYg
KCFsYW5ndWFnZS5pc051bGwoKSB8fCAhc2NyaXB0LmlzTnVsbCgpIHx8ICFyZWdpb24uaXNOdWxs
KCkpCiAgICAgICAgIGxvY2FsZUlELm92ZXJyaWRlTGFuZ3VhZ2VTY3JpcHRSZWdpb24obGFuZ3Vh
Z2UsIHNjcmlwdCwgcmVnaW9uKTsKIAotICAgIFN0cmluZyBjYWxlbmRhciA9IGludGxTdHJpbmdP
cHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jYWxlbmRhciwg
eyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgY2FsZW5kYXIgPSBpbnRsU3RyaW5n
T3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+Y2FsZW5kYXIs
IHsgfSwgQVNDSUlMaXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY2FsZW5kYXIuaXNO
dWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1VuaWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShjYWxl
bmRhcikpIHsKQEAgLTI4NSw3ICsyODUsNyBAQCB2b2lkIEludGxMb2NhbGU6OmluaXRpYWxpemVM
b2NhbGUoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgU3RyaW5nJiB0YQogICAg
ICAgICBsb2NhbGVJRC5zZXRLZXl3b3JkVmFsdWUoImNhbGVuZGFyIl9zLCBjYWxlbmRhcik7CiAg
ICAgfQogCi0gICAgU3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2Jq
ZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgbnVsbHB0ciwg
bnVsbHB0cik7CisgICAgU3RyaW5nIGNvbGxhdGlvbiA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFs
T2JqZWN0LCBvcHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5jb2xsYXRpb24sIHsgfSwgQVNDSUlM
aXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY29sbGF0aW9uLmlzTnVsbCgpKSB7CiAg
ICAgICAgIGlmICghaXNVbmljb2RlTG9jYWxlSWRlbnRpZmllclR5cGUoY29sbGF0aW9uKSkgewpA
QCAtMjk1LDEyICsyOTUsMTIgQEAgdm9pZCBJbnRsTG9jYWxlOjppbml0aWFsaXplTG9jYWxlKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgdGEKICAgICAgICAgbG9j
YWxlSUQuc2V0S2V5d29yZFZhbHVlKCJjb2xsYXRpb24iX3MsIGNvbGxhdGlvbik7CiAgICAgfQog
Ci0gICAgU3RyaW5nIGhvdXJDeWNsZSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBv
cHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5ob3VyQ3ljbGUsIHsgImgxMSIsICJoMTIiLCAiaDIz
IiwgImgyNCIgfSwgImhvdXJDeWNsZSBtdXN0IGJlIFwiaDExXCIsIFwiaDEyXCIsIFwiaDIzXCIs
IG9yIFwiaDI0XCIiLCBudWxscHRyKTsKKyAgICBTdHJpbmcgaG91ckN5Y2xlID0gaW50bFN0cmlu
Z09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmhvdXJDeWNs
ZSwgeyAiaDExIiwgImgxMiIsICJoMjMiLCAiaDI0IiB9LCAiaG91ckN5Y2xlIG11c3QgYmUgXCJo
MTFcIiwgXCJoMTJcIiwgXCJoMjNcIiwgb3IgXCJoMjRcIiJfcywgQVNDSUlMaXRlcmFsOjpudWxs
KCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAgaWYgKCFo
b3VyQ3ljbGUuaXNOdWxsKCkpCiAgICAgICAgIGxvY2FsZUlELnNldEtleXdvcmRWYWx1ZSgiaG91
cnMiX3MsIGhvdXJDeWNsZSk7CiAKLSAgICBTdHJpbmcgY2FzZUZpcnN0ID0gaW50bFN0cmluZ09w
dGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPmNhc2VGaXJzdCwg
eyAidXBwZXIiLCAibG93ZXIiLCAiZmFsc2UiIH0sICJjYXNlRmlyc3QgbXVzdCBiZSBlaXRoZXIg
XCJ1cHBlclwiLCBcImxvd2VyXCIsIG9yIFwiZmFsc2VcIiIsIG51bGxwdHIpOworICAgIFN0cmlu
ZyBjYXNlRmlyc3QgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0u
cHJvcGVydHlOYW1lcy0+Y2FzZUZpcnN0LCB7ICJ1cHBlciIsICJsb3dlciIsICJmYWxzZSIgfSwg
ImNhc2VGaXJzdCBtdXN0IGJlIGVpdGhlciBcInVwcGVyXCIsIFwibG93ZXJcIiwgb3IgXCJmYWxz
ZVwiIl9zLCBBU0NJSUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgdm9pZCgpKTsKICAgICBpZiAoIWNhc2VGaXJzdC5pc051bGwoKSkKICAgICAgICAgbG9j
YWxlSUQuc2V0S2V5d29yZFZhbHVlKCJjb2xjYXNlZmlyc3QiX3MsIGNhc2VGaXJzdCk7CkBAIC0z
MTAsNyArMzEwLDcgQEAgdm9pZCBJbnRsTG9jYWxlOjppbml0aWFsaXplTG9jYWxlKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgdGEKICAgICBpZiAobnVtZXJpYyAh
PSBUcmlTdGF0ZTo6SW5kZXRlcm1pbmF0ZSkKICAgICAgICAgbG9jYWxlSUQuc2V0S2V5d29yZFZh
bHVlKCJjb2xudW1lcmljIl9zLCBudW1lcmljID09IFRyaVN0YXRlOjpUcnVlID8gInllcyIgOiAi
bm8iKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGds
b2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7
IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRs
U3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bnVt
YmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJSUxpdGVyYWw6Om51
bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICBpZiAo
IW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlzVW5pY29kZUxvY2Fs
ZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlQ29uc3RydWN0b3IuY3BwCmluZGV4IDM3
NjUzYmIzNzEzOTU3NzIyNjVlYWVlYzNlMTE1ZGIwZjE4ZWJiYmMuLjA5MmQ4YTQ0ZjIxZWFiMWY0
OTUyMTliYTZkMWY3ZmFkMTYwYmU0ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxMb2NhbGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZUNvbnN0cnVjdG9yLmNwcApAQCAtMzUsNyArMzUsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJ
QkxFKEludGxMb2NhbGVDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsTG9jYWxl
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTG9jYWxlQ29uc3RydWN0b3IpIH07
Citjb25zdCBDbGFzc0luZm8gSW50bExvY2FsZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShJbnRsTG9jYWxlQ29uc3RydWN0b3IpIH07CiAKIEludGxMb2NhbGVDb25zdHJ1Y3Rvciog
SW50bExvY2FsZUNvbnN0cnVjdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSwgSW50bExvY2FsZVByb3RvdHlwZSogbG9jYWxlUHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bExvY2FsZVByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBlLmNwcAppbmRl
eCAwOTBjOTI1MzIzMWQ2MjM5Zjk0OWQzODI2YjBkZjY0NjQyNjA5MjhmLi4zMmQyMjgyNGRlYzZl
ZGE1ZmM0ZmJmY2UwMDRkZjdlOGUwMjZkOGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsTG9jYWxlUHJvdG90eXBlLmNwcApAQCAtNTksNyArNTksNyBA
QCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihpbnRsTG9jYWxlUHJvdG90eXBlR2V0
dGVyV2Vla0luZm8pOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEludGxM
b2NhbGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkludGwuTG9jYWxlIiwgJkJhc2U6OnNfaW5mbywg
JmxvY2FsZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxM
b2NhbGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bExvY2FsZVByb3RvdHlwZTo6
c19pbmZvID0geyAiSW50bC5Mb2NhbGUiX3MsICZCYXNlOjpzX2luZm8sICZsb2NhbGVQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsTG9jYWxlUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxMb2NhbGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBs
b2NhbGVQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bE51bWJlckZvcm1hdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsTnVtYmVyRm9ybWF0LmNwcAppbmRleCA5NTNjMzlmZTY0YTllODRkMGJiNmMxMGMwNDJi
MDczYWY2OWUzNTY5Li5jYTA0MjQ5ODUwMWYyNjgwODdmNDQ1MWViZmVlNzI5Y2FlZDkxMzhjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0
LmNwcApAQCAtNTEsNyArNTEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEludGxOdW1iZXJGb3JtYXQ6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3Qi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bE51bWJlckZvcm1hdCkgfTsKIAogbmFtZXNwYWNlIEludGxOdW1iZXJGb3JtYXRJbnRlcm5h
bCB7CiBzdGF0aWMgY29uc3RleHByIGJvb2wgdmVyYm9zZSA9IGZhbHNlOwpAQCAtMzA0LDcgKzMw
NCw3IEBAIHZvaWQgSW50bE51bWJlckZvcm1hdDo6aW5pdGlhbGl6ZU51bWJlckZvcm1hdChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhCiAgICAgTG9jYWxlTWF0Y2hlciBsb2NhbGVN
YXRjaGVyID0gaW50bE9wdGlvbjxMb2NhbGVNYXRjaGVyPihnbG9iYWxPYmplY3QsIG9wdGlvbnMs
IHZtLnByb3BlcnR5TmFtZXMtPmxvY2FsZU1hdGNoZXIsIHsgeyAibG9va3VwIl9zLCBMb2NhbGVN
YXRjaGVyOjpMb29rdXAgfSwgeyAiYmVzdCBmaXQiX3MsIExvY2FsZU1hdGNoZXI6OkJlc3RGaXQg
fSB9LCAibG9jYWxlTWF0Y2hlciBtdXN0IGJlIGVpdGhlciBcImxvb2t1cFwiIG9yIFwiYmVzdCBm
aXRcIiJfcywgTG9jYWxlTWF0Y2hlcjo6QmVzdEZpdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElP
TihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBudW1iZXJpbmdTeXN0ZW0gPSBpbnRsU3Ry
aW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bnVtYmVy
aW5nU3lzdGVtLCB7IH0sIG51bGxwdHIsIG51bGxwdHIpOworICAgIFN0cmluZyBudW1iZXJpbmdT
eXN0ZW0gPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVy
dHlOYW1lcy0+bnVtYmVyaW5nU3lzdGVtLCB7IH0sIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpLCBBU0NJ
SUxpdGVyYWw6Om51bGwoKSk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgp
KTsKICAgICBpZiAoIW51bWJlcmluZ1N5c3RlbS5pc051bGwoKSkgewogICAgICAgICBpZiAoIWlz
VW5pY29kZUxvY2FsZUlkZW50aWZpZXJUeXBlKG51bWJlcmluZ1N5c3RlbSkpIHsKQEAgLTMyOCw3
ICszMjgsNyBAQCB2b2lkIEludGxOdW1iZXJGb3JtYXQ6OmluaXRpYWxpemVOdW1iZXJGb3JtYXQo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYQogICAgIG1fc3R5bGUgPSBpbnRsT3B0
aW9uPFN0eWxlPihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnN0eWxl
LCB7IHsgImRlY2ltYWwiX3MsIFN0eWxlOjpEZWNpbWFsIH0sIHsgInBlcmNlbnQiX3MsIFN0eWxl
OjpQZXJjZW50IH0sIHsgImN1cnJlbmN5Il9zLCBTdHlsZTo6Q3VycmVuY3kgfSwgeyAidW5pdCJf
cywgU3R5bGU6OlVuaXQgfSB9LCAic3R5bGUgbXVzdCBiZSBlaXRoZXIgXCJkZWNpbWFsXCIsIFwi
cGVyY2VudFwiLCBcImN1cnJlbmN5XCIsIG9yIFwidW5pdFwiIl9zLCBTdHlsZTo6RGVjaW1hbCk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyBj
dXJyZW5jeSA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCBJZGVudGlm
aWVyOjpmcm9tU3RyaW5nKHZtLCAiY3VycmVuY3kiKSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsK
KyAgICBTdHJpbmcgY3VycmVuY3kgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0
aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0cmluZyh2bSwgImN1cnJlbmN5IiksIHsgfSwgQVNDSUlM
aXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCB2b2lkKCkpOwogICAgIGlmICghY3VycmVuY3kuaXNOdWxsKCkpIHsKICAg
ICAgICAgaWYgKCFpc1dlbGxGb3JtZWRDdXJyZW5jeUNvZGUoY3VycmVuY3kpKSB7CkBAIC0zNTUs
NyArMzU1LDcgQEAgdm9pZCBJbnRsTnVtYmVyRm9ybWF0Ojppbml0aWFsaXplTnVtYmVyRm9ybWF0
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmEKICAgICBtX2N1cnJlbmN5U2lnbiA9
IGludGxPcHRpb248Q3VycmVuY3lTaWduPihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIElkZW50aWZp
ZXI6OmZyb21TdHJpbmcodm0sICJjdXJyZW5jeVNpZ24iKSwgeyB7ICJzdGFuZGFyZCJfcywgQ3Vy
cmVuY3lTaWduOjpTdGFuZGFyZCB9LCB7ICJhY2NvdW50aW5nIl9zLCBDdXJyZW5jeVNpZ246OkFj
Y291bnRpbmcgfSB9LCAiY3VycmVuY3lTaWduIG11c3QgYmUgZWl0aGVyIFwic3RhbmRhcmRcIiBv
ciBcImFjY291bnRpbmdcIiJfcywgQ3VycmVuY3lTaWduOjpTdGFuZGFyZCk7CiAgICAgUkVUVVJO
X0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKIAotICAgIFN0cmluZyB1bml0ID0gaW50bFN0
cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIElkZW50aWZpZXI6OmZyb21TdHJpbmco
dm0sICJ1bml0IiksIHsgfSwgbnVsbHB0ciwgbnVsbHB0cik7CisgICAgU3RyaW5nIHVuaXQgPSBp
bnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9iamVjdCwgb3B0aW9ucywgSWRlbnRpZmllcjo6ZnJvbVN0
cmluZyh2bSwgInVuaXQiKSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFs
OjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAgICAg
c3RkOjpvcHRpb25hbDxXZWxsRm9ybWVkVW5pdD4gd2VsbEZvcm1lZFVuaXQ7CiAgICAgaWYgKCF1
bml0LmlzTnVsbCgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCA0MTY0MDg5OTdj
MThmN2M3NjI4Zjc3NWI4ZDQxZGY3NzI0MmE0ZDE2Li42YmZiODk5ZWI5ZDI4MjQxMmNlMjgzNTUx
YmIyYjkzNDU4ZTAxNTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bE51bWJlckZvcm1hdENv
bnN0cnVjdG9yRnVuY1N1cHBvcnRlZExvY2FsZXMKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkJhc2U6OnNfaW5mbywgJm51bWJlckZvcm1hdENvbnN0cnVjdG9yVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZudW1iZXJGb3JtYXRDb25zdHJ1Y3RvclRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rv
cikgfTsKIAogLyogU291cmNlIGZvciBJbnRsTnVtYmVyRm9ybWF0Q29uc3RydWN0b3IubHV0LmgK
IEBiZWdpbiBudW1iZXJGb3JtYXRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUuY3Bw
CmluZGV4IDhkYjI5NDA4YWRmYWJjYTE4MzZkMTkwZDhjZDFiOGU1NTg1OWZhZWIuLjA1MWZmZThh
YjM0ODI3NjE3YmY1NTgwOGUzODhmZjRhNmE4OWI0MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxOdW1iZXJGb3JtYXRQcm90b3R5cGUuY3Bw
CkBAIC01Myw3ICs1Myw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxO
dW1iZXJGb3JtYXRQcm90b3R5cGVGdW5jRm9ybWF0UmFuZ2VUb1BhcnRzCiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bE51bWJlckZvcm1hdFByb3RvdHlwZTo6c19pbmZv
ID0geyAiSW50bC5OdW1iZXJGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmbnVtYmVyRm9ybWF0UHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE51bWJlckZvcm1h
dFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBl
OjpzX2luZm8gPSB7ICJJbnRsLk51bWJlckZvcm1hdCJfcywgJkJhc2U6OnNfaW5mbywgJm51bWJl
ckZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxO
dW1iZXJGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bE51bWJlckZvcm1h
dFByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlckZvcm1hdFByb3RvdHlwZVRhYmxlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3QuY3BwCmluZGV4IDA0OWJjMzk0
NjgyNTZkZTM2ZmJjZGRhOGZhMjcyMjE5YmIzMThlZjQuLjVlMTc2OWUzZjU5YWY5MDU4ZGZhZTky
ZTU3OTYwZWViZDhmZTBhMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxPYmplY3QuY3BwCkBAIC0xNjgsNyArMTY4LDcgQEAgc3RydWN0IE1hdGNoZXJSZXN1bHQgewog
ICAgIHNpemVfdCBleHRlbnNpb25JbmRleCB7IDAgfTsKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBJ
bnRsT2JqZWN0OjpzX2luZm8gPSB7ICJJbnRsIiwgJkJhc2U6OnNfaW5mbywgJmludGxPYmplY3RU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsT2JqZWN0KSB9OworY29uc3Qg
Q2xhc3NJbmZvIEludGxPYmplY3Q6OnNfaW5mbyA9IHsgIkludGwiX3MsICZCYXNlOjpzX2luZm8s
ICZpbnRsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bE9iamVj
dCkgfTsKIAogdm9pZCBVRmllbGRQb3NpdGlvbkl0ZXJhdG9yRGVsZXRlcjo6b3BlcmF0b3IoKShV
RmllbGRQb3NpdGlvbkl0ZXJhdG9yKiBpdGVyYXRvcikgY29uc3QKIHsKQEAgLTU4OCw3ICs1ODgs
NyBAQCBUcmlTdGF0ZSBpbnRsQm9vbGVhbk9wdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU09iamVjdCogb3B0aW9ucywgUHJvcAogICAgIHJldHVybiB0cmlTdGF0ZSh2YWx1ZS50
b0Jvb2xlYW4oZ2xvYmFsT2JqZWN0KSk7CiB9CiAKLVN0cmluZyBpbnRsU3RyaW5nT3B0aW9uKEpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5h
bWUgcHJvcGVydHksIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxjb25zdCBjaGFyKj4gdmFsdWVzLCBj
b25zdCBjaGFyKiBub3RGb3VuZCwgY29uc3QgY2hhciogZmFsbGJhY2spCitTdHJpbmcgaW50bFN0
cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU09iamVjdCogb3B0aW9u
cywgUHJvcGVydHlOYW1lIHByb3BlcnR5LCBzdGQ6OmluaXRpYWxpemVyX2xpc3Q8Y29uc3QgY2hh
cio+IHZhbHVlcywgQVNDSUlMaXRlcmFsIG5vdEZvdW5kLCBBU0NJSUxpdGVyYWwgZmFsbGJhY2sp
CiB7CiAgICAgLy8gR2V0T3B0aW9uIChvcHRpb25zLCBwcm9wZXJ0eSwgdHlwZT0ic3RyaW5nIiwg
dmFsdWVzLCBmYWxsYmFjaykKICAgICAvLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWE0MDIv
I3NlYy1nZXRvcHRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxPYmplY3Qu
aAppbmRleCA5OGU5YmI1ODNlNTViYjdjZjk3YjBhODU4MWMwYjhjNjVjZjFjOTk3Li4zNDExNzY0
MjI4ZmFiNDgyMmE2Y2JlODA2ZTg4ZTg2MWYzNDJmYjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bE9iamVjdC5oCkBAIC0xMjIsNyArMTIyLDcgQEAgVGltZVpvbmVJRCB1
dGNUaW1lWm9uZUlEU2xvdygpOwogQ2FsZW5kYXJJRCB1dGNUaW1lWm9uZUlEKCk7CiAKIFRyaVN0
YXRlIGludGxCb29sZWFuT3B0aW9uKEpTR2xvYmFsT2JqZWN0KiwgSlNPYmplY3QqIG9wdGlvbnMs
IFByb3BlcnR5TmFtZSk7Ci1TdHJpbmcgaW50bFN0cmluZ09wdGlvbihKU0dsb2JhbE9iamVjdCos
IEpTT2JqZWN0KiBvcHRpb25zLCBQcm9wZXJ0eU5hbWUsIHN0ZDo6aW5pdGlhbGl6ZXJfbGlzdDxj
b25zdCBjaGFyKj4gdmFsdWVzLCBjb25zdCBjaGFyKiBub3RGb3VuZCwgY29uc3QgY2hhciogZmFs
bGJhY2spOworU3RyaW5nIGludGxTdHJpbmdPcHRpb24oSlNHbG9iYWxPYmplY3QqLCBKU09iamVj
dCogb3B0aW9ucywgUHJvcGVydHlOYW1lLCBzdGQ6OmluaXRpYWxpemVyX2xpc3Q8Y29uc3QgY2hh
cio+IHZhbHVlcywgQVNDSUlMaXRlcmFsIG5vdEZvdW5kLCBBU0NJSUxpdGVyYWwgZmFsbGJhY2sp
OwogdW5zaWduZWQgaW50bE51bWJlck9wdGlvbihKU0dsb2JhbE9iamVjdCosIEpTT2JqZWN0KiBv
cHRpb25zLCBQcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIG1pbmltdW0sIHVuc2lnbmVkIG1heGltdW0s
IHVuc2lnbmVkIGZhbGxiYWNrKTsKIHVuc2lnbmVkIGludGxEZWZhdWx0TnVtYmVyT3B0aW9uKEpT
R2xvYmFsT2JqZWN0KiwgSlNWYWx1ZSwgUHJvcGVydHlOYW1lLCB1bnNpZ25lZCBtaW5pbXVtLCB1
bnNpZ25lZCBtYXhpbXVtLCB1bnNpZ25lZCBmYWxsYmFjayk7CiBWZWN0b3I8Y2hhciwgMzI+IGxv
Y2FsZUlEQnVmZmVyRm9yTGFuZ3VhZ2VUYWdXaXRoTnVsbFRlcm1pbmF0b3IoY29uc3QgQ1N0cmlu
ZyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJh
bFJ1bGVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxl
cy5jcHAKaW5kZXggYTg1MTMxMWM3NDRiNWVhYjE2NWFjN2Y0ZDU2NzEwMDZkODY2NzgzZS4uNjhl
ZGYxNjNiZDQ3OWZhMTg2MWUwMjNiMmQ3NzI0NzgzYzZkZmRlYiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXMuY3BwCkBAIC01Miw3ICs1Miw3
IEBAIHZvaWQgVVBsdXJhbFJ1bGVzRGVsZXRlcjo6b3BlcmF0b3IoKShVUGx1cmFsUnVsZXMqIHBs
dXJhbFJ1bGVzKQogICAgICAgICB1cGxydWxlc19jbG9zZShwbHVyYWxSdWxlcyk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBJbnRsUGx1cmFsUnVsZXM6OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJh
bFJ1bGVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlczo6c19pbmZvID0geyAi
T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEludGxQbHVyYWxSdWxlcykgfTsKIAogdXNpbmcgVUVudW1lcmF0aW9uRGVsZXRlciA9
IElDVURlbGV0ZXI8dWVudW1fY2xvc2U+OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
ODEyYWFhMjAwMGUzMGI5ZTZiOWNmNzMwNTdiZWQ0NDQwMjI3ODgxNi4uMDBlZmJhNWMxZGVlMmQ2
OTI0NGIyYmEwYTVhNGFlMTg1ODMyOTQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yLmNwcApAQCAt
NDQsNyArNDQsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsUGx1cmFs
UnVsZXNDb25zdHJ1Y3RvckZ1bmNTdXBwb3J0ZWRMb2NhbGVzTwogCiBuYW1lc3BhY2UgSlNDIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZwbHVyYWxSdWxlc0NvbnN0
cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFBsdXJhbFJ1bGVz
Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVzQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAm
cGx1cmFsUnVsZXNDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEludGxQbHVyYWxSdWxlc0NvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxQbHVy
YWxSdWxlc0NvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gcGx1cmFsUnVsZXNDb25zdHJ1Y3RvclRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFs
UnVsZXNQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFBs
dXJhbFJ1bGVzUHJvdG90eXBlLmNwcAppbmRleCA2MmMwOGJmOTU3YTEzMmYxMmQ2ZDRiZmIyZDgx
Y2RiMDk4ZDNhNTkxLi4yYjRlOTU2Yzg1NDU5ZjU0NWEyMGMyZjJkNzkxNmJlZDY1MWM5OGU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUGx1cmFsUnVsZXNQ
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxQbHVy
YWxSdWxlc1Byb3RvdHlwZS5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJF
X0hPU1RfRlVOQ1RJT04oaW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlRnVuY1Jlc29sdmVkT3B0aW9u
cyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFBsdXJhbFJ1bGVz
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlBsdXJhbFJ1bGVzIiwgJkJhc2U6OnNfaW5mbywg
JnBsdXJhbFJ1bGVzUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxQbHVyYWxS
dWxlc1Byb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5QbHVyYWxSdWxlcyJfcywgJkJhc2U6OnNf
aW5mbywgJnBsdXJhbFJ1bGVzUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW50bFBsdXJhbFJ1bGVzUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9yIEludGxQ
bHVyYWxSdWxlc1Byb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBsdXJhbFJ1bGVzUHJvdG90eXBlVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0
aXZlVGltZUZvcm1hdC5jcHAKaW5kZXggZTMyOGExYzFmNDBjNDllNjk1NDUxYTUzZDI5OWU1MjMx
N2I5ZDc1Ni4uOTVjNDNhZjc3ZTc3OTljMmVhYjMzZTc0ZmUwYTEzMWM1MGE1NjY2YSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGltZUZvcm1h
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZlVGlt
ZUZvcm1hdC5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0
IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxS
ZWxhdGl2ZVRpbWVGb3JtYXQpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFJlbGF0aXZlVGltZUZv
cm1hdDo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxhdGl2ZVRpbWVGb3JtYXQpIH07CiAKIG5h
bWVzcGFjZSBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0SW50ZXJuYWwgewogfQpAQCAtOTYsNyArOTYs
NyBAQCB2b2lkIEludGxSZWxhdGl2ZVRpbWVGb3JtYXQ6OmluaXRpYWxpemVSZWxhdGl2ZVRpbWVG
b3JtYXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbAogICAgIExvY2FsZU1hdGNoZXIgbG9jYWxlTWF0
Y2hlciA9IGludGxPcHRpb248TG9jYWxlTWF0Y2hlcj4oZ2xvYmFsT2JqZWN0LCBvcHRpb25zLCB2
bS5wcm9wZXJ0eU5hbWVzLT5sb2NhbGVNYXRjaGVyLCB7IHsgImxvb2t1cCJfcywgTG9jYWxlTWF0
Y2hlcjo6TG9va3VwIH0sIHsgImJlc3QgZml0Il9zLCBMb2NhbGVNYXRjaGVyOjpCZXN0Rml0IH0g
fSwgImxvY2FsZU1hdGNoZXIgbXVzdCBiZSBlaXRoZXIgXCJsb29rdXBcIiBvciBcImJlc3QgZml0
XCIiX3MsIExvY2FsZU1hdGNoZXI6OkJlc3RGaXQpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIHZvaWQoKSk7CiAKLSAgICBTdHJpbmcgbnVtYmVyaW5nU3lzdGVtID0gaW50bFN0cmlu
Z09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPm51bWJlcmlu
Z1N5c3RlbSwgeyB9LCBudWxscHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgbnVtYmVyaW5nU3lz
dGVtID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5
TmFtZXMtPm51bWJlcmluZ1N5c3RlbSwgeyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlM
aXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7
CiAgICAgaWYgKCFudW1iZXJpbmdTeXN0ZW0uaXNOdWxsKCkpIHsKICAgICAgICAgaWYgKCFpc1Vu
aWNvZGVMb2NhbGVJZGVudGlmaWVyVHlwZShudW1iZXJpbmdTeXN0ZW0pKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFJlbGF0aXZl
VGltZUZvcm1hdENvbnN0cnVjdG9yLmNwcAppbmRleCBhODI1YzM2NjcxM2MxNDQ5MGNiNmRkZWI0
NTc2ZGJkNTU2Y2YzNjY0Li5kNjdlY2YyNWU4NzYzMDg0MmUwYzZhNDU4ZWYzOTJjMWEyZTgyNjNm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVU
aW1lRm9ybWF0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcg
QEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFJlbGF0aXZlVGltZUZvcm1h
dENvbnN0cnVjdG9yRnVuY1N1cHBvcnRlZEwKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdENv
bnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZl
VGltZUZvcm1hdENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxSZWxhdGl2ZVRp
bWVGb3JtYXRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sICZyZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvclRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxSZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3Rv
cikgfTsKIAogLyogU291cmNlIGZvciBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0Q29uc3RydWN0b3Iu
bHV0LmgKIEBiZWdpbiByZWxhdGl2ZVRpbWVGb3JtYXRDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsUmVsYXRpdmVUaW1lRm9ybWF0
UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2
ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCmluZGV4IGQ0Nzk0NWFkNmE5NzJhZmZmNWU2MzhiYWQ5
NGU0MmUwOWY5OWUzMjEuLmFmYjQwYTdjNzczNWQ3NDlkMzQzYWJlZDg0MjliNWY4ZmIxZjIzZjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxSZWxhdGl2ZVRp
bWVGb3JtYXRQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUuY3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90
b3R5cGVGdW5jUmVzb2x2ZWRPcHRpCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5SZWxh
dGl2ZVRpbWVGb3JtYXQiLCAmQmFzZTo6c19pbmZvLCAmcmVsYXRpdmVUaW1lRm9ybWF0UHJvdG90
eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFJlbGF0aXZlVGltZUZv
cm1hdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsUmVsYXRpdmVUaW1lRm9ybWF0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlJlbGF0aXZlVGltZUZvcm1hdCJfcywgJkJhc2U6
OnNfaW5mbywgJnJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEludGxSZWxhdGl2ZVRpbWVGb3JtYXRQcm90b3R5cGUpIH07CiAKIC8q
IFNvdXJjZSBmb3IgSW50bFJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZS5sdXQuaAogQGJlZ2lu
IHJlbGF0aXZlVGltZUZvcm1hdFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwCmluZGV4IGE1Y2QwM2Jl
OGJkMDhkZWYxMWY2MDRmZDVjZWU3NjUwZDAxYTAxOWQuLjAxNmExYzMyMjY5NmE2NzViMGZhZDRk
OWJmZTlkMjBlOGQ1MjM0MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0ludGxTZWdtZW50SXRlcmF0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRJdGVyYXRvcjo6c19pbmZv
ID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxT
ZWdtZW50SXRlcmF0b3I6OnNfaW5mbyA9IHsgIk9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yKSB9
OwogCiBJbnRsU2VnbWVudEl0ZXJhdG9yKiBJbnRsU2VnbWVudEl0ZXJhdG9yOjpjcmVhdGUoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9y
LCBVQnJlYWtJdGVyYXRvckRlbGV0ZXI+JiYgc2VnbWVudGVyLCBCb3g8VmVjdG9yPFVDaGFyPj4g
YnVmZmVyLCBKU1N0cmluZyogc3RyaW5nLCBJbnRsU2VnbWVudGVyOjpHcmFudWxhcml0eSBncmFu
dWxhcml0eSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAKaW5kZXggMDdjMDVjYmMwYmNh
ZTljMjVhM2YzY2IwMTFlYzMyYWQ4YzU2MzMyNS4uNTU5YzU4YzM0NGJiODM5YjRmNDQ5OTMyMWEx
YTA5ODg2MjA5MDg2YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5
LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRJdGVyYXRv
clByb3RvdHlwZUZ1bmNOZXh0KTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZWdtZW50IFN0cmlu
ZyBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50SXRlcmF0b3JQcm90b3R5cGVUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudEl0ZXJhdG9yUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50SXRlcmF0b3JQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlNlZ21lbnQgU3RyaW5nIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCAmc2Vn
bWVudEl0ZXJhdG9yUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SW50bFNlZ21lbnRJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBJbnRsU2Vn
bWVudEl0ZXJhdG9yUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gc2VnbWVudEl0ZXJhdG9yUHJvdG90
eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxT
ZWdtZW50ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRl
ci5jcHAKaW5kZXggOGQ4NWZlN2M5Y2MyZTYwY2ZlNmIyMjM4MzM0OTdkZGY5YjRmN2NiMy4uM2Zk
YTA1ZDI5MDc5MDU4NDdhMGE4ZjFmMTI1ZDQwYzgxZTVkMWZjMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyOjpzX2lu
Zm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21l
bnRlcjo6c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXIpIH07CiAKIEludGxTZWdtZW50
ZXIqIEludGxTZWdtZW50ZXI6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRl
ckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdt
ZW50ZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU5MDYxMDUwY2VjYmJhZWQ5Y2E0MTJjNDYwNzEx
NzkwOTVlOWQwNC4uZjFkMWVjNDFkOGJiNjkzNTg1NTIzNGQ5MzI2OTdlMzRhZTEyMjI0ZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlckNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVu
dGVyQ29uc3RydWN0b3IuY3BwCkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9I
T1NUX0ZVTkNUSU9OKGludGxTZWdtZW50ZXJDb25zdHJ1Y3RvclN1cHBvcnRlZExvY2FsZXNPZik7
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRlckNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZzZWdtZW50ZXJD
b25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50
ZXJDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudGVyQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVyQ29u
c3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudGVy
Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFNlZ21lbnRlckNvbnN0cnVjdG9y
Lmx1dC5oCiBAYmVnaW4gc2VnbWVudGVyQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlclByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcApp
bmRleCA2NmE1Y2MzYTk3ZWRmNjk4YmJiOWExZTIzMTZlMGMxZmM5OWE5ZTVhLi5iYmUwOTQ3YWRj
M2ZkMmU3MDllYzY5NjkyYTA1NzM1MDkzZDY4ODU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyUHJvdG90eXBlLmNwcApAQCAtNDAs
NyArNDAsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihpbnRsU2VnbWVudGVy
UHJvdG90eXBlRnVuY1Jlc29sdmVkT3B0aW9ucyk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSW50bFNlZ21lbnRlclByb3RvdHlwZTo6c19pbmZvID0geyAiSW50bC5TZWdt
ZW50ZXIiLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudGVyUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSW50bFNlZ21lbnRlclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBJbnRsU2VnbWVudGVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbnRsLlNlZ21lbnRl
ciJfcywgJkJhc2U6OnNfaW5mbywgJnNlZ21lbnRlclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50ZXJQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJj
ZSBmb3IgSW50bFNlZ21lbnRlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHNlZ21lbnRlclByb3Rv
dHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRz
LmNwcAppbmRleCA4ZGUzNGEzMDRlZGUwM2UwYjg0YjIwYzI4MDExMzQ0MTk5NmFiNGY4Li41MTVl
NTk1MjY1MzZlN2Q1ZmVjMTBjYzU1MmE5NjBiZGQ3OTJkYjliIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKQEAgLTM3LDcgKzM3LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2VnbWVudHM6OnNfaW5mbyA9
IHsgIk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSW50bFNlZ21lbnRzKSB9OworY29uc3QgQ2xhc3NJbmZvIEludGxTZWdtZW50czo6
c19pbmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEludGxTZWdtZW50cykgfTsKIAogSW50bFNlZ21lbnRzKiBJbnRs
U2VnbWVudHM6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBzdGQ6OnVuaXF1
ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4mJiBzZWdtZW50ZXIs
IEJveDxWZWN0b3I8VUNoYXI+PiYmIGJ1ZmZlciwgSlNTdHJpbmcqIHN0cmluZywgSW50bFNlZ21l
bnRlcjo6R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcAppbmRleCA1M2Uz
ZWNmMDJmZjg0YTI5MzY5YzU0OWE2NmQwNzg5NmU1ZWY2ZGQ3Li4wY2U1NWNkYzBmMWYxMDY5MWU5
ZWZiMzdlNjIzMTBiZmFmOWRhZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxTZWdtZW50c1Byb3RvdHlwZS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaW50bFNlZ21lbnRzUHJvdG90eXBlRnVu
Y0l0ZXJhdG9yKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBJbnRsU2Vn
bWVudHNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIiVTZWdtZW50cyUiLCAmQmFzZTo6c19pbmZvLCAm
c2VnbWVudHNQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRs
U2VnbWVudHNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSW50bFNlZ21lbnRzUHJvdG90
eXBlOjpzX2luZm8gPSB7ICIlU2VnbWVudHMlIl9zLCAmQmFzZTo6c19pbmZvLCAmc2VnbWVudHNQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJbnRsU2VnbWVudHNQ
cm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgSW50bFNlZ21lbnRzUHJvdG90eXBlLmx1dC5o
CiBAYmVnaW4gc2VnbWVudHNQcm90b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDA5MmJhNTU1OWQ1ZmMy
ZDU5ZWIxZGM2YjQ3NGUzY2U5NzFhZDEwOWEuLmEyMWVlZDNiMzg5NjJmYzdlYzhiNjRjOGVmN2Q5
ZWM1ZDliNWJlMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0l0
ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
dGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiSXRlcmF0
b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEl0ZXJhdG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEl0ZXJhdG9yUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogdm9pZCBJdGVy
YXRvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcApp
bmRleCAzMTc5ODVmZmVkNmFlYjNlODg1OTM4NDMwMjAzZWM5YmE0M2QwY2MwLi40YTg0MGVlZDZk
ZTFkNzUzNWQ2OWFmNTg5YzM5ZTk5NWZmODY1YTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0FycmF5LmNwcApAQCAtMzYsNyArMzYsNyBAQCBjb25zdCBBU0NJSUxpdGVyYWwg
TGVuZ3RoRXhjZWVkZWRUaGVNYXhpbXVtQXJyYXlMZW5ndGhFcnJvciB7ICJMZW5ndGggZXhjZWVk
ZWQgdAogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNBcnJheSk7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU0FycmF5OjpzX2luZm8gPSB7IkFycmF5IiwgJkpTTm9uRmlu
YWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0FycmF5KX07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheTo6c19pbmZvID0geyAiQXJyYXkiX3Ms
ICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNBcnJheSkgfTsKIAogSlNBcnJheSogSlNBcnJheTo6dHJ5Q3JlYXRlVW5pbml0
aWFsaXplZFJlc3RyaWN0ZWQoT2JqZWN0SW5pdGlhbGl6YXRpb25TY29wZSYgc2NvcGUsIEdDRGVm
ZXJyYWxDb250ZXh0KiBkZWZlcnJhbENvbnRleHQsIFN0cnVjdHVyZSogc3RydWN0dXJlLCB1bnNp
Z25lZCBpbml0aWFsTGVuZ3RoKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyLmNwcAppbmRleCBkYTZkMWRjZWIyMWU3YzBkN2ZhZDQ3NGJhNTEwOThj
MTNjYTY3MzU2Li45ZjhlNDJkYjY2MTQxMzc2YWI0OWI3NTQ5ZTQ3NzhmODhlMWEyNzA4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyLmNwcApAQCAt
MzEsOCArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJy
YXlCdWZmZXI6OnNfaW5mbyA9IHsKLSAgICAiQXJyYXlCdWZmZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXIpfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU0FycmF5QnVmZmVyOjpzX2luZm8gPSB7ICJBcnJheUJ1ZmZlciJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fy
cmF5QnVmZmVyKSB9OwogCiBKU0FycmF5QnVmZmVyOjpKU0FycmF5QnVmZmVyKFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZlB0cjxBcnJheUJ1ZmZlcj4mJiBhcnJheUJ1ZmZlcikKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IGI5MmNlMTU3
M2MwYzk1MWI5MGIxYjkxOTcwNTZhMTE1NjkxOWI2ZmEuLjM4ZjJhZGVjZjhkMDQxNGU3OTI5Y2I2
MzA3NDQyNWU2NDQzNWM4OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcApAQCAtNDEsMTMgKzQxLDEz
IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdFNoYXJlZEFycmF5
QnVmZmVyKTsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJDb25z
dHJ1Y3Rvcjo6c19pbmZvID0gewotICAgICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9y
KQogfTsKIAogdGVtcGxhdGU8PgogY29uc3QgQ2xhc3NJbmZvIEpTU2hhcmVkQXJyYXlCdWZmZXJD
b25zdHJ1Y3Rvcjo6c19pbmZvID0gewotICAgICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsCisgICAgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFyZWRBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yKQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcAppbmRleCBjZmEwOGNiZWY1MWYxMTU4MTk2
OTU1ZDA1MjcxZjY3NjIxZWJlOGM1Li4xOTBiZWYxMTJjYzVkYjkxMDgxMWJjZWI4YzQwNGU0Mjdj
MjkyMGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5
QnVmZmVyUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcApAQCAtOTgsNyArOTgsNyBAQCBzdGF0aWMgQUxXQVlT
X0lOTElORSBzdGQ6OnBhaXI8U3BlY2llc0NvbnN0cnVjdFJlc3VsdCwgSlNBcnJheUJ1ZmZlcio+
IHNwZWNpZXNDbwogICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIGFyZ3M7CiAgICAgYXJncy5hcHBl
bmQoanNOdW1iZXIobGVuZ3RoKSk7CiAgICAgQVNTRVJUKCFhcmdzLmhhc092ZXJmbG93ZWQoKSk7
Ci0gICAgSlNPYmplY3QqIG5ld09iamVjdCA9IGNvbnN0cnVjdChnbG9iYWxPYmplY3QsIHNwZWNp
ZXMudmFsdWUoKSwgYXJncywgIlNwZWNpZXMgY29uc3RydWN0aW9uIGRpZCBub3QgZ2V0IGEgdmFs
aWQgY29uc3RydWN0b3IiKTsKKyAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gY29uc3RydWN0KGds
b2JhbE9iamVjdCwgc3BlY2llcy52YWx1ZSgpLCBhcmdzLCAiU3BlY2llcyBjb25zdHJ1Y3Rpb24g
ZGlkIG5vdCBnZXQgYSB2YWxpZCBjb25zdHJ1Y3RvciJfcyk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQ
VElPTihzY29wZSwgZXJyb3JSZXN1bHQpOwogCiAgICAgLy8gMTcuIFBlcmZvcm0gPyBSZXF1aXJl
SW50ZXJuYWxTbG90KG5ldywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCkBAIC0yNTcsNyArMjU3LDcg
QEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHNoYXJlZEFycmF5QnVmZmVyUHJvdG9HZXR0ZXJG
dW5jQnl0ZUxlbmd0aCwgKEpTR2xvYmFsT2IKIH0KIAogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlC
dWZmZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsKLSAgICAiQXJyYXlCdWZmZXIiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQ
cm90b3R5cGUpCisgICAgIkFycmF5QnVmZmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQcm90b3R5cGUpCiB9Owog
CiBKU0FycmF5QnVmZmVyUHJvdG90eXBlOjpKU0FycmF5QnVmZmVyUHJvdG90eXBlKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0FycmF5QnVmZmVyVmlldy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyVmlldy5jcHAKaW5kZXggOTE5YjMxNTljYzM3NjA0NWQ5YWI5NmEz
YmU2MmUwYWFkMjI2YmU2Mi4uNmY4ZDVhZDBjOTM0YWViMjUzOTQwY2I3YWU4ZWUwYmMwYmQ5NGJj
MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZl
clZpZXcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZm
ZXJWaWV3LmNwcApAQCAtMzcsNyArMzcsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IENs
YXNzSW5mbyBKU0FycmF5QnVmZmVyVmlldzo6c19pbmZvID0gewotICAgICJBcnJheUJ1ZmZlclZp
ZXciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQXJyYXlCdWZmZXJWaWV3KQorICAgICJBcnJheUJ1ZmZlclZpZXciX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlclZp
ZXcpCiB9OwogCiBKU0FycmF5QnVmZmVyVmlldzo6Q29uc3RydWN0aW9uQ29udGV4dDo6Q29uc3Ry
dWN0aW9uQ29udGV4dCgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXlJdGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Fy
cmF5SXRlcmF0b3IuY3BwCmluZGV4IDFjYTI1MTQ2ZGEyMTU1MGQ3MzM0ODlmMzBiMzFkNTRjNjA3
OGEwOGIuLmEyNDFhZjgwOTU4N2NkZmZmZmMwZWU1OGQ5YmQ4Y2U3MTFkNjJiNjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcApAQCAt
MzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQXJy
YXlJdGVyYXRvcjo6c19pbmZvID0geyAiQXJyYXlJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUl0ZXJhdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlJdGVyYXRvcjo6c19pbmZvID0geyAiQXJyYXlJdGVyYXRv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0FycmF5SXRlcmF0b3IpIH07CiAKIEpTQXJyYXlJdGVyYXRvciogSlNBcnJheUl0ZXJhdG9y
OjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNPYmplY3QqIGl0ZXJhdGVk
T2JqZWN0LCBKU1ZhbHVlIGtpbmQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FzeW5jRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBc3luY0Z1bmN0aW9uLmNwcAppbmRleCA5MDg1N2Y0YjhjNTU3NTEwODhlMjgyMjll
NGZhYzZlMmJlOTMxZTBhLi41YzBjMzI5YTQ1NDkyMDUxOWZmMmZiNWEwNGRjM2FkYTM4YTQ3MWU4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jRnVuY3Rp
b24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5bmNGdW5jdGlv
bi5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0FzeW5jRnVuY3Rpb246OnNfaW5mbyA9IHsgIkFzeW5jRnVuY3Rpb24iLCAgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FzeW5jRnVu
Y3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBc3luY0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJB
c3luY0Z1bmN0aW9uIl9zLCAgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU0FzeW5jRnVuY3Rpb24pIH07CiAKIEpTQXN5bmNGdW5jdGlvbjo6SlNB
c3luY0Z1bmN0aW9uKFZNJiB2bSwgRnVuY3Rpb25FeGVjdXRhYmxlKiBleGVjdXRhYmxlLCBKU1Nj
b3BlKiBzY29wZSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBleGVjdXRh
YmxlLCBzY29wZSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNBc3luY0dlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FzeW5jR2VuZXJhdG9yLmNwcAppbmRleCBlZDUwNmVlZTE1ZjkzOGUyNTE0NGFmNDcy
NmJjYTI5YzQ0MWU5NDgyLi5mY2YxZDkyZTEwMzc1ZGU0MzZkNjBjYThjN2UxMGY0ZWVjNTA0OGQ4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJh
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5jR2VuZXJh
dG9yLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTQXN5bmNHZW5lcmF0b3I6OnNfaW5mbyA9IHsgIkFzeW5jR2VuZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FzeW5j
R2VuZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQXN5bmNHZW5lcmF0b3I6OnNfaW5mbyA9
IHsgIkFzeW5jR2VuZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3IpIH07CiAKIEpTQXN5bmNHZW5lcmF0
b3IqIEpTQXN5bmNHZW5lcmF0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJl
KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3luY0dl
bmVyYXRvckZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXN5
bmNHZW5lcmF0b3JGdW5jdGlvbi5jcHAKaW5kZXggNGIwMDI1YzU0NGM1OTkxZDQ4YTQ4NGFiY2Ri
ZjQ5YjdiNTY4NGE5Mi4uMzQyYmFhYzA3MzE4OTY0NTY4MzZhOTY3YTEzNGFiYTFiZjQ4NmRlNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBc3luY0dlbmVyYXRv
ckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FzeW5j
R2VuZXJhdG9yRnVuY3Rpb24uY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uOjpzX2luZm8gPSB7
ICJKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24iLCAgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24pIH07Citj
b25zdCBDbGFzc0luZm8gSlNBc3luY0dlbmVyYXRvckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJKU0Fz
eW5jR2VuZXJhdG9yRnVuY3Rpb24iX3MsICAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXN5bmNHZW5lcmF0b3JGdW5jdGlvbikgfTsKIAogSlNB
c3luY0dlbmVyYXRvckZ1bmN0aW9uOjpKU0FzeW5jR2VuZXJhdG9yRnVuY3Rpb24oVk0mIHZtLCBG
dW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTU2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JpZ0ludC5jcHAKaW5kZXggMDNkOTQ0
MGJhNWQwZTc4YmQzMTcxZGY3M2M2MjI5YzMyNWYxNDMyZC4uODlkN2JjZWVhOTU5NjU3NWUyZDk3
MmUxYzZjYTQ4YTY4ZWJkZTlkYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCaWdJbnQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
QmlnSW50LmNwcApAQCAtNjAsNyArNjAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTQmlnSW50OjpzX2luZm8gPSB7ICJCaWdJbnQiLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQmlnSW50KSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTQmlnSW50OjpzX2luZm8gPSB7ICJCaWdJbnQiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNCaWdJbnQpIH07CiAKIEpTQmlnSW50OjpKU0Jp
Z0ludChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBEaWdpdCogZGF0YSwgdW5zaWduZWQg
bGVuZ3RoKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMjQ1OSw3ICsyNDU5LDcgQEAg
SlNWYWx1ZSBKU0JpZ0ludDo6cGFyc2VJbnQoSlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9i
amVjdEZvck9PTSwgVk0mIHZtLCBDaGEKICAgICAgICAgQVNTRVJUKG51bGxPckdsb2JhbE9iamVj
dEZvck9PTSk7CiAgICAgICAgIGlmIChlcnJvclBhcnNlTW9kZSA9PSBFcnJvclBhcnNlTW9kZTo6
VGhyb3dFeGNlcHRpb25zKSB7CiAgICAgICAgICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJP
V19TQ09QRSh2bSk7Ci0gICAgICAgICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0
Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09N
LCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBCaWdJbnQiKSk7CisgICAgICAgICAgICB0aHJv
d1ZNRXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRlU3ludGF4RXJy
b3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0cmluZyB0byBC
aWdJbnQiX3MpKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gSlNWYWx1ZSgpOwogICAgIH0K
QEAgLTI1NzYsNyArMjU3Niw3IEBAIEpTVmFsdWUgSlNCaWdJbnQ6OnBhcnNlSW50KEpTR2xvYmFs
T2JqZWN0KiBudWxsT3JHbG9iYWxPYmplY3RGb3JPT00sIFZNJiB2bSwgQ2hhCiAgICAgICAgICAg
ICAgICAgaWYgKGVycm9yUGFyc2VNb2RlID09IEVycm9yUGFyc2VNb2RlOjpUaHJvd0V4Y2VwdGlv
bnMpIHsKICAgICAgICAgICAgICAgICAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgICAgICAgICAgICAgICAgICBBU1NFUlQobnVsbE9yR2xvYmFsT2JqZWN0Rm9y
T09NKTsKLSAgICAgICAgICAgICAgICAgICAgdGhyb3dWTUVycm9yKG51bGxPckdsb2JhbE9iamVj
dEZvck9PTSwgc2NvcGUsIGNyZWF0ZVN5bnRheEVycm9yKG51bGxPckdsb2JhbE9iamVjdEZvck9P
TSwgIkZhaWxlZCB0byBwYXJzZSBTdHJpbmcgdG8gQmlnSW50IikpOworICAgICAgICAgICAgICAg
ICAgICB0aHJvd1ZNRXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCBzY29wZSwgY3JlYXRl
U3ludGF4RXJyb3IobnVsbE9yR2xvYmFsT2JqZWN0Rm9yT09NLCAiRmFpbGVkIHRvIHBhcnNlIFN0
cmluZyB0byBCaWdJbnQiX3MpKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg
cmV0dXJuIEpTVmFsdWUoKTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3BwCmluZGV4IGM3YTE2Nzk1NTNlMDgxMzI1
NDUwNjRhNTI1ZTkxYTA0YjA3ZDRiYzguLjFlZTgxMWUwZDVmOWVkMzdhM2Q2OTBmZWFmYThlMzM4
MmFmYWJiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91
bmRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNCb3Vu
ZEZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQm91bmRG
dW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0JvdW5kRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTQm91bmRGdW5jdGlvbikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9O
KGJvdW5kVGhpc05vQXJnc0Z1bmN0aW9uQ2FsbCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogY2FsbEZyYW1lKSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTQ2FsbGVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQ2FsbGVlLmNwcAppbmRleCBkNTQ3MmU2MDYwNjczZGI5NDg0ZmJlYzVkYjY2OGMyMjIw
YmM2YjFiLi4zZDIxM2FlYmM0Y2ViMDUyZWM4MTE4ZWIxYTQzYmFmYTNlN2Q3YmEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NhbGxlZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDYWxsZWUuY3BwCkBAIC0zMCw3ICszMCw3IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDYWxsZWU6OnNfaW5mbyA9
IHsgIkNhbGxlZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNDYWxsZWUpIH07Citjb25zdCBDbGFzc0luZm8gSlNDYWxsZWU6OnNfaW5mbyA9
IHsgIkNhbGxlZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0NhbGxlZSkgfTsKIAogSlNDYWxsZWU6OkpTQ2FsbGVlKFZNJiB2bSwgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBC
YXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0NlbGwuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNw
cAppbmRleCA2Mzk0Mjg2N2ExMzBmZTZjNWZlMDE4ZTc0NGYxNGQ2MTE5ZGI0YzJhLi4xNjU1NDQ4
Yzg5YmI5ZTNkODIyY2VhMWY0MTZiNWQ2YThiOGE3OTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgdm9pZCBKU0NlbGw6OmR1bXAo
UHJpbnRTdHJlYW0mIG91dCkgY29uc3QKIAogdm9pZCBKU0NlbGw6OmR1bXBUb1N0cmVhbShjb25z
dCBKU0NlbGwqIGNlbGwsIFByaW50U3RyZWFtJiBvdXQpCiB7Ci0gICAgb3V0LnByaW50ZigiPCVw
LCAlcz4iLCBjZWxsLCBjZWxsLT5jbGFzc05hbWUoY2VsbC0+dm0oKSkpOworICAgIG91dC5wcmlu
dGYoIjwlcCwgJXM+IiwgY2VsbCwgY2VsbC0+Y2xhc3NOYW1lKGNlbGwtPnZtKCkpLmNoYXJhY3Rl
cnMoKSk7CiB9CiAKIHNpemVfdCBKU0NlbGw6OmVzdGltYXRlZFNpemVJbkJ5dGVzKFZNJiB2bSkg
Y29uc3QKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lkIEpTQ2VsbDo6Z2V0T3duU3BlY2lhbFByb3Bl
cnR5TmFtZXMoSlNPYmplY3QqLCBKU0dsb2JhbE9iamVjdCosIFByb3BlcnR5TmFtZQogICAgIFJF
TEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKLWNvbnN0IGNoYXIqIEpTQ2VsbDo6Y2xh
c3NOYW1lKFZNJiB2bSkgY29uc3QKK0FTQ0lJTGl0ZXJhbCBKU0NlbGw6OmNsYXNzTmFtZShWTSYg
dm0pIGNvbnN0CiB7CiAgICAgcmV0dXJuIGNsYXNzSW5mbyh2bSktPmNsYXNzTmFtZTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKaW5kZXggN2M4ODgzNDM5MmIwMTY0M2Ex
YzU4NzgwZGRlZDk1ZjZjNDI1YjNmYi4uZGYwNjk3NzcxYWRjZjY1YjNlZjFiN2RjZjQxZDE5ODIz
NjNjZDM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxs
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmgKQEAgLTEzOSw3
ICsxMzksNyBAQCBwdWJsaWM6CiAKICAgICBUeXBlSW5mbzo6SW5saW5lVHlwZUZsYWdzIGlubGlu
ZVR5cGVGbGFncygpIGNvbnN0IHsgcmV0dXJuIG1fZmxhZ3M7IH0KICAgICAKLSAgICBjb25zdCBj
aGFyKiBjbGFzc05hbWUoVk0mKSBjb25zdDsKKyAgICBBU0NJSUxpdGVyYWwgY2xhc3NOYW1lKFZN
JikgY29uc3Q7CiAKICAgICAvLyBFeHRyYWN0aW5nIHRoZSB2YWx1ZS4KICAgICBKU19FWFBPUlRf
UFJJVkFURSBib29sIGdldFN0cmluZyhKU0dsb2JhbE9iamVjdCosIFN0cmluZyYpIGNvbnN0Owpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDdXN0b21HZXR0ZXJG
dW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbUdldHRl
ckZ1bmN0aW9uLmNwcAppbmRleCA4YjhhNDFmNGM4YmZlMDg0NTlhZWEyYWNlZDcwMjhlYWJhMGE2
NWJhLi5mZmU2YmZkMzUyNzY0MjYxNmZkOTFmNzYzNzdkNjg2YTBiMDY0ODMwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbUdldHRlckZ1bmN0aW9uLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbUdldHRlckZ1bmN0
aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0N1c3Rv
bUdldHRlckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ3VzdG9tR2V0dGVyRnVuY3Rp
b246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9tR2V0dGVyRnVuY3Rpb24pIH07CiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjdXN0b21HZXR0ZXJGdW5jdGlvbkNhbGwpOwog
CiBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oY3VzdG9tR2V0dGVyRnVuY3Rpb25DYWxsLCAoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDdXN0b21TZXR0ZXJGdW5jdGlv
bi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRlckZ1bmN0
aW9uLmNwcAppbmRleCAzOWUyNzAyOTkwYWExMTU1NzE5YjY5ZDFiYWZjZDc4NDYwNDI3ZTdlLi44
NjI4MTg1NzhmMDkxZWQ3NDc1YjA4MDExYWFmOGU4MDgzNzAyNGMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRlckZ1bmN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0N1c3RvbVNldHRlckZ1bmN0aW9uLmNw
cApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTQ3VzdG9tU2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0N1c3RvbVNldHRl
ckZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ3VzdG9tU2V0dGVyRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTQ3VzdG9tU2V0dGVyRnVuY3Rpb24pIH07CiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjdXN0b21TZXR0ZXJGdW5jdGlvbkNhbGwpOwogCiBKU0Nf
REVGSU5FX0hPU1RfRlVOQ1RJT04oY3VzdG9tU2V0dGVyRnVuY3Rpb25DYWxsLCAoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1lKiBjYWxsRnJhbWUpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlldy5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3LmNwcAppbmRleCBhYmE2ODhkZTQ4NzFmODRj
NjI1MWI3OGYwYjgzY2Q2Mjg2NjcxZDIzLi45YTQzNWNjOWNiMmUxYWIzMDE5NDM1YWQ2ZGQwMzI4
ZDM0Y2RhYjA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Rh
dGFWaWV3LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3
LmNwcApAQCAtMzEsOCArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTRGF0YVZpZXc6OnNfaW5mbyA9IHsKLSAgICAiRGF0YVZpZXciLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGF0YVZpZXcpfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3OjpzX2luZm8gPSB7ICJEYXRhVmlldyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFWaWV3
KSB9OwogCiBKU0RhdGFWaWV3OjpKU0RhdGFWaWV3KFZNJiB2bSwgQ29uc3RydWN0aW9uQ29udGV4
dCYgY29udGV4dCwgQXJyYXlCdWZmZXIqIGJ1ZmZlcikKICAgICA6IEJhc2Uodm0sIGNvbnRleHQp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3UHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90
b3R5cGUuY3BwCmluZGV4IGU5OGM3OGFiYWJmOTgzMWNmZjA2NWMxYmU5MDJiZmFjODBhMDZkMmEu
LjM4Y2NmYWU2MzUwMGJkMDNiZjRkMmVmZGFkZmUxZDViNjZhNGNmMzMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCkBA
IC05NCw3ICs5NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3
UHJvdG9HZXR0ZXJCeXRlT2Zmc2V0KTsKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0lu
Zm8gSlNEYXRhVmlld1Byb3RvdHlwZTo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNl
OjpzX2luZm8sICZkYXRhVmlld1RhYmxlLCBudWxscHRyLAorICAgICJEYXRhVmlldyJfcywgJkJh
c2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsIG51bGxwdHIsCiAgICAgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0RhdGFWaWV3UHJvdG90eXBlKQogfTsKIApAQCAtMjMwLDcgKzIzMCw3IEBAIEpTQ19E
RUZJTkVfQ1VTVE9NX0dFVFRFUihkYXRhVmlld1Byb3RvR2V0dGVyQnVmZmVyLCAoSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjCiAKICAgICBKU0RhdGFWaWV3KiB2aWV3ID0ganNEeW5hbWljQ2Fz
dDxKU0RhdGFWaWV3Kj4odm0sIEpTVmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAo
IXZpZXcpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnVmZmVyIGV4cGVjdHMgfHRoaXN8IHRvIGJlIGEgRGF0
YVZpZXcgb2JqZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnVmZmVyIGV4cGVjdHMgfHRoaXN8IHRv
IGJlIGEgRGF0YVZpZXcgb2JqZWN0Il9zKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29w
ZSwgSlNWYWx1ZTo6ZW5jb2RlKHZpZXctPnBvc3NpYmx5U2hhcmVkSlNCdWZmZXIoZ2xvYmFsT2Jq
ZWN0KSkpOwogfQpAQCAtMjQyLDcgKzI0Miw3IEBAIEpTQ19ERUZJTkVfQ1VTVE9NX0dFVFRFUihk
YXRhVmlld1Byb3RvR2V0dGVyQnl0ZUxlbmd0aCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPCiAK
ICAgICBKU0RhdGFWaWV3KiB2aWV3ID0ganNEeW5hbWljQ2FzdDxKU0RhdGFWaWV3Kj4odm0sIEpT
VmFsdWU6OmRlY29kZSh0aGlzVmFsdWUpKTsKICAgICBpZiAoIXZpZXcpCi0gICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5
cGUuYnl0ZUxlbmd0aCBleHBlY3RzIHx0aGlzfCB0byBiZSBhIERhdGFWaWV3IG9iamVjdCIpOwor
ICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiRGF0
YVZpZXcucHJvdG90eXBlLmJ5dGVMZW5ndGggZXhwZWN0cyB8dGhpc3wgdG8gYmUgYSBEYXRhVmll
dyBvYmplY3QiX3MpOwogICAgIGlmICh2aWV3LT5pc0RldGFjaGVkKCkpCiAgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJVbmRlcmx5aW5nIEFycmF5
QnVmZmVyIGhhcyBiZWVuIGRldGFjaGVkIGZyb20gdGhlIHZpZXciX3MpOwogCkBAIC0yNTYsNyAr
MjU2LDcgQEAgSlNDX0RFRklORV9DVVNUT01fR0VUVEVSKGRhdGFWaWV3UHJvdG9HZXR0ZXJCeXRl
T2Zmc2V0LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE8KIAogICAgIEpTRGF0YVZpZXcqIHZpZXcg
PSBqc0R5bmFtaWNDYXN0PEpTRGF0YVZpZXcqPih2bSwgSlNWYWx1ZTo6ZGVjb2RlKHRoaXNWYWx1
ZSkpOwogICAgIGlmICghdmlldykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIkRhdGFWaWV3LnByb3RvdHlwZS5ieXRlT2Zmc2V0IGV4cGVjdHMg
fHRoaXN8IHRvIGJlIGEgRGF0YVZpZXcgb2JqZWN0Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZN
VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJEYXRhVmlldy5wcm90b3R5cGUuYnl0ZU9m
ZnNldCBleHBlY3RzIHx0aGlzfCB0byBiZSBhIERhdGFWaWV3IG9iamVjdCJfcyk7CiAgICAgaWYg
KHZpZXctPmlzRGV0YWNoZWQoKSkKICAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xv
YmFsT2JqZWN0LCBzY29wZSwgIlVuZGVybHlpbmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gZGV0YWNo
ZWQgZnJvbSB0aGUgdmlldyJfcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTRmluYWxpemF0aW9uUmVnaXN0cnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAKaW5kZXggZGY3ODg5MmJhMTI5
Y2Q1YjVmMGVhZGViMmZiMTVkY2U5NTE5MDRhNi4uNGE4Y2Q0OWI3NjhkYWIxMTQyYWMxNzBiY2Y5
OTc5NDRmY2RmOTA4ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNGaW5hbGl6YXRpb25SZWdpc3RyeS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5Ojpz
X2luZm8gPSB7ICJGaW5hbGl6YXRpb25SZWdpc3RyeSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGaW5hbGl6YXRpb25SZWdpc3RyeSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5OjpzX2luZm8gPSB7ICJGaW5h
bGl6YXRpb25SZWdpc3RyeSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsaXphdGlvblJlZ2lzdHJ5KSB9OwogCiBTdHJ1Y3R1cmUq
IEpTRmluYWxpemF0aW9uUmVnaXN0cnk6OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQogewpAQCAtMTY5LDcgKzE2
OSw3IEBAIHZvaWQgSlNGaW5hbGl6YXRpb25SZWdpc3RyeTo6cnVuRmluYWxpemF0aW9uQ2xlYW51
cChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0CiAgICAgd2hpbGUgKEpTVmFsdWUgdmFsdWUg
PSB0YWtlRGVhZEhvbGRpbmdzVmFsdWUoKSkgewogICAgICAgICBNYXJrZWRBcmd1bWVudEJ1ZmZl
ciBhcmdzOwogICAgICAgICBhcmdzLmFwcGVuZCh2YWx1ZSk7Ci0gICAgICAgIGNhbGwoZ2xvYmFs
T2JqZWN0LCBjYWxsYmFjaygpLCBhcmdzLCAiVGhpcyBzaG91bGQgbm90IGJlIHZpc2libGU6IHBs
ZWFzZSByZXBvcnQgYSBidWcgdG8gYnVncy53ZWJraXQub3JnIik7CisgICAgICAgIGNhbGwoZ2xv
YmFsT2JqZWN0LCBjYWxsYmFjaygpLCBhcmdzLCAiVGhpcyBzaG91bGQgbm90IGJlIHZpc2libGU6
IHBsZWFzZSByZXBvcnQgYSBidWcgdG8gYnVncy53ZWJraXQub3JnIl9zKTsKICAgICAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgdm9pZCgpKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwCmluZGV4IGQ5MzdiMzZiMzA0NTc0NDBj
ZWE4YmVhNTE4ZDE5ODE5YTY0YTlkNWMuLmEzNzZhZjVlZWEwZGU2YjUxNzBjNGZiNDQ3MzczMGQy
NTgzMzFjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVu
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24u
Y3BwCkBAIC01MywxMCArNTMsMTAgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNhbGxIb3N0
RnVuY3Rpb25Bc0NvbnN0cnVjdG9yLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE8KICAgICByZXR1
cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZU5vdEFDb25zdHJ1Y3Rv
ckVycm9yKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLT5qc0NhbGxlZSgpKSk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBKU0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGdW5jdGlvbikgfTsK
LWNvbnN0IENsYXNzSW5mbyBKU1N0cmljdEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNT
dHJpY3RGdW5jdGlvbikgfTsKLWNvbnN0IENsYXNzSW5mbyBKU1Nsb3BweUZ1bmN0aW9uOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTbG9wcHlGdW5jdGlvbikgfTsKLWNvbnN0IENsYXNzSW5mbyBKU0Fy
cm93RnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fycm93RnVuY3Rpb24pIH07Citjb25z
dCBDbGFzc0luZm8gSlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNGdW5jdGlvbikg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1N0cmljdEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1N0cmljdEZ1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2xvcHB5RnVuY3Rpb246
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2xvcHB5RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNBcnJvd0Z1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fycm93RnVuY3Rpb24p
IH07CiAKIGJvb2wgSlNGdW5jdGlvbjo6aXNIb3N0RnVuY3Rpb25Ob25JbmxpbmUoKSBjb25zdAog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3IuY3BwCmluZGV4
IDE1NjJhYzI2MmJkODAxMTA2MTRkZTQ5ZGIzOWRlNmI4MThkZDhmY2EuLjI0ZmJkZjYzYTY0MzM3
MDNmMDVhZTFhZGRmYzQwNDRkMGNjZDk1ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyYXRvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0dlbmVyYXRvcjo6c19pbmZvID0geyAiR2VuZXJhdG9y
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0dlbmVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0dlbmVyYXRvcjo6c19pbmZvID0geyAi
R2VuZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTR2VuZXJhdG9yKSB9OwogCiBKU0dlbmVyYXRvciogSlNHZW5lcmF0b3I6OmNy
ZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5lcmF0b3JGdW5jdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcAppbmRleCAwNmFl
MDUxOGFiMTkwYTQzYTEzOTZlODBjOTNkZDE2ZDAwZWEyNmI4Li5hNjk1NDYzNmFiZTRhMTg1OWRl
ZjNjY2ZhMjk5NzE1YWEyZDY3OTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dlbmVyYXRvckZ1bmN0aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTR2VuZXJhdG9yRnVuY3Rpb246OnNf
aW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0dlbmVyYXRvckZ1bmN0aW9uKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTR2VuZXJhdG9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkdlbmVyYXRvckZ1bmN0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTR2VuZXJhdG9yRnVuY3Rpb24pIH07CiAKIEpTR2VuZXJhdG9yRnVuY3Rpb246OkpTR2Vu
ZXJhdG9yRnVuY3Rpb24oVk0mIHZtLCBGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpT
U2NvcGUqIHNjb3BlLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIGV4ZWN1
dGFibGUsIHNjb3BlLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld0lubGluZXMuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oCmluZGV4
IGQzMmEyYjBjMGMwM2IzYzI5YmI4ZTVmZTk0YzNjMDdlZmJkOGI1NzAuLjE0YTZjZjM5YWRiNTk0
MmFhOTAxZmQ1Y2FlMGYzYzVjYzI0YjlhZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3SW5saW5lcy5o
CkBAIC0xMDYsMTEgKzEwNiwxMSBAQCBKU0dlbmVyaWNUeXBlZEFycmF5VmlldzxBZGFwdG9yPiog
SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OmNyZWF0ZSgKICAgICBzaXplX3QgZWxl
bWVudFNpemUgPSBzaXplb2YodHlwZW5hbWUgQWRhcHRvcjo6VHlwZSk7CiAgICAgQVNTRVJUKGJ1
ZmZlcik7CiAgICAgaWYgKCFBcnJheUJ1ZmZlclZpZXc6OnZlcmlmeVN1YlJhbmdlTGVuZ3RoKCpi
dWZmZXIsIGJ5dGVPZmZzZXQsIGxlbmd0aCwgZWxlbWVudFNpemUpKSB7Ci0gICAgICAgIHRocm93
RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCAiTGVuZ3RoIG91dCBvZiByYW5nZSBvZiBidWZmZXIiKSk7CisgICAgICAgIHRocm93RXhj
ZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAiTGVuZ3RoIG91dCBvZiByYW5nZSBvZiBidWZmZXIiX3MpKTsKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAgICAgfQogICAgIGlmICghQXJyYXlCdWZmZXJWaWV3Ojp2ZXJpZnlCeXRlT2Zmc2V0
QWxpZ25tZW50KGJ5dGVPZmZzZXQsIGVsZW1lbnRTaXplKSkgewotICAgICAgICB0aHJvd0V4Y2Vw
dGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwg
IkJ5dGUgb2Zmc2V0IGlzIG5vdCBhbGlnbmVkIikpOworICAgICAgICB0aHJvd0V4Y2VwdGlvbihn
bG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgIkJ5dGUg
b2Zmc2V0IGlzIG5vdCBhbGlnbmVkIl9zKSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IH0KICAgICBDb25zdHJ1Y3Rpb25Db250ZXh0IGNvbnRleHQodm0sIHN0cnVjdHVyZSwgV1RGTW92
ZShidWZmZXIpLCBieXRlT2Zmc2V0LCBsZW5ndGgpOwpAQCAtMTUyLDcgKzE1Miw3IEBAIGJvb2wg
SlNHZW5lcmljVHlwZWRBcnJheVZpZXc8QWRhcHRvcj46OnZhbGlkYXRlUmFuZ2UoCiAgICAgaWYg
KGNhbkFjY2Vzc1JhbmdlUXVpY2tseShvZmZzZXQsIGxlbmd0aCkpCiAgICAgICAgIHJldHVybiB0
cnVlOwogICAgIAotICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgc2NvcGUsIGNyZWF0
ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmFuZ2UgY29uc2lzdGluZyBvZiBvZmZzZXQgYW5k
IGxlbmd0aCBhcmUgb3V0IG9mIGJvdW5kcyIpKTsKKyAgICB0aHJvd0V4Y2VwdGlvbihnbG9iYWxP
YmplY3QsIHNjb3BlLCBjcmVhdGVSYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgIlJhbmdlIGNvbnNp
c3Rpbmcgb2Ygb2Zmc2V0IGFuZCBsZW5ndGggYXJlIG91dCBvZiBib3VuZHMiX3MpKTsKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlRnVuY3Rpb25zLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dlbmVyaWNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZUZ1
bmN0aW9ucy5oCmluZGV4IGRmMDQzNWY2ZTM3OTgwNjFkOWY2Y2NjNmQ3NTlkZmU2NmJkNmQ5ZmEu
LmI5NGViM2ZiMjI2YzUwMDA1Y2M4MWI1OTlkNjY1NWZkZjhiZDg5ZjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJvdG90
eXBlRnVuY3Rpb25zLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b3R5cGVGdW5jdGlvbnMuaApAQCAtNjYsNyArNjYsNyBAQCBp
bmxpbmUgSlNBcnJheUJ1ZmZlclZpZXcqIHNwZWNpZXNDb25zdHJ1Y3QoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNPYmplYwogICAgICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUs
IGRlZmF1bHRDb25zdHJ1Y3RvcigpKTsKIAogCi0gICAgSlNWYWx1ZSByZXN1bHQgPSBjb25zdHJ1
Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1
Y3RvciIpOworICAgIEpTVmFsdWUgcmVzdWx0ID0gY29uc3RydWN0KGdsb2JhbE9iamVjdCwgc3Bl
Y2llcywgYXJncywgInNwZWNpZXMgaXMgbm90IGEgY29uc3RydWN0b3IiX3MpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwogCiAgICAgaWYgKEpTQXJyYXlCdWZmZXJW
aWV3KiB2aWV3ID0ganNEeW5hbWljQ2FzdDxKU0FycmF5QnVmZmVyVmlldyo+KHZtLCByZXN1bHQp
KSB7CkBAIC0xMTUsNyArMTE1LDcgQEAgQUxXQVlTX0lOTElORSBFbmNvZGVkSlNWYWx1ZSBnZW5l
cmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNTZXQoVk0mIHZtLCBKU0dsb2JhbE8KICAgICAgICAg
ZG91YmxlIG9mZnNldE51bWJlciA9IGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMSkudG9J
bnRlZ2VyT3JJbmZpbml0eShnbG9iYWxPYmplY3QpOwogICAgICAgICBSRVRVUk5fSUZfRVhDRVBU
SU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKICAgICAgICAgaWYgKFVOTElLRUxZKG9mZnNl
dE51bWJlciA8IDApKQotICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1SYW5nZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJPZmZzZXQgc2hvdWxkIG5vdCBiZSBuZWdhdGl2ZSIpOworICAgICAg
ICAgICAgcmV0dXJuIHRocm93Vk1SYW5nZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJPZmZz
ZXQgc2hvdWxkIG5vdCBiZSBuZWdhdGl2ZSJfcyk7CiAgICAgICAgIGlmIChvZmZzZXROdW1iZXIg
PD0gbWF4U2FmZUludGVnZXIoKSAmJiBvZmZzZXROdW1iZXIgPD0gc3RhdGljX2Nhc3Q8ZG91Ymxl
PihzdGQ6Om51bWVyaWNfbGltaXRzPHNpemVfdD46Om1heCgpKSkKICAgICAgICAgICAgIG9mZnNl
dCA9IG9mZnNldE51bWJlcjsKICAgICAgICAgZWxzZQpAQCAtNjI1LDcgKzYyNSw3IEBAIEFMV0FZ
U19JTkxJTkUgRW5jb2RlZEpTVmFsdWUgZ2VuZXJpY1R5cGVkQXJyYXlWaWV3UHJpdmF0ZUZ1bmNT
dWJhcnJheUNyZWF0ZShWTSYKICAgICBhcmdzLmFwcGVuZChqc051bWJlcihsZW5ndGgpKTsKICAg
ICBBU1NFUlQoIWFyZ3MuaGFzT3ZlcmZsb3dlZCgpKTsKIAotICAgIEpTT2JqZWN0KiByZXN1bHQg
PSBjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3Qg
YSBjb25zdHJ1Y3RvciIpOworICAgIEpTT2JqZWN0KiByZXN1bHQgPSBjb25zdHJ1Y3QoZ2xvYmFs
T2JqZWN0LCBzcGVjaWVzLCBhcmdzLCAic3BlY2llcyBpcyBub3QgYSBjb25zdHJ1Y3RvciJfcyk7
CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgeyB9KTsKIAogICAgIEpTQXJyYXlCdWZm
ZXJWaWV3KiB2YWxpZGF0ZWQgPSB2YWxpZGF0ZVR5cGVkQXJyYXkoZ2xvYmFsT2JqZWN0LCByZXN1
bHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxM
ZXhpY2FsRW52aXJvbm1lbnQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNH
bG9iYWxMZXhpY2FsRW52aXJvbm1lbnQuY3BwCmluZGV4IDlhODFjOTY5M2EwZmNkNWUzMjg5Yzkx
ZjA2MzRiYTE3NmIzZTQ1ZDguLjY1YTI5ZjlkZGNiY2Q1NWE0MDI3ZGQ0NTJhZmUxMzZkNmNlNmQ0
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsTGV4
aWNhbEVudmlyb25tZW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0dsb2JhbExleGljYWxFbnZpcm9ubWVudC5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudDo6
c19pbmZvID0geyAiSlNHbG9iYWxMZXhpY2FsRW52aXJvbm1lbnQiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xvYmFsTGV4aWNhbEVudmly
b25tZW50KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsTGV4aWNhbEVudmlyb25tZW50Ojpz
X2luZm8gPSB7ICJKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0dsb2JhbExleGljYWxFbnZp
cm9ubWVudCkgfTsKIAogdm9pZCBKU0dsb2JhbExleGljYWxFbnZpcm9ubWVudDo6ZGVzdHJveShK
U0NlbGwqIGNlbGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0dsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ds
b2JhbE9iamVjdC5jcHAKaW5kZXggZmE2MjNlMDkwNzRjMzhmYmUzMjM0MTY3ZGNkNTkyMDJmOGYx
NTFiNi4uMDEyZjE5MWNkOWFhZWY3Mjg4M2IwNTJiNTRiMGIzNDc4M2U4Yzk3ZiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcApAQCAtNTE5
LDcgKzUxOSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihkaXNhYmxlU3VwZXJTYW1wbGVy
LCAoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqKSkKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0dsb2JhbE9iamVjdDo6c19pbmZvID0geyAiR2xvYmFsT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgJmdsb2JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0
OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sICZnbG9iYWxPYmpl
Y3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0dsb2JhbE9iamVjdCkgfTsK
IAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNHbG9iYWxPYmplY3Q6OnNfZ2xvYmFs
T2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZs
eS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0ltbXV0YWJsZUJ1dHRlcmZs
eS5jcHAKaW5kZXggZDU3YzZlNzg4MDFkOTdlNzk0YmM4MmI4MzdlYTU2M2EwNzNlM2E1Ny4uNTFj
MTc3ZGY5Zjk4ZWYyZTFkYTdmOTA2MzA4NjVhYTYyMGQ2ZGJlYiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbW11dGFibGVCdXR0ZXJmbHkuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW1tdXRhYmxlQnV0dGVyZmx5LmNwcApAQCAt
MzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW1t
dXRhYmxlQnV0dGVyZmx5OjpzX2luZm8gPSB7ICJJbW11dGFibGUgQnV0dGVyZmx5IiwgbnVsbHB0
ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ltbXV0YWJsZUJ1dHRl
cmZseSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ltbXV0YWJsZUJ1dHRlcmZseTo6c19pbmZvID0g
eyAiSW1tdXRhYmxlIEJ1dHRlcmZseSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0ltbXV0YWJsZUJ1dHRlcmZseSkgfTsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgVmlzaXRvcj4KIHZvaWQgSlNJbW11dGFibGVCdXR0ZXJmbHk6OnZpc2l0Q2hpbGRyZW5J
bXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlLmNwcAppbmRleCBmZjFkOGQwZTlk
ZWIwYWQxZDc2Yzg1YzMyZDE2OWEwZDk2MDZiOWViLi40ZTBlMWIzYzU2MDcxMmMwNWVjMDc4NDE3
OTQ2NzI1MmIxZjhhZTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0ludGVybmFsUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNJbnRlcm5hbFByb21pc2UuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNJbnRlcm5hbFByb21pc2U6OnNfaW5mbyA9IHsgIklu
dGVybmFsUHJvbWlzZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNJbnRlcm5hbFByb21pc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNJbnRl
cm5hbFByb21pc2U6OnNfaW5mbyA9IHsgIkludGVybmFsUHJvbWlzZSJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJvbWlz
ZSkgfTsKIAogSlNJbnRlcm5hbFByb21pc2UqIEpTSW50ZXJuYWxQcm9taXNlOjpjcmVhdGUoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggMzI2ZjBlN2NhOTliNDUyMTRmNGFjNzMyZDM4ODE4ZDM5NDFkYWQ4Ny4uNTliNTU5ZTk4
NTExOWViMzUxNzEyYzA4NTIxMzViMDEyYTIzZDJkNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rvci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFByb21pc2VDb25zdHJ1Y3Rv
ci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRf
SVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9yKTsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9y
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRlcm5hbFByb21pc2VDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmludGVybmFsUHJvbWlz
ZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbnRlcm5h
bFByb21pc2VDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBKU0ludGVybmFsUHJvbWlz
ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gaW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3JUYWJs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRlcm5hbFBy
b21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNJbnRl
cm5hbFByb21pc2VQcm90b3R5cGUuY3BwCmluZGV4IGE2OWQyNzBkNDhhYzA1NGJjMGM5NDhiZmY4
MTY1MmU1YzAzZGYzMmYuLmUxNzFjMzJmNDE4Nzc5NTgwNzM5MDc2YWQ1ZGRmY2FjODZkMjI1MGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0lu
dGVybmFsUHJvbWlzZVByb3RvdHlwZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShKU0ludGVybmFs
UHJvbWlzZVByb3RvdHlwZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ludGVybmFsUHJv
bWlzZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ludGVybmFsUHJvbWlzZVByb3Rv
dHlwZTo6c19pbmZvID0geyAiSW50ZXJuYWxQcm9taXNlUHJvdG90eXBlIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW50ZXJuYWxQcm9t
aXNlUHJvdG90eXBlKSB9OwogCiBKU0ludGVybmFsUHJvbWlzZVByb3RvdHlwZSogSlNJbnRlcm5h
bFByb21pc2VQcm90b3R5cGU6OmNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNMZXhpY2FsRW52aXJvbm1lbnQuY3BwCmluZGV4IGMxNTFmNGQ5
Y2FiZDk1NzBkODYxNDI0ZDAwZDI5YmIyMTY1ZmExOTMuLjkxMjU5ODlmZjM5ZThlMGVmMzgzMTU4
ZDYyNmE4YTgxNThjZDJmZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTTGV4aWNhbEVudmlyb25tZW50LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0xleGljYWxFbnZpcm9ubWVudC5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0xleGljYWxFbnZpcm9ubWVudDo6c19p
bmZvID0geyAiSlNMZXhpY2FsRW52aXJvbm1lbnQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTGV4aWNhbEVudmlyb25tZW50KSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTTGV4aWNhbEVudmlyb25tZW50OjpzX2luZm8gPSB7ICJKU0xleGljYWxF
bnZpcm9ubWVudCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0xleGljYWxFbnZpcm9ubWVudCkgfTsKIAogdGVtcGxhdGU8dHlwZW5hbWUg
VmlzaXRvcj4KIHZvaWQgSlNMZXhpY2FsRW52aXJvbm1lbnQ6OnZpc2l0Q2hpbGRyZW5JbXBsKEpT
Q2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTTWFwLmNwcAppbmRleCAxOWRiNTE2MTlkMDk3ZTUwN2JkNzk2ZmMxMDc3MDdlMjIwMGI3MDIz
Li42NjcwMTVkMmIxNjJkZDg1YzZiYTE1NWVmNDk2MGI0YTdhZGQxOGFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNYXAuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNNYXA6OnNfaW5mbyA9IHsgIk1hcCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNYXApIH07
Citjb25zdCBDbGFzc0luZm8gSlNNYXA6OnNfaW5mbyA9IHsgIk1hcCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcCkgfTsKIAogSlNN
YXAqIEpTTWFwOjpjbG9uZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNNYXBJdGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU01hcEl0ZXJhdG9yLmNwcAppbmRleCA1NTFlYzM1NjJjNGQ0M2EzODU5ODhkODNlODg2NGFh
YTk0NjQyMjEzLi41NzMxMTNiN2QxOTAyOGJhMTg2ZGM1MWJjYTdiZjFmZmZkZWRjZDU0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcApAQCAt
MzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTWFw
SXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1hcCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNYXBJdGVyYXRvcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU01hcEl0ZXJhdG9yOjpzX2luZm8gPSB7ICJNYXAgSXRlcmF0b3IiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNNYXBJ
dGVyYXRvcikgfTsKIAogSlNNYXBJdGVyYXRvciogSlNNYXBJdGVyYXRvcjo6Y3JlYXRlV2l0aElu
aXRpYWxWYWx1ZXMoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlRW52aXJvbm1lbnQuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAKaW5k
ZXggODVkMGMyZTAzMGMwYTk0N2M5YTc1MzQ1ZWNjZDc2MzQwYzY4MmNlNC4uNGI0YTIwNjcyNjg4
ZTk0NGM5MDlmYzZkOGU1MmIyNmU3OTRlMTdjZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVFbnZpcm9ubWVudC5jcHAKQEAgLTM0LDcgKzM0LDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZUVudmlyb25t
ZW50OjpzX2luZm8gPSB7ICJKU01vZHVsZUVudmlyb25tZW50IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUVudmlyb25tZW50KSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTTW9kdWxlRW52aXJvbm1lbnQ6OnNfaW5mbyA9IHsgIkpTTW9k
dWxlRW52aXJvbm1lbnQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVFbnZpcm9ubWVudCkgfTsKIAogSlNNb2R1bGVFbnZpcm9u
bWVudCogSlNNb2R1bGVFbnZpcm9ubWVudDo6Y3JlYXRlKAogICAgIFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTU2NvcGUqIGN1cnJlbnRTY29wZSwgU3ltYm9sVGFibGUqIHN5bWJvbFRh
YmxlLCBKU1ZhbHVlIGluaXRpYWxWYWx1ZSwgQWJzdHJhY3RNb2R1bGVSZWNvcmQqIG1vZHVsZVJl
Y29yZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxl
TG9hZGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTG9hZGVy
LmNwcAppbmRleCBiOGI5MjEyOGQxZGJkYTliNmExMGI1N2NkMThlNDM3MDQ5NThlMTg3Li5lZWQ0
NjM1MDEzMTZlM2EzZDQwNGYxZDY2ZGQ4ZjU2MTFhYWYzNWU1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01vZHVsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVMb2FkZXIuY3BwCkBAIC02Miw3ICs2Miw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElC
TEUoSlNNb2R1bGVMb2FkZXIpOwogCi1jb25zdCBDbGFzc0luZm8gSlNNb2R1bGVMb2FkZXI6OnNf
aW5mbyA9IHsgIk1vZHVsZUxvYWRlciIsICZCYXNlOjpzX2luZm8sICZtb2R1bGVMb2FkZXJUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZUxvYWRlcikgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU01vZHVsZUxvYWRlcjo6c19pbmZvID0geyAiTW9kdWxlTG9hZGVyIl9zLCAm
QmFzZTo6c19pbmZvLCAmbW9kdWxlTG9hZGVyVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNNb2R1bGVMb2FkZXIpIH07CiAKIC8qIFNvdXJjZSBmb3IgSlNNb2R1bGVMb2FkZXIu
bHV0LmgKIEBiZWdpbiBtb2R1bGVMb2FkZXJUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwCmluZGV4IDk2
YTBmN2RhNDNkM2NlODMxMWZlYzk2ZDk2MzgzOWFhYzk4NmU5MTQuLjIxODEwNGYyOTI5Y2Q3M2Rm
ZmM5Y2E5ZWE5ZDI1YzU5MDBhZDZkN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAKQEAgLTMyLDcgKzMy
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU01vZHVsZU5hbWVz
cGFjZU9iamVjdDo6c19pbmZvID0geyAiTW9kdWxlTmFtZXNwYWNlT2JqZWN0IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZU5hbWVz
cGFjZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01vZHVsZU5hbWVzcGFjZU9iamVjdDo6
c19pbmZvID0geyAiTW9kdWxlTmFtZXNwYWNlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0
KSB9OwogCiBKU01vZHVsZU5hbWVzcGFjZU9iamVjdDo6SlNNb2R1bGVOYW1lc3BhY2VPYmplY3Qo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVjb3Jk
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlUmVjb3JkLmNwcApp
bmRleCBjYmU2OTU4NTNkMmYxZWZhNjg5ZTFmZDdiN2JjN2NmOWJjNGE2YWI1Li5hYjdiZWNkOWM2
N2EwOGMyZmUyNThmN2RiOTEwNTRmMmJhZDc5ZDExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU01vZHVsZVJlY29yZC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVSZWNvcmQuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNNb2R1bGVSZWNvcmQ6OnNfaW5mbyA9
IHsgIk1vZHVsZVJlY29yZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNNb2R1bGVSZWNvcmQpIH07Citjb25zdCBDbGFzc0luZm8gSlNNb2R1
bGVSZWNvcmQ6OnNfaW5mbyA9IHsgIk1vZHVsZVJlY29yZCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01vZHVsZVJlY29yZCkgfTsKIAog
CiBTdHJ1Y3R1cmUqIEpTTW9kdWxlUmVjb3JkOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmF0aXZlU3RkRnVuY3Rpb24uY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHAKaW5k
ZXggODA2NDM5ZmRmMjU4N2IxNjhlYTY3NDgwMzc4NTA2MjMzNGViMTk5NS4uMTBjZjZmOTk2NDVk
YzM5N2EyYjZjM2VlOGFjZWIzOTI0NjlhODExZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNOYXRpdmVTdGRGdW5jdGlvbi5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU05hdGl2ZVN0ZEZ1bmN0
aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNOYXRpdmVTdGRGdW5jdGlvbikgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU05hdGl2ZVN0ZEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU05hdGl2
ZVN0ZEZ1bmN0aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihydW5T
dGRGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTT05PYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVj
dC5jcHAKaW5kZXggNmI3YzU4ODFhZDliZmZkY2E1YTI0OWE0MzcxMDI1YTJjZjQ3ZjgwYi4uYmY5
MDZhMjdmODM1OTcwYzg1NTk5MGQwNTJiM2RlM2M2OThhYWFkNCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAKQEAgLTYyOCw3ICs2MjgsNyBAQCBib29s
IFN0cmluZ2lmaWVyOjpIb2xkZXI6OmFwcGVuZE5leHRQcm9wZXJ0eShTdHJpbmdpZmllciYgc3Ry
aW5naWZpZXIsIFN0cmluZ0J1aQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g
SlNPTk9iamVjdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1jb25zdCBDbGFz
c0luZm8gSlNPTk9iamVjdDo6c19pbmZvID0geyAiSlNPTiIsICZKU05vbkZpbmFsT2JqZWN0Ojpz
X2luZm8sICZqc29uVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPTk9iamVj
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIl9zLCAm
SlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAmanNvblRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTT05PYmplY3QpIH07CiAKIC8qIFNvdXJjZSBmb3IgSlNPTk9iamVjdC5sdXQu
aAogQGJlZ2luIGpzb25UYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmpl
Y3QuY3BwCmluZGV4IDAzOWM0NjUwNTMxMWZjYTcxYjQyOTVmMWJhNjkzYjMwMjEwM2E5NDUuLjVj
MTExNjQxY2U0YmU0YThjZjBiODA0NTlmZTUyNzEzZjYxZGNkY2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAKQEAgLTY1LDkgKzY1LDkgQEAgY29uc3QgQVND
SUlMaXRlcmFsIFVuY29uZmlndXJhYmxlUHJvcGVydHlDaGFuZ2VDb25maWd1cmFiaWxpdHlFcnJv
ciB7ICJBdHRlbXB0aW4KIGNvbnN0IEFTQ0lJTGl0ZXJhbCBVbmNvbmZpZ3VyYWJsZVByb3BlcnR5
Q2hhbmdlRW51bWVyYWJpbGl0eUVycm9yIHsgIkF0dGVtcHRpbmcgdG8gY2hhbmdlIGVudW1lcmFi
bGUgYXR0cmlidXRlIG9mIHVuY29uZmlndXJhYmxlIHByb3BlcnR5LiJfcyB9OwogY29uc3QgQVND
SUlMaXRlcmFsIFVuY29uZmlndXJhYmxlUHJvcGVydHlDaGFuZ2VXcml0YWJpbGl0eUVycm9yIHsg
IkF0dGVtcHRpbmcgdG8gY2hhbmdlIHdyaXRhYmxlIGF0dHJpYnV0ZSBvZiB1bmNvbmZpZ3VyYWJs
ZSBwcm9wZXJ0eS4iX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTT2JqZWN0OjpzX2luZm8gPSB7
ICJPYmplY3QiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTT2JqZWN0OjpzX2luZm8gPSB7ICJPYmpl
Y3QiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNP
YmplY3QpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2JqZWN0OjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTRmluYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNGaW5hbE9iamVjdDo6c19p
bmZvID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRmluYWxPYmplY3QpIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFZp
c2l0b3I+CiBBTFdBWVNfSU5MSU5FIHZvaWQgSlNPYmplY3Q6Om1hcmtBdXhpbGlhcnlBbmRWaXNp
dE91dE9mTGluZVByb3BlcnRpZXMoVmlzaXRvciYgdmlzaXRvciwgQnV0dGVyZmx5KiBidXR0ZXJm
bHksIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQcm9wZXJ0eU9mZnNldCBtYXhPZmZzZXQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlLmNwcAppbmRleCAxYTFkN2MzZjNj
OWEzZjc3YTJiNGFhYmI1NmU3ZDQ3NTZmNGFmNTkzLi41YTJjNWZkYzRkNjcwYjVlY2FiN2UyYzQ4
YTk3MDc3ZTk5NmU2NzY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1Byb21pc2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
bWlzZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Byb21pc2U6OnNfaW5mbyA9IHsgIlByb21pc2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBKU1Byb21pc2U6OnNfaW5mbyA9IHsgIlByb21pc2UiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlKSB9Owog
CiBKU1Byb21pc2UqIEpTUHJvbWlzZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21p
c2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21p
c2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggOGQzYjliODY2M2I3MGFhNGFkYmY4YTVlMTA1ODIyODli
NDVjZjNhZi4uNjE4YmRiZmEyM2I2OTgzODU3ODE1OWVmNjg3NGE2N2U3NmIxMjhlYyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlQ29uc3RydWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNvbnN0cnVj
dG9yLmNwcApAQCAtNDEsNyArNDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNU
UlVDVElCTEUoSlNQcm9taXNlQ29uc3RydWN0b3IpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTUHJvbWlzZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb21pc2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb21pc2VDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2lu
Zm8sICZwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Byb21pc2VDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBKU1Byb21pc2VDb25z
dHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHByb21pc2VDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcAppbmRl
eCA5MTcyZmU1NzI0OTg4Y2IwYTcxOTE3NTA0ZTFlYmU5NTFkYzYwZGU3Li42NjY2YzdkNTAxOWY1
MWFlOGUwNDk0YzdlYWNiYjllOWQ5MTc2NGNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAg
U1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTUHJvbWlzZVByb3RvdHlw
ZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgJnByb21pc2VQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQcm9t
aXNlIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvbWlzZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBKU1Byb21pc2VQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBwcm9taXNlUHJvdG90eXBlVGFibGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1l
RW51bWVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb3BlcnR5
TmFtZUVudW1lcmF0b3IuY3BwCmluZGV4IDZlZTMyMGY3ZTNkOTA5YjZjZDBlMzc5MzYxZGEwYWEw
ZTg3NTdjNDMuLjUyNTA5YmI2ZTQ3MjE0MzBhMmFiMTBjZDMzODZiZTQzMWFlYjYzNDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lRW51bWVy
YXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcjo6c19pbmZvID0geyAiSlNQ
cm9wZXJ0eU5hbWVFbnVtZXJhdG9yIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUVudW1lcmF0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yOjpzX2luZm8gPSB7ICJKU1Byb3BlcnR5TmFtZUVu
dW1lcmF0b3IiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNQcm9wZXJ0eU5hbWVFbnVtZXJhdG9yKSB9OwogCiBKU1Byb3BlcnR5TmFtZUVudW1lcmF0
b3IqIEpTUHJvcGVydHlOYW1lRW51bWVyYXRvcjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIHVpbnQzMl90IGluZGV4ZWRMZW5ndGgsIHVpbnQzMl90IG51bWJlclN0cnVjdHVy
ZVByb3BlcnRpZXMsIFByb3BlcnR5TmFtZUFycmF5JiYgcHJvcGVydHlOYW1lcykKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJveHkuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKaW5kZXggZjQ1M2ZhYjljOGRhN2Qy
Y2Q0MTYzYjU1MzMwODY1NThlN2ZlNjJjYS4uNDgxZDg1NzkzZWMzOWIxYjQzNWQ5ZmJlZTJiYjZl
OTQyYWRmNGUxZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQ
cm94eS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAK
QEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShKU1Byb3h5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJveHk6
OnNfaW5mbyA9IHsgIkpTUHJveHkiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07Citjb25zdCBDbGFzc0luZm8gSlNQcm94eTo6
c19pbmZvID0geyAiSlNQcm94eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3h5KSB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNp
dG9yPgogdm9pZCBKU1Byb3h5Ojp2aXNpdENoaWxkcmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0
b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1JlbW90ZUZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUmVt
b3RlRnVuY3Rpb24uY3BwCmluZGV4IDU5MzlkOGYyZDUxZmEwYjNiZmI1NjI1ZjJiMWVmNTQ3YjI5
ZGUxZjAuLmFmMDcxOGU5YWFjZGE3OTcyZmU3NTA0OGI4ZjgwZjRkMTdmNjVjNWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUmVtb3RlRnVuY3Rpb24uY3BwCkBA
IC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNS
ZW1vdGVGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUmVtb3RlRnVuY3Rpb24pIH07Citj
b25zdCBDbGFzc0luZm8gSlNSZW1vdGVGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNS
ZW1vdGVGdW5jdGlvbikgfTsKIAogSlNSZW1vdGVGdW5jdGlvbjo6SlNSZW1vdGVGdW5jdGlvbihW
TSYgdm0sIE5hdGl2ZUV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdCogdGFyZ2V0RnVuY3Rpb24p
CiAgICAgOiBCYXNlKHZtLCBleGVjdXRhYmxlLCBnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSkKQEAg
LTY2LDcgKzY2LDcgQEAgc3RhdGljIGlubGluZSBKU1ZhbHVlIHdyYXBBcmd1bWVudChKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0dsb2JhbE9iamVjdCoKICAgICBKU1ZhbHVlIHJlc3Vs
dCA9IHdyYXBWYWx1ZShnbG9iYWxPYmplY3QsIHRhcmdldEdsb2JhbE9iamVjdCwgdmFsdWUpOwog
ICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHsgfSk7CiAgICAgaWYgKCFyZXN1bHQpCi0g
ICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5n
IGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIik7CisgICAgICAg
IHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5nIGJldHdl
ZW4gcmVhbG1zIG11c3QgYmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIl9zKTsKICAgICBSRUxFQVNF
X0FORF9SRVRVUk4oc2NvcGUsIHJlc3VsdCk7CiB9CiAKQEAgLTc3LDcgKzc3LDcgQEAgc3RhdGlj
IGlubGluZSBKU1ZhbHVlIHdyYXBSZXR1cm5WYWx1ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0dsb2JhbE9iamUKICAgICBKU1ZhbHVlIHJlc3VsdCA9IHdyYXBWYWx1ZShnbG9iYWxP
YmplY3QsIHRhcmdldEdsb2JhbE9iamVjdCwgdmFsdWUpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIHsgfSk7CiAgICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHRocm93VHlwZUVycm9y
KGdsb2JhbE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3Qg
YmUgY2FsbGFibGUgb3IgcHJpbWl0aXZlIik7CisgICAgICAgIHRocm93VHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJ2YWx1ZSBwYXNzaW5nIGJldHdlZW4gcmVhbG1zIG11c3QgYmUgY2Fs
bGFibGUgb3IgcHJpbWl0aXZlIl9zKTsKICAgICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIHJl
c3VsdCk7CiB9CiAKQEAgLTIyOCw3ICsyMjgsNyBAQCB2b2lkIEpTUmVtb3RlRnVuY3Rpb246OmZp
bmlzaENyZWF0aW9uKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSkKICAgICBh
dXRvKiBleGNlcHRpb24gPSBzY29wZS5leGNlcHRpb24oKTsKICAgICBpZiAoVU5MSUtFTFkoZXhj
ZXB0aW9uICYmICF2bS5pc1Rlcm1pbmF0aW9uRXhjZXB0aW9uKGV4Y2VwdGlvbikpKSB7CiAgICAg
ICAgIHNjb3BlLmNsZWFyRXhjZXB0aW9uKCk7Ci0gICAgICAgIHRocm93VHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJ3cmFwcGluZyByZXR1cm5lZCBmdW5jdGlvbiB0aHJvd3MgYW4gZXJy
b3IiKTsKKyAgICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIndyYXBw
aW5nIHJldHVybmVkIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvciJfcyk7CiAgICAgfQogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Njb3BlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUuY3BwCmluZGV4IDQ5NWRjNjNjNGZh
YmFhNDUxNTZkNTMzZWM1N2E1NzI0NDUwODYzMDQuLjgzNGNkMzM0MDE2YTIzN2E0N2Q2MjZkOWYx
MTk4NzI3MWU1NTQxOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NvcGUu
Y3BwCkBAIC0zOSw3ICszOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lT
X1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNTY29wZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Nj
b3BlOjpzX2luZm8gPSB7ICJTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Njb3Bl
OjpzX2luZm8gPSB7ICJTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Njb3BlKSB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNp
dG9yPgogdm9pZCBKU1Njb3BlOjp2aXNpdENoaWxkcmVuSW1wbChKU0NlbGwqIGNlbGwsIFZpc2l0
b3ImIHZpc2l0b3IpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1NjcmlwdEZldGNoUGFyYW1ldGVycy5jcHAKaW5kZXggOWYyMTUxZmI5M2E5MzU5ZjU1ZGI2
OWIxNTVlMTk1YTFmNTVjZTM1OS4uZmYwNmFmZThiMmIwZTcwYWJlZDU5NDFjMGIxNTFhMjgwYTc5
ZmRhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTY3JpcHRG
ZXRjaFBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2NyaXB0RmV0Y2hQYXJhbWV0ZXJzLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzOjpzX2luZm8g
PSB7ICJKU1NjcmlwdEZldGNoUGFyYW1ldGVycyIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnMpIH07Citjb25zdCBD
bGFzc0luZm8gSlNTY3JpcHRGZXRjaFBhcmFtZXRlcnM6OnNfaW5mbyA9IHsgIkpTU2NyaXB0RmV0
Y2hQYXJhbWV0ZXJzIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTU2NyaXB0RmV0Y2hQYXJhbWV0ZXJzKSB9OwogCiB2b2lkIEpTU2NyaXB0RmV0Y2hQ
YXJhbWV0ZXJzOjpkZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2NyaXB0RmV0Y2hlci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1NjcmlwdEZldGNoZXIuY3BwCmluZGV4IDI2YzljNzY2Y2YwMTUx
ZjZiM2FlNzAzZjgzMjczZDcxZjMwNGUzYjQuLmU0MzRhZGU4NDljMTZkYjRlZDE0YmY5Y2E1YjQy
NTUyZDBlMWVhMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2NyaXB0RmV0Y2hlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNT
Y3JpcHRGZXRjaGVyLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTU2NyaXB0RmV0Y2hlcjo6c19pbmZvID0geyAiSlNTY3JpcHRGZXRj
aGVyIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nj
cmlwdEZldGNoZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNTY3JpcHRGZXRjaGVyOjpzX2luZm8g
PSB7ICJKU1NjcmlwdEZldGNoZXIiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTY3JpcHRGZXRjaGVyKSB9OwogCiB2b2lkIEpTU2NyaXB0RmV0Y2hl
cjo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwCmluZGV4IGVi
Y2EyMWU4OTllZDk3Yzk3MTc5ZTBkMjQwMmRmMzcyMTUzYWIxMTcuLmE3NDgzNjQ1NGQ3NTgzODU2
YmRiNDM0ZTI1N2Q3MjYzNjMxM2YxMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTU2VnbWVudGVkVmFyaWFibGVPYmplY3QuY3BwCkBAIC0zNCw3
ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTZWdtZW50
ZWRWYXJpYWJsZU9iamVjdDo6c19pbmZvID0geyAiU2VnbWVudGVkVmFyaWFibGVPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2Vn
bWVudGVkVmFyaWFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNTZWdtZW50ZWRWYXJp
YWJsZU9iamVjdDo6c19pbmZvID0geyAiU2VnbWVudGVkVmFyaWFibGVPYmplY3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZWdtZW50
ZWRWYXJpYWJsZU9iamVjdCkgfTsKIAogU2NvcGVPZmZzZXQgSlNTZWdtZW50ZWRWYXJpYWJsZU9i
amVjdDo6ZmluZFZhcmlhYmxlSW5kZXgodm9pZCogdmFyaWFibGVBZGRyZXNzKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCmluZGV4IDk0NGUwZmEwOWVjNGFjYzJlOTM2
NjQ2OTA1Y2ExODM5MzhjMGQ1M2YuLjlhZjNkOTQ5ZjE3NjgxMzQ3ZjQyYjZjMDUyNWUxZTkzMjk2
NTJhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKQEAgLTMwLDcg
KzMwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NldDo6c19p
bmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1NldCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NldDo6c19pbmZvID0geyAi
U2V0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTU2V0KSB9OwogCiBKU1NldCogSlNTZXQ6OmNsb25lKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCmluZGV4IGJmMTc5YWViZGUx
ZDJlMTg3ZWY5NGQyYTVmNzkyODkwMTMyMzA4ZGMuLjEyNWViOTYwNjM3ZWYwZDdlZjdhOWZkOTNl
ZTMwYmMzODhlMTAyMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU2V0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2V0SXRlcmF0b3IuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Nl
dEl0ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0SXRlcmF0b3I6OnNfaW5mbyA9IHsg
IlNldCBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9OwogCiBKU1NldEl0ZXJhdG9yKiBKU1NldEl0
ZXJhdG9yOjpjcmVhdGVXaXRoSW5pdGlhbFZhbHVlcyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3Vy
Y2VDb2RlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU291cmNlQ29kZS5j
cHAKaW5kZXggOTEzYzU4MTZkNTc4ZmZmMGZiYjhjMjdhOTA0OGFhMTNlZTM4NTI2Ny4uNGUyMDBl
NTZkY2ZhNDczMDM5ZGM4OTA5Yjc4NGJiOWU0MDY2OGVhMSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTb3VyY2VDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1NvdXJjZUNvZGUuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNTb3VyY2VDb2RlOjpzX2luZm8gPSB7
ICJKU1NvdXJjZUNvZGUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTU291cmNlQ29kZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NvdXJjZUNvZGU6OnNf
aW5mbyA9IHsgIkpTU291cmNlQ29kZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1NvdXJjZUNvZGUpIH07CiAKIHZvaWQgSlNTb3VyY2VDb2RlOjpk
ZXN0cm95KEpTQ2VsbCogY2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTU3RyaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U3RyaW5nLmNwcAppbmRleCA1ODI1MjAzYjMyMGNiNzNkMzk3NWVjZWE2YmZmOTczYTEwZDBiYjQ4
Li5iNjczY2Q4MjEwMjMwZjg2MmZhMTdjNzJjYjA0NjdmNGVjMjkxNTVkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogICAgIAotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7
ICJzdHJpbmciLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7ICJzdHJp
bmciX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNT
dHJpbmcpIH07CiAKIFN0cnVjdHVyZSogSlNTdHJpbmc6OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG8pCiB7CkBAIC02Nyw3
ICs2Nyw3IEBAIHZvaWQgSlNTdHJpbmc6OmR1bXBUb1N0cmVhbShjb25zdCBKU0NlbGwqIGNlbGws
IFByaW50U3RyZWFtJiBvdXQpCiB7CiAgICAgVk0mIHZtID0gY2VsbC0+dm0oKTsKICAgICBjb25z
dCBKU1N0cmluZyogdGhpc09iamVjdCA9IGpzQ2FzdDxjb25zdCBKU1N0cmluZyo+KGNlbGwpOwot
ICAgIG91dC5wcmludGYoIjwlcCwgJXMsIFsldV0sICIsIHRoaXNPYmplY3QsIHRoaXNPYmplY3Qt
PmNsYXNzTmFtZSh2bSksIHRoaXNPYmplY3QtPmxlbmd0aCgpKTsKKyAgICBvdXQucHJpbnRmKCI8
JXAsICVzLCBbJXVdLCAiLCB0aGlzT2JqZWN0LCB0aGlzT2JqZWN0LT5jbGFzc05hbWUodm0pLmNo
YXJhY3RlcnMoKSwgdGhpc09iamVjdC0+bGVuZ3RoKCkpOwogICAgIHVpbnRwdHJfdCBwb2ludGVy
ID0gdGhpc09iamVjdC0+ZmliZXJDb25jdXJyZW50bHkoKTsKICAgICBpZiAocG9pbnRlciAmIGlz
Um9wZUluUG9pbnRlcikgewogICAgICAgICBpZiAocG9pbnRlciAmIEpTUm9wZVN0cmluZzo6aXNT
dWJzdHJpbmdJblBvaW50ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1N0cmluZ0l0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3RyaW5nSXRlcmF0b3IuY3BwCmluZGV4IGQ0YzEyZTliODRiZmE5OGVjY2JjNDk3NzcyYWUy
NTNmNTdmY2Y1NWQuLjI5NTViN2NmOGMwMWU0NDE2OTQ5N2ZhODY4ZjBhN2M4YjE2MjkwN2EgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nSXRlcmF0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0lu
Zm8gSlNTdHJpbmdJdGVyYXRvcjo6c19pbmZvID0geyAiU3RyaW5nIEl0ZXJhdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N0cmluZ0l0
ZXJhdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nSXRlcmF0b3I6OnNfaW5mbyA9IHsg
IlN0cmluZyBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1N0cmluZ0l0ZXJhdG9yKSB9OwogCiB2b2lkIEpTU3RyaW5nSXRl
cmF0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNTdHJpbmcqIGl0ZXJhdGVkU3RyaW5nKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTeW1ib2xUYWJs
ZU9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5bWJvbFRhYmxl
T2JqZWN0LmNwcAppbmRleCA4ZjBhOWNjZWE3MWU1YTExMDY3NDRlMTYwMTJlMGQ5Y2FjNTkyODk3
Li5mYjYwZmNlMDA4NWUyOGYwYTliOTg3YmY1MWU3MzBiMmQ5M2FkNzYwIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N5bWJvbFRhYmxlT2JqZWN0LmNwcApA
QCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
U3ltYm9sVGFibGVPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbFRhYmxlT2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1N5bWJvbFRh
YmxlT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3ltYm9sVGFibGVPYmplY3Q6OnNfaW5m
byA9IHsgIlN5bWJvbFRhYmxlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3ltYm9sVGFibGVPYmplY3QpIH07CiAKIHRlbXBs
YXRlPHR5cGVuYW1lIFZpc2l0b3I+CiB2b2lkIEpTU3ltYm9sVGFibGVPYmplY3Q6OnZpc2l0Q2hp
bGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVGVtcGxhdGVPYmplY3REZXNjcmlw
dG9yLmNwcAppbmRleCA0Mjg5OTBhM2FiNGE0YWJhNTI4Njg5Njk3NzhlMzFjMzAwNjU5Yzk4Li4w
ODgzZTg4YjcwM2NmYTE5Y2E4YmUzYTI0NTcxNmEwN2Y2ZTVhYjJmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUZW1wbGF0ZU9iamVjdERlc2Ny
aXB0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I6OnNfaW5mbyA9IHsgIlRlbXBsYXRl
T2JqZWN0RGVzY3JpcHRvciIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3I6OnNfaW5mbyA9IHsgIlRlbXBsYXRlT2JqZWN0RGVz
Y3JpcHRvciJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvcikgfTsKIAogCiBKU1RlbXBsYXRlT2JqZWN0RGVz
Y3JpcHRvcjo6SlNUZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IoVk0mIHZtLCBSZWY8VGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yPiYmIGRlc2NyaXB0b3IsIGludCBlbmRPZmZzZXQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Q29uc3RydWN0
b3JzLmNwcAppbmRleCA5NWFiZWM1NDA5YTMxZWE3ODMxM2QzYzVmMzlhZGI0NTg1YjhmYWQ0Li5i
ZTlhMjVhYmMzZTlhYzg4YjhkNjZiN2MzNzhkOWQ0YWU0ZjM0MmVkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICN1bmRlZiBNQUtFX1Nf
SU5GTwogI2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCi0gICAgdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7IkZ1bmN0aW9uIiwgJkpT
IyN0eXBlIyNDb25zdHJ1Y3Rvcjo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNDb25zdHJ1Y3Rvcil9CisgICAgdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkpTIyN0eXBlIyNDb25zdHJ1Y3Rvcjo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNDb25zdHJ1Y3RvcikgfQogCiBNQUtF
X1NfSU5GTyhJbnQ4QXJyYXkpOwogTUFLRV9TX0lORk8oSW50MTZBcnJheSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3RvdHlwZXMu
Y3BwCmluZGV4IGJhODE4ZWEzMDgyZmY0MDRjOWQ0YTdmMTQxODFlYzk3N2I4MTkzMGEuLjhkMTc2
Zjk0NGNlZGQwYjZiNTU2NmFjZDE4NjQ3MTE4NzI4YTgzNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3RvdHlwZXMuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVByb3RvdHlwZXMuY3BwCkBA
IC0zMSwxMiArMzEsMTEgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7IlByb3RvdHlwZSIsICZKU1R5cGVk
QXJyYXlWaWV3UHJvdG90eXBlOjpCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsCi0gICAg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBlKX07Citjb25zdCBD
bGFzc0luZm8gSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6c19pbmZvID0geyAiUHJvdG90eXBl
Il9zLCAmSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZTo6QmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUpIH07
CiAKICN1bmRlZiBNQUtFX1NfSU5GTwogI2RlZmluZSBNQUtFX1NfSU5GTyh0eXBlKSBcCi0gICAg
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlMjI3R5cGUjI1Byb3RvdHlwZTo6c19pbmZvID0g
eyN0eXBlICJQcm90b3R5cGUiLCAmSlMjI3R5cGUjI1Byb3RvdHlwZTo6QmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNQcm90b3R5cGUp
fQorICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBlIyNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgI3R5cGUgIlByb3RvdHlwZSJfcywgJkpTIyN0eXBlIyNQcm90b3R5cGU6OkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKUyMjdHlwZSMj
UHJvdG90eXBlKSB9CiAKIE1BS0VfU19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQx
NkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlw
ZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3IuY3BwCmluZGV4IGZhMzMzODJlZmM4M2MwNWYx
OTVkNTRiZTZmNDUwODQzYzEwYWY1MjEuLjQ3MzhmMGVlZjU3NGYyMmRmODQ3YTZjNDNhYjg3YTA1
NzgyYWNiNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlw
ZWRBcnJheVZpZXdDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yLmNwcApAQCAtMzksNyArMzksNyBAQCBK
U1R5cGVkQXJyYXlWaWV3Q29uc3RydWN0b3I6OkpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3RvcihW
TSYgdm0sIFN0cnVjdHVyZSogc3RydQogewogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUeXBlZEFy
cmF5Vmlld0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFycmF5Vmlld0Nv
bnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUeXBlZEFycmF5Vmlld0NvbnN0cnVjdG9yKSB9Owog
CiB2b2lkIEpTVHlwZWRBcnJheVZpZXdDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZt
LCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1R5cGVkQXJyYXlWaWV3UHJvdG90eXBl
KiBwcm90b3R5cGUsIEdldHRlclNldHRlciogc3BlY2llc1N5bWJvbCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheVZpZXdQcm90b3R5cGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZS5jcHAKaW5kZXggODgyN2IzZGU5OGZlMDVmZTU4YjkxNzA0MjllMzg2NDk5NWUxOWY1OC4u
M2Y5ZWM4NDAwZTllY2Y5ZWFhMDU5MzI3ZDUyMDY1ODc5ZDY2YWU5YiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1Byb3RvdHlwZS5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5Vmlld1Byb3Rv
dHlwZS5jcHAKQEAgLTI2Myw3ICsyNjMsNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04odHlw
ZWRBcnJheVZpZXdQcm90b0Z1bmNJbmNsdWRlcywgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYQogICAg
IGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKICAgICBKU1ZhbHVlIHRoaXNW
YWx1ZSA9IGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCk7CiAgICAgaWYgKCF0aGlzVmFsdWUuaXNPYmpl
Y3QoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCBj
cmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiUmVjZWl2ZXIgc2hvdWxkIGJlIGEgdHlwZWQg
YXJyYXkgdmlldyBidXQgd2FzIG5vdCBhbiBvYmplY3QiKSk7CisgICAgICAgIHJldHVybiB0aHJv
d1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVj
dCwgIlJlY2VpdmVyIHNob3VsZCBiZSBhIHR5cGVkIGFycmF5IHZpZXcgYnV0IHdhcyBub3QgYW4g
b2JqZWN0Il9zKSk7CiAgICAgc2NvcGUucmVsZWFzZSgpOwogICAgIENBTExfR0VORVJJQ19UWVBF
REFSUkFZX1BST1RPVFlQRV9GVU5DVElPTihnZW5lcmljVHlwZWRBcnJheVZpZXdQcm90b0Z1bmNJ
bmNsdWRlcyk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1R5cGVkQXJyYXlzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRB
cnJheXMuY3BwCmluZGV4IDkwYjMwNDU2NzBhZjBhYmUyZjZkMDI3ZWRlOWQ4ODVmZmYwNGFmMzku
LmQ5YjIyNjI5NDQwYzhjNzBhMWQ2YTNmMjkxOWUyN2NkMTQ4ZDRkMGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwCkBAIC00Niw3ICs0Niw3
IEBAIGNvbnN0IEFTQ0lJTGl0ZXJhbCB0eXBlZEFycmF5QnVmZmVySGFzQmVlbkRldGFjaGVkRXJy
b3JNZXNzYWdlIHsgIlVuZGVybHlpbmcgQXJyCiAjdW5kZWYgTUFLRV9TX0lORk8KICNkZWZpbmUg
TUFLRV9TX0lORk8odHlwZSkgXAogICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0
eXBlIyNBcnJheTo6c19pbmZvID0geyBcCi0gICAgICAgICN0eXBlICJBcnJheSIsICZKUyMjdHlw
ZSMjQXJyYXk6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgXAorICAgICAgICAjdHlw
ZSAiQXJyYXkiX3MsICZKUyMjdHlwZSMjQXJyYXk6OkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgXAogICAgICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTIyN0eXBlIyNBcnJheSkgXAog
ICAgIH07IFwKICAgICBjb25zdCBDbGFzc0luZm8qIGdldCMjdHlwZSMjQXJyYXlDbGFzc0luZm8o
KSB7IHJldHVybiAmSlMjI3R5cGUjI0FycmF5OjpzX2luZm87IH0gXApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFwLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKaW5kZXggNDFlYmQ4ZjdlZjU0N2Y0MTBmMjYz
MGFlZmVjOWM5ZGZlZDYxNDQxNS4uYzEyMDg1NTRiOTFhMWQ3ZDEzODVkYjg0MDkwMmQ4ZDk4Mjhk
ZTQyYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrTWFw
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dlYWtNYXAuY3BwCkBA
IC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNX
ZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07Citjb25zdCBDbGFzc0luZm8g
SlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha01hcCkgfTsKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha09iamVjdFJlZi5jcHAKaW5kZXgg
MTU2MTNkMzg5MGE4ZDkxN2FjMjAyZDY3NjIyNzNkZTg2ODZlZmFlNi4uMjgzZDdlZjI4MzdlZWU1
MDA3M2JmYWFjOTBmOGRiYjhjNDY3NTMxNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNXZWFrT2JqZWN0UmVmLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1dlYWtPYmplY3RSZWYuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWFrT2JqZWN0UmVmOjpzX2luZm8gPSB7
ICJXZWFrUmVmIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1dlYWtPYmplY3RSZWYpIH07Citjb25zdCBDbGFzc0luZm8gSlNXZWFrT2JqZWN0
UmVmOjpzX2luZm8gPSB7ICJXZWFrUmVmIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha09iamVjdFJlZikgfTsKIAogdm9pZCBKU1dl
YWtPYmplY3RSZWY6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNPYmplY3QqIHZhbHVlKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFrU2V0LmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha1NldC5jcHAKaW5kZXggYmZkZDk0
ZWQwOWRmMzhkYWE4YjFmNjJkODU0M2VmMWJiYmJmYTJmMS4uYTAxYjc4YTc1NDkyZThlODA3OTI1
OTA2OTFmZDliNzMxODg3MDk1NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNXZWFrU2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtTZXQuY3BwCkBAIC0zMCw2ICszMCw2IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNXZWFrU2V0OjpzX2luZm8gPSB7ICJXZWFrU2V0IiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtTZXQpIH07Citj
b25zdCBDbGFzc0luZm8gSlNXZWFrU2V0OjpzX2luZm8gPSB7ICJXZWFrU2V0Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2Vha1NldCkg
fTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRo
U2NvcGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3Bw
CmluZGV4IGFjMWZhMjVmYmI0ODZiMDRmM2QyZGE0MzcyMmI2OWE1NzA3NDU2MWUuLjExOWU4YWMy
ZDg0NjU5NDJhOGMxZDY4ZjRlYWZlN2U3YTNiNmQ2OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU1dpdGhTY29wZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dpdGhTY29wZTo6c19pbmZvID0geyAiV2l0
aFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1dpdGhTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dpdGhTY29wZTo6c19pbmZv
ID0geyAiV2l0aFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3BlKSB9OwogCiBKU1dpdGhTY29wZSogSlNXaXRoU2Nv
cGU6OmNyZWF0ZSgKICAgICBWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
U2NvcGUqIG5leHQsIEpTT2JqZWN0KiBvYmplY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9MaXRlcmFsUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIuY3BwCmluZGV4IDQxMmUyNThhYjA5NTlmMThiMzJkYTk5
MWRiM2Y5NjA0ZjI5OGI3ZjQuLmIzOTUxZGVlYTdlZGNhMmE5NTJiZjg2OTRkZGI2NjRlZjg1OGJh
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJz
ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xpdGVyYWxQYXJzZXIu
Y3BwCkBAIC0xMTYxLDcgKzExNjEsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUgTGl0ZXJhbFBh
cnNlcjxDaGFyVHlwZT46OnBhcnNlUHJpbWl0aXZlVmFsdWUoVk0mIHZtKQogICAgICAgICAgICAg
aWYgKHRva2VuLT5zdHJpbmdMZW5ndGggPiBzaG9ydExlbmd0aCkKICAgICAgICAgICAgICAgICBl
cnJvclN0cmluZyA9IHRyeU1ha2VFcnJvclN0cmluZyhzaG9ydExlbmd0aCk7CiAgICAgICAgICAg
ICBpZiAoIWVycm9yU3RyaW5nKQotICAgICAgICAgICAgICAgIGVycm9yU3RyaW5nID0gIlVuZXhw
ZWN0ZWQgaWRlbnRpZmllciI7CisgICAgICAgICAgICAgICAgZXJyb3JTdHJpbmcgPSAiVW5leHBl
Y3RlZCBpZGVudGlmaWVyIl9zOwogICAgICAgICB9CiAKICAgICAgICAgbV9wYXJzZUVycm9yTWVz
c2FnZSA9IGVycm9yU3RyaW5nOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IGU1YTI4OTg2NzU4NDgyOWZlYTIxNDFmOTY4ODI0OTUw
NjA4Y2I3OGIuLjM1NDAxMmRiZDQ4ZjRjNzgyN2I2YjlkNmVhNjlkOTA1YzQyNGE1Y2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcENvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHAKQEAg
LTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBD
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcENvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBNYXBDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBN
YXBQcm90b3R5cGUqIG1hcFByb3RvdHlwZSwgR2V0dGVyU2V0dGVyKiBzcGVjaWVzU3ltYm9sKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQ
cm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwSXRlcmF0b3JQ
cm90b3R5cGUuY3BwCmluZGV4IDZhYzU4N2I1ZTg2OTk3MTNjY2RjYmNjM2Y1YTIxMTFlY2ZiYTky
MjcuLmY3MzFjNWQzNDVlMmI0MWRhNTljNzIwMDY3MDMyMGI0NzhhNWI5Y2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJvdG90eXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlwZS5j
cHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJdGVyYXRv
clByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19p
bmZvID0geyAiTWFwIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIE1h
cEl0ZXJhdG9yUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9NYXBQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFw
UHJvdG90eXBlLmNwcAppbmRleCA5M2ViZTAwM2M0NzJiYzg5NDNhODU4ZGE4MzUzNGYyYmI3YTE4
MDZlLi5mZmNiZDc4ZjE2NDlkNGFiY2M3MjU2NDQ3MjA0NGI2ZjA1ZTUzNDgxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIk1hcCIsICZCYXNlOjpzX2luZm8sICZtYXBQcm90b3R5cGVUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJNYXAiX3MsICZCYXNlOjpzX2luZm8sICZtYXBQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBQcm90b3R5cGUp
IH07CiAKIC8qIFNvdXJjZSBmb3IgTWFwUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gbWFwUHJvdG90
eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hdGhP
YmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAK
aW5kZXggNWIwY2E5NzdkMDg1MWM0YmI2N2M5ZTQ2NGU1YTEwM2MyMmMxNGIzNy4uZGU2OGFhOTc0
NDZlNzA5YThmNDExMTAwYmNkMmZiMGI0YmFlYzE5NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKQEAgLTYzLDcgKzYzLDcgQEAgc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04obWF0aFByb3RvRnVuY1Rhbik7CiBzdGF0aWMgSlNDX0RFQ0xB
UkVfSE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jVGFuaCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVf
SE9TVF9GVU5DVElPTihtYXRoUHJvdG9GdW5jSU11bCk7CiAKLWNvbnN0IENsYXNzSW5mbyBNYXRo
T2JqZWN0OjpzX2luZm8gPSB7ICJNYXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIE1h
dGhPYmplY3Q6OnNfaW5mbyA9IHsgIk1hdGgiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTWF0aE9iamVjdCkgfTsKIAogTWF0aE9iamVjdDo6
TWF0aE9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNOb25GaW5h
bE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCmluZGV4IDFkNTNiZjVkMTBh
NmY0NDhkMzkzM2NmMTQxYjcwNDlkZDI2MmNjNzQuLjI0N2ZhYTY1ZWJjZTZlYTM5NDc2Y2MyNmVm
NGQyZTUyNmQ1OWU1NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L01vZHVsZVByb2dyYW1FeGVjdXRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Nb2R1bGVQcm9ncmFtRXhlY3V0YWJsZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBNb2R1bGVQcm9ncmFtRXhlY3V0YWJs
ZTo6c19pbmZvID0geyAiTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGUiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1vZHVsZVByb2dyYW1FeGVjdXRh
YmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIE1vZHVsZVByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8g
PSB7ICJNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShNb2R1bGVQcm9ncmFtRXhlY3V0YWJsZSkgfTsK
IAogTW9kdWxlUHJvZ3JhbUV4ZWN1dGFibGU6Ok1vZHVsZVByb2dyYW1FeGVjdXRhYmxlKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSkKICAgICA6
IEJhc2UoZ2xvYmFsT2JqZWN0LT52bSgpLm1vZHVsZVByb2dyYW1FeGVjdXRhYmxlU3RydWN0dXJl
LmdldCgpLCBnbG9iYWxPYmplY3QtPnZtKCksIHNvdXJjZSwgZmFsc2UsIERlcml2ZWRDb250ZXh0
VHlwZTo6Tm9uZSwgZmFsc2UsIGZhbHNlLCBFdmFsQ29udGV4dFR5cGU6Ok5vbmUsIE5vSW50cmlu
c2ljKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJy
b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCAyMTNkOWZiN2E2OGFiMmFjOGY5NmQ4NjcwZDhhZTM0
NmYxMzllM2ZjLi43MDJlMzY5MDA2MmY1Y2JkZTY2ZWM3NmYzNzQ3NGRjZDg0YWQ2OTQ3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmNwcApAQCAtMjksNyArMjksNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKE5hdGl2ZUVycm9yQ29uc3RydWN0b3JC
YXNlKTsKIAotY29uc3QgQ2xhc3NJbmZvIE5hdGl2ZUVycm9yQ29uc3RydWN0b3JCYXNlOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2UpIH07Citjb25zdCBDbGFz
c0luZm8gTmF0aXZlRXJyb3JDb25zdHJ1Y3RvckJhc2U6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5h
dGl2ZUVycm9yQ29uc3RydWN0b3JCYXNlKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihjYWxsRXZhbEVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KGNvbnN0cnVjdEV2YWxFcnJvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9OYXRpdmVFeGVjdXRhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL05hdGl2ZUV4ZWN1dGFibGUuY3BwCmluZGV4IDY0ZjlkMWZkNjM4ODYzY2ZlZjUxMGQ4NDAx
YWZjODljN2Q3YjlhNmEuLmUwOTY2M2IyZGEzMzdmMjMzMzhlN2U5YmM2MDkzZTVhZGMyZjE2OWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFi
bGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUV4ZWN1dGFi
bGUuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gTmF0aXZlRXhlY3V0YWJsZTo6c19pbmZvID0geyAiTmF0aXZlRXhlY3V0YWJsZSIsICZF
eGVjdXRhYmxlQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE5hdGl2ZUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gTmF0aXZlRXhlY3V0YWJs
ZTo6c19pbmZvID0geyAiTmF0aXZlRXhlY3V0YWJsZSJfcywgJkV4ZWN1dGFibGVCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXhlY3V0YWJs
ZSkgfTsKIAogTmF0aXZlRXhlY3V0YWJsZSogTmF0aXZlRXhlY3V0YWJsZTo6Y3JlYXRlKFZNJiB2
bSwgUmVmPEpJVENvZGU+JiYgY2FsbFRodW5rLCBUYWdnZWROYXRpdmVGdW5jdGlvbiBmdW5jdGlv
biwgUmVmPEpJVENvZGU+JiYgY29uc3RydWN0VGh1bmssIFRhZ2dlZE5hdGl2ZUZ1bmN0aW9uIGNv
bnN0cnVjdG9yLCBjb25zdCBTdHJpbmcmIG5hbWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVsbEdldHRlckZ1bmN0aW9uLmNwcAppbmRleCBhYWUyMGE1YmM3
NTliMDUyY2YxOTM5Nzg4YjZjMDBjMmFkYjIyY2ZiLi42MjcwZDUzNDcxNzJjMjQyOWY4N2UwMTg0
YTI1ZGY5ZWQzODFlMzdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9OdWxsR2V0dGVyRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL051bGxHZXR0ZXJGdW5jdGlvbi5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBOdWxsR2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShOdWxsR2V0dGVyRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gTnVsbEdldHRl
ckZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdWxsR2V0dGVyRnVuY3Rpb24pIH07CiAK
IG5hbWVzcGFjZSBOdWxsR2V0dGVyRnVuY3Rpb25JbnRlcm5hbCB7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdWxsU2V0dGVyRnVuY3Rpb24uY3BwCmluZGV4IGYy
MTliOTMyNmJiZGFhZWRmZTNmYTFjNmI4NmYxYWFjM2E1MThiYzMuLjA5NWM2MDViMTkyMGY3NTEw
NWFkYzFkNDRmOGQzM2I4MDcyMjcwYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bGxTZXR0ZXJGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVsbFNldHRlckZ1bmN0aW9uLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIE51bGxTZXR0ZXJGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE51bGxTZXR0ZXJGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBO
dWxsU2V0dGVyRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bGxTZXR0ZXJGdW5jdGlv
bikgfTsKIAogCiAjaWYgQVNTRVJUX0VOQUJMRUQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAppbmRleCA2MjNhMTZiNTIzNWRmODM5
ZmI5ZTVkZWVlZmI2NTI4NWFjYTYyN2QwLi5kMmEwNTA1ZmQ3MjQxZjE3ZTYzYzkzMGEwY2IwNzg2
NjM3YzAwZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1i
ZXJDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyQ29uc3RydWN0b3IuY3BwCkBAIC0zOSw3ICszOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTnVtYmVyQ29uc3RydWN0b3Ip
OwogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJm51bWJlckNvbnN0cnVjdG9yVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyQ29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gTnVtYmVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAm
SW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmbnVtYmVyQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNl
IGZvciBOdW1iZXJDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIG51bWJlckNvbnN0cnVjdG9yVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlck9iamVj
dC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCmlu
ZGV4IGVmZWJiMjlhMTNiOTVkMTc4NzZlMGYxZjJkZGE1NzZhN2QxMGYyYjcuLjUxMmRlZmU3NjE2
MDM1NTEwOTExMjRjNDQwNGQzZjMyNmY1YWM1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL051bWJlck9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcApAQCAtMjgsNyArMjgsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKE51bWJlck9i
amVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBOdW1iZXJPYmplY3Q6OnNfaW5mbyA9IHsgIk51bWJl
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
TnVtYmVyT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKE51bWJlck9iamVjdCkgfTsKIAogTnVtYmVyT2JqZWN0OjpOdW1iZXJPYmplY3Qo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3Bw
CmluZGV4IDg4ODU5MWRkYzA2ZmZhY2FkMmYwYTA5NzNiZjAyNTU0ZDY1MTgwYjYuLjY5YjMwZmY1
ZTFlN2M3NmIwYjE3NDUxNzdjYmI4ZmVhMDU2M2YwZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcApAQCAtNTEsNyArNTEsNyBAQCBz
dGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihudW1iZXJQcm90b0Z1bmNUb1ByZWNpc2lv
bik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVyUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJOdW1iZXIiLCAmTnVtYmVyT2JqZWN0OjpzX2luZm8sICZudW1iZXJQcm90
b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShOdW1iZXJQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gTnVtYmVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIi
X3MsICZOdW1iZXJPYmplY3Q6OnNfaW5mbywgJm51bWJlclByb3RvdHlwZVRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE51bWJlclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBOdW1iZXJQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBudW1iZXJQcm90b3R5cGVUYWJsZQpAQCAt
Mzc1LDcgKzM3NSw3IEBAIFN0cmluZyB0b1N0cmluZ1dpdGhSYWRpeChkb3VibGUgZG91YmxlVmFs
dWUsIGludDMyX3QgcmFkaXgpCiAgICAgICAgIHJldHVybiBTdHJpbmc6Om51bWJlcihkb3VibGVW
YWx1ZSk7CiAKICAgICBSYWRpeEJ1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIHRvU3RyaW5nV2l0
aFJhZGl4SW50ZXJuYWwoYnVmZmVyLCBkb3VibGVWYWx1ZSwgcmFkaXgpOworICAgIHJldHVybiBT
dHJpbmcgeyB0b1N0cmluZ1dpdGhSYWRpeEludGVybmFsKGJ1ZmZlciwgZG91YmxlVmFsdWUsIHJh
ZGl4KSB9OwogfQogCiAvLyB0b0V4cG9uZW50aWFsIGNvbnZlcnRzIGEgbnVtYmVyIHRvIGEgc3Ry
aW5nLCBhbHdheXMgZm9ybWF0dGluZyBhcyBhbiBleHBvbmVudGlhbC4KQEAgLTQxMiw3ICs0MTIs
NyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04obnVtYmVyUHJvdG9GdW5jVG9FeHBvbmVudGlh
bCwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYgogICAgICAgICBjb252ZXJ0ZXIuVG9FeHBvbmVu
dGlhbCh4LCAtMSwgJmJ1aWxkZXIpOwogICAgIGVsc2UKICAgICAgICAgY29udmVydGVyLlRvRXhw
b25lbnRpYWwoeCwgZGVjaW1hbFBsYWNlcywgJmJ1aWxkZXIpOwotICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUoanNTdHJpbmcodm0sIGJ1aWxkZXIuRmluYWxpemUoKSkpOworICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUoanNTdHJpbmcodm0sIFN0cmluZyB7IGJ1aWxkZXIuRmluYWxpemUoKSB9
KSk7CiB9CiAKIC8vIHRvRml4ZWQgY29udmVydHMgYSBudW1iZXIgdG8gYSBzdHJpbmcsIGFsd2F5
cyBmb3JtYXR0aW5nIGFzIGFuIGEgZGVjaW1hbCBmcmFjdGlvbi4KQEAgLTUxMyw3ICs1MTMsNyBA
QCBzdGF0aWMgQUxXQVlTX0lOTElORSBKU1N0cmluZyogbnVtYmVyVG9TdHJpbmdJbnRlcm5hbChW
TSYgdm0sIGRvdWJsZSBkb3VibGVWYWx1ZQogICAgICAgICByZXR1cm4ganNOb250cml2aWFsU3Ry
aW5nKHZtLCBTdHJpbmc6Om51bWJlcihkb3VibGVWYWx1ZSkpOwogCiAgICAgUmFkaXhCdWZmZXIg
YnVmZmVyOwotICAgIHJldHVybiBqc1N0cmluZyh2bSwgdG9TdHJpbmdXaXRoUmFkaXhJbnRlcm5h
bChidWZmZXIsIGRvdWJsZVZhbHVlLCByYWRpeCkpOworICAgIHJldHVybiBqc1N0cmluZyh2bSwg
U3RyaW5nIHsgdG9TdHJpbmdXaXRoUmFkaXhJbnRlcm5hbChidWZmZXIsIGRvdWJsZVZhbHVlLCBy
YWRpeCkgfSk7CiB9CiAKIEpTU3RyaW5nKiBpbnQzMlRvU3RyaW5nKFZNJiB2bSwgaW50MzJfdCB2
YWx1ZSwgaW50MzJfdCByYWRpeCkKQEAgLTU0MSw3ICs1NDEsNyBAQCBKU1N0cmluZyogaW50NTJU
b1N0cmluZyhWTSYgdm0sIGludDY0X3QgdmFsdWUsIGludDMyX3QgcmFkaXgpCiAgICAgY2hhciog
c3RhcnRPZlJlc3VsdFN0cmluZyA9IGRlY2ltYWxQb2ludDsKICAgICAqZGVjaW1hbFBvaW50ID0g
J1wwJzsKIAotICAgIHJldHVybiBqc05vbnRyaXZpYWxTdHJpbmcodm0sIGludDUyVG9TdHJpbmdX
aXRoUmFkaXgoc3RhcnRPZlJlc3VsdFN0cmluZywgdmFsdWUsIHJhZGl4KSk7CisgICAgcmV0dXJu
IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgU3RyaW5nIHsgaW50NTJUb1N0cmluZ1dpdGhSYWRpeChz
dGFydE9mUmVzdWx0U3RyaW5nLCB2YWx1ZSwgcmFkaXgpIH0pOwogfQogCiBKU1N0cmluZyogbnVt
YmVyVG9TdHJpbmcoVk0mIHZtLCBkb3VibGUgZG91YmxlVmFsdWUsIGludDMyX3QgcmFkaXgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5j
cHAKaW5kZXggNTg0MDZlYTczMWM5NGFlYjc0OTExOTJlYmU2ZDE0YzkzYTIzOGM3Ny4uMjZhZjYx
OWRjYTNkMjZkOGVkYzU3YjljOTUyNmJhZTA1YzllZjI2ZCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcApAQCAtNTYsNyArNTYs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKE9iamVjdENvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8s
ICZvYmplY3RDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9i
amVjdENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJm9iamVj
dENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqZWN0Q29u
c3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgT2JqZWN0Q29uc3RydWN0b3IubHV0LmgKIEBi
ZWdpbiBvYmplY3RDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcAppbmRleCA5NWJiYTNjYjMyMGVhNWM3MGY5ODA0
M2ZlMGQyNjcwMTc3M2EwZTJjLi41OTVjYjQyYTljODczOWEzMWIyMzFlNjE1Y2UxMWVmNzQwMmRl
MDQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdFByb3Rv
dHlwZS5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04ob2JqZWN0UHJvdG9GdW5jVG9Mb2NhbGVTdHJpbmcpOwogCiBTVEFUSUNfQVNTRVJUX0lTX1RS
SVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0UHJvdG90eXBlKTsKIAotY29uc3QgQ2xhc3NJbmZv
IE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkpTTm9uRmluYWxPYmplY3Q6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90
b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJP
YmplY3QiX3MsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoT2JqZWN0UHJvdG90eXBlKSB9OwogCiBPYmplY3RQcm90b3R5cGU6
Ok9iamVjdFByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3R1Y3R1cmUpCiAgICAgOiBKU05v
bkZpbmFsT2JqZWN0KHZtLCBzdHVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09wZXJhdGlvbnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L09wZXJhdGlvbnMuaAppbmRleCAwOTE5ZTcyMTg2ZDM5ZDZkNTZlZGQ3MThhOWNmYjhhMzA0ZjU5
MTcxLi4yZTgxOGJmZmE3OWM0YWY2ZjBkM2MxMjUyOGZhYTU2NTU4ZWM1ZjNlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcGVyYXRpb25zLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oCkBAIC01NzMsNyArNTczLDcgQEAg
QUxXQVlTX0lOTElORSBKU1ZhbHVlIGpzQWRkKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTVmFsdWUgdjEsIEpTVmFsdWUgdjIKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgRG91YmxlT3Bl
cmF0aW9uLCB0eXBlbmFtZSBCaWdJbnRPcD4KLUFMV0FZU19JTkxJTkUgSlNWYWx1ZSBhcml0aG1l
dGljQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNW
YWx1ZSB2MiwgRG91YmxlT3BlcmF0aW9uJiYgZG91YmxlT3AsIEJpZ0ludE9wJiYgYmlnSW50T3As
IGNvbnN0IGNoYXIqIGVycm9yTWVzc2FnZSkKK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSBhcml0aG1l
dGljQmluYXJ5T3AoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNW
YWx1ZSB2MiwgRG91YmxlT3BlcmF0aW9uJiYgZG91YmxlT3AsIEJpZ0ludE9wJiYgYmlnSW50T3As
IEFTQ0lJTGl0ZXJhbCBlcnJvck1lc3NhZ2UpCiB7CiAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0
LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKQEAgLTc4
MCw3ICs3ODAsNyBAQCBBTFdBWVNfSU5MSU5FIEpTVmFsdWUgc2hpZnQoSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MgogICAgIH0KICNlbmRpZgogCi0g
ICAgYXV0byBlcnJvck1lc3NhZ2UgPSBpc0xlZnQgPyAiSW52YWxpZCBtaXggb2YgQmlnSW50IGFu
ZCBvdGhlciB0eXBlIGluIGxlZnQgc2hpZnQgb3BlcmF0aW9uLiIgOiAiSW52YWxpZCBtaXggb2Yg
QmlnSW50IGFuZCBvdGhlciB0eXBlIGluIHNpZ25lZCByaWdodCBzaGlmdCBvcGVyYXRpb24uIjsK
KyAgICBhdXRvIGVycm9yTWVzc2FnZSA9IGlzTGVmdCA/ICJJbnZhbGlkIG1peCBvZiBCaWdJbnQg
YW5kIG90aGVyIHR5cGUgaW4gbGVmdCBzaGlmdCBvcGVyYXRpb24uIl9zIDogIkludmFsaWQgbWl4
IG9mIEJpZ0ludCBhbmQgb3RoZXIgdHlwZSBpbiBzaWduZWQgcmlnaHQgc2hpZnQgb3BlcmF0aW9u
LiJfczsKICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgZXJy
b3JNZXNzYWdlKTsKIH0KIApAQCAtODE1LDcgKzgxNSw3IEBAIEFMV0FZU19JTkxJTkUgSlNWYWx1
ZSBqc1VSU2hpZnQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBsZWZ0LCBK
U1ZhCiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIEludDMyT3BlcmF0aW9uLCB0eXBlbmFtZSBCaWdJ
bnRPcD4KLUFMV0FZU19JTkxJTkUgSlNWYWx1ZSBiaXR3aXNlQmluYXJ5T3AoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSB2MSwgSlNWYWx1ZSB2MiwgSW50MzJPcGVyYXRpb24m
JiBpbnQzMk9wLCBCaWdJbnRPcCYmIGJpZ0ludE9wLCBjb25zdCBjaGFyKiBlcnJvck1lc3NhZ2Up
CitBTFdBWVNfSU5MSU5FIEpTVmFsdWUgYml0d2lzZUJpbmFyeU9wKEpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTVmFsdWUgdjEsIEpTVmFsdWUgdjIsIEludDMyT3BlcmF0aW9uJiYgaW50
MzJPcCwgQmlnSW50T3AmJiBiaWdJbnRPcCwgQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZSkKIHsK
ICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CiAgICAgYXV0byBzY29wZSA9IERFQ0xB
UkVfVEhST1dfU0NPUEUodm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvUHJvZ3JhbUV4ZWN1dGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUHJvZ3JhbUV4ZWN1dGFibGUuY3BwCmluZGV4IGVhYmZhODVhY2EzN2VmMGFhN2M3ZGY4OTVl
YWU0MTczOWQxNTQ5MGUuLjczMjlmZTI3MDE4Njg0YWIwNWM2YTQ3NzZmYWQyOTZlNTgyODlkNmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb2dyYW1FeGVjdXRh
YmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9ncmFtRXhlY3V0
YWJsZS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBQcm9ncmFtRXhlY3V0YWJsZTo6c19pbmZvID0geyAiUHJvZ3JhbUV4ZWN1dGFibGUi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFBy
b2dyYW1FeGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpz
X2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFtRXhlY3V0YWJsZSkgfTsKIAogUHJv
Z3JhbUV4ZWN1dGFibGU6OlByb2dyYW1FeGVjdXRhYmxlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSkKICAgICA6IEJhc2UoZ2xvYmFsT2JqZWN0
LT52bSgpLnByb2dyYW1FeGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCBnbG9iYWxPYmplY3QtPnZt
KCksIHNvdXJjZSwgZmFsc2UsIERlcml2ZWRDb250ZXh0VHlwZTo6Tm9uZSwgZmFsc2UsIGZhbHNl
LCBFdmFsQ29udGV4dFR5cGU6Ok5vbmUsIE5vSW50cmluc2ljKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlUYWJsZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRhYmxlLmNwcAppbmRleCBhYjQxNjY5OWU5NjI3N2Iy
ZWNhMTIxODg5MTY4MDE5MWZiMzMyNmZhLi42MjMxNGM3YmUyYmE5M2E4N2ZkYjY1YWRkYjE5NWY1
NWM0Y2ZiYzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9w
ZXJ0eVRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0
eVRhYmxlLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogREVGSU5FX0FM
TE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihQcm9wZXJ0eVRhYmxlKTsKIAotY29uc3QgQ2xh
c3NJbmZvIFByb3BlcnR5VGFibGU6OnNfaW5mbyA9IHsgIlByb3BlcnR5VGFibGUiLCBudWxscHRy
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3BlcnR5VGFibGUpIH07
Citjb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVydHlUYWJs
ZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9w
ZXJ0eVRhYmxlKSB9OwogCiBQcm9wZXJ0eVRhYmxlKiBQcm9wZXJ0eVRhYmxlOjpjcmVhdGUoVk0m
IHZtLCB1bnNpZ25lZCBpbml0aWFsQ2FwYWNpdHkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1Byb3h5Q29uc3RydWN0b3IuY3BwCmluZGV4IGY3MmY4ZjdhZWU1MzA5
MDcxODYzOTZjMjMxNDVjYmFiZGZiYjFmM2MuLjg4YzE3NzRmODA4MDljMTc4NThiNWRjMGM0ZDI1
NGY5MDM2NjY3ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1By
b3h5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1By
b3h5Q29uc3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUHJveHlDb25zdHJ1Y3Rvcik7
CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJQcm94eSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJv
eHlDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJQcm94eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShQcm94eUNvbnN0cnVjdG9yKSB9OwogCiBQcm94eUNvbnN0cnVjdG9yKiBQ
cm94eUNvbnN0cnVjdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKIHsK
QEAgLTc2LDcgKzc2LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKG1ha2VSZXZvY2FibGVQ
cm94eSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGwKIAogdm9pZCBQcm94eUNv
bnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QpCiB7Ci0gICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0sIDIsICJQcm94eSIsIFByb3Bl
cnR5QWRkaXRpb25Nb2RlOjpXaXRob3V0U3RydWN0dXJlVHJhbnNpdGlvbik7CisgICAgQmFzZTo6
ZmluaXNoQ3JlYXRpb24odm0sIDIsICJQcm94eSJfcywgUHJvcGVydHlBZGRpdGlvbk1vZGU6Oldp
dGhvdXRTdHJ1Y3R1cmVUcmFuc2l0aW9uKTsKICAgICBKU0NfTkFUSVZFX0ZVTkNUSU9OX1dJVEhP
VVRfVFJBTlNJVElPTigicmV2b2NhYmxlIiwgbWFrZVJldm9jYWJsZVByb3h5LCBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgMik7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5T2JqZWN0LmNwcAppbmRleCA0NWY1OGQ5
OWQzNWQ1YTEzZGRiOTllMGE2NGNmOTFmYjY2ZDkzOGRmLi4xYjljZjcwNmRmZDdmZTY3YzQ1OTRj
N2Q3ZDNkZTBjOWUyYjFlNjk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Qcm94eU9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UHJveHlPYmplY3QuY3BwCkBAIC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoUHJveHlPYmplY3QpOwogCi1jb25z
dCBDbGFzc0luZm8gUHJveHlPYmplY3Q6OnNfaW5mbyA9IHsgIlByb3h5T2JqZWN0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eU9iamVj
dCkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eU9iamVjdDo6c19pbmZvID0geyAiUHJveHlPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoUHJveHlPYmplY3QpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHBl
cmZvcm1Qcm94eUNhbGwpOwogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04ocGVyZm9y
bVByb3h5Q29uc3RydWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Byb3h5UmV2b2tlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3h5
UmV2b2tlLmNwcAppbmRleCBmNTBjZmU2ODFhY2I5ODRkZDg2ODBjZjgwNjc5YWIyNjUxZTk3N2Yw
Li4zZTYyMWFiNzM0MzI5NzI5MjEwNjQ3YmY4YzEzMTU2NTg0MGFkMjczIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm94eVJldm9rZS5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJveHlSZXZva2UuY3BwCkBAIC0zMyw3ICszMyw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElC
TEUoUHJveHlSZXZva2UpOwogCi1jb25zdCBDbGFzc0luZm8gUHJveHlSZXZva2U6OnNfaW5mbyA9
IHsgIlByb3h5UmV2b2tlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShQcm94eVJldm9rZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eVJldm9r
ZTo6c19pbmZvID0geyAiUHJveHlSZXZva2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlSZXZva2UpIH07CiAKIFByb3h5UmV2b2tl
KiBQcm94eVJldm9rZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFByb3h5
T2JqZWN0KiBwcm94eSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZmxlY3RPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVm
bGVjdE9iamVjdC5jcHAKaW5kZXggMDg3MzdkYWE3NTYyMzdmNmNhMmUwOWRjOGMxYWQ3NWQxZGI4
YzUxNi4uMjI3ZTAxMjBlZTE5NWMzZDhhNzhhYzRlMWJhYmE0NTA3NjQ2NWYxMCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVmbGVjdE9iamVjdC5jcHAKQEAgLTUwLDcg
KzUwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RF
U1RSVUNUSUJMRShSZWZsZWN0T2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZmxlY3RPYmpl
Y3Q6OnNfaW5mbyA9IHsgIlJlZmxlY3QiLCAmQmFzZTo6c19pbmZvLCAmcmVmbGVjdE9iamVjdFRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZmxlY3RPYmplY3QpIH07Citjb25z
dCBDbGFzc0luZm8gUmVmbGVjdE9iamVjdDo6c19pbmZvID0geyAiUmVmbGVjdCJfcywgJkJhc2U6
OnNfaW5mbywgJnJlZmxlY3RPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShSZWZsZWN0T2JqZWN0KSB9OwogCiAvKiBTb3VyY2UgZm9yIFJlZmxlY3RPYmplY3QubHV0LmgK
IEBiZWdpbiByZWZsZWN0T2JqZWN0VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9S
ZWdFeHAuY3BwCmluZGV4IDQ0OTA5ZDE2OTRiYzU1Yzc1YjI3N2NjNTE2MDAwMDI4NGI0YWQzMmYu
LmM4ZWY2M2Y4OTQ3YTcyYTQ3NzhhZTM1M2YwYjU5NTIwYzg3NDQxMjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cDo6c19pbmZvID0geyAiUmVnRXhwIiwg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07
Citjb25zdCBDbGFzc0luZm8gUmVnRXhwOjpzX2luZm8gPSB7ICJSZWdFeHAiX3MsIG51bGxwdHIs
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwKSB9OwogCiAjaWYg
UkVHRVhQX0ZVTkNfVEVTVF9EQVRBX0dFTgogY29uc3QgY2hhciogY29uc3QgUmVnRXhwRnVuY3Rp
b25hbFRlc3RDb2xsZWN0b3I6OnNfZmlsZU5hbWUgPSAiL3RtcC9SZWdFeHBUZXN0c0RhdGEiOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuY3BwCmluZGV4IDBm
NWQ1MGZlYzBiNzQyNDQ0YmQ2Njg1MTVkNmFiYTIzODJiZTQ3NzIuLjc0NzcwMWY4YTBkNGFiYjMw
NjQ5ZWQ2ZmEyZmE1MTE3ZWY0YzZmM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENhY2hlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBDYWNoZS5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgUmVnRXhwQ2FjaGU6OlJlZ0V4
cENhY2hlKFZNKiB2bSkKIAogUmVnRXhwKiBSZWdFeHBDYWNoZTo6ZW5zdXJlRW1wdHlSZWdFeHBT
bG93KFZNJiB2bSkKIHsKLSAgICBSZWdFeHAqIHJlZ0V4cCA9IFJlZ0V4cDo6Y3JlYXRlKHZtLCAi
IiwgeyB9KTsKKyAgICBSZWdFeHAqIHJlZ0V4cCA9IFJlZ0V4cDo6Y3JlYXRlKHZtLCBlbXB0eVN0
cmluZygpLCB7IH0pOwogICAgIG1fZW1wdHlSZWdFeHAuc2V0KHZtLCByZWdFeHApOwogICAgIHJl
dHVybiByZWdFeHA7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9S
ZWdFeHBDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZmQ0YzkyYjM0MTFjNTlkZWJhYTZmYjgwYmY5MDJj
MTkzZjhjODhjYS4uMTVmMjdkMGE0YmEyNzlhMTJmNmI5M2FlY2QyNDJkNDRmMjMxNjk2ZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
LmNwcApAQCAtNDUsNyArNDUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX1NFVFRFUihz
ZXRSZWdFeHBDb25zdHJ1Y3Rvck11bHRpbGluZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJklu
dGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlZ0V4cENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0lu
Zm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmSW50ZXJuYWxG
dW5jdGlvbjo6c19pbmZvLCAmcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShSZWdFeHBDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBSZWdF
eHBDb25zdHJ1Y3Rvci5sdXQuaAogQGJlZ2luIHJlZ0V4cENvbnN0cnVjdG9yVGFibGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCmluZGV4IDNmMzQy
NmNlMWVmZDI0MDZlNjM1OTBlMzU5YzgyNjkyOWZkZjM3MmUuLjc4ZjVjOGE4NTVjZTk0NGJjZTE5
ZTc4OTJiZWNkMDRmNzk0NTU4NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvUmVnRXhwT2JqZWN0LmNwcApAQCAtMjcsNyArMjcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAog
U1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFJlZ0V4cE9iamVjdCk7CiAK
LWNvbnN0IENsYXNzSW5mbyBSZWdFeHBPYmplY3Q6OnNfaW5mbyA9IHsgIlJlZ0V4cCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwT2Jq
ZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVjdDo6c19pbmZvID0geyAiUmVnRXhw
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFJlZ0V4cE9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9TRVRURVIocmVn
RXhwT2JqZWN0U2V0TGFzdEluZGV4U3RyaWN0KTsKIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01f
U0VUVEVSKHJlZ0V4cE9iamVjdFNldExhc3RJbmRleE5vblN0cmljdCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcAppbmRleCA1ODI0YTQy
YzNiNmExNTczZjAwMTY1NWE2OTJkNjc5ZmRmYTAwOWY0Li45NzU3MDEyYjczZDk1ODgyMjE5ZDA5
ZTI3ZjM5NjZjNzIyMTUwMmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIEpTQ19ERUNM
QVJFX0hPU1RfRlVOQ1RJT04ocmVnRXhwUHJvdG9HZXR0ZXJVbmljb2RlKTsKIHN0YXRpYyBKU0Nf
REVDTEFSRV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3RvR2V0dGVyU291cmNlKTsKIHN0YXRpYyBK
U0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFByb3RvR2V0dGVyRmxhZ3MpOwogCi1jb25z
dCBDbGFzc0luZm8gUmVnRXhwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJlZ0V4cFByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk9i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShSZWdFeHBQcm90b3R5cGUpIH07CiAKIFJlZ0V4cFByb3RvdHlwZTo6UmVnRXhwUHJvdG90
eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU05vbkZpbmFsT2JqZWN0
KHZtLCBzdHJ1Y3R1cmUpCkBAIC0xMDUsNyArMTA1LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKHJlZ0V4cFByb3RvRnVuY0V4ZWMsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBD
YWwKICAgICBKU1ZhbHVlIHRoaXNWYWx1ZSA9IGNhbGxGcmFtZS0+dGhpc1ZhbHVlKCk7CiAgICAg
YXV0byogcmVnZXhwID0ganNEeW5hbWljQ2FzdDxSZWdFeHBPYmplY3QqPih2bSwgdGhpc1ZhbHVl
KTsKICAgICBpZiAoVU5MSUtFTFkoIXJlZ2V4cCkpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJCdWlsdGluIFJlZ0V4cCBleGVjIGNhbiBvbmx5
IGJlIGNhbGxlZCBvbiBhIFJlZ0V4cCBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1U
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkJ1aWx0aW4gUmVnRXhwIGV4ZWMgY2FuIG9u
bHkgYmUgY2FsbGVkIG9uIGEgUmVnRXhwIG9iamVjdCJfcyk7CiAgICAgSlNTdHJpbmcqIHN0cmlu
ZyA9IGNhbGxGcmFtZS0+YXJndW1lbnQoMCkudG9TdHJpbmdPck51bGwoZ2xvYmFsT2JqZWN0KTsK
ICAgICBFWENFUFRJT05fQVNTRVJUKCEhc2NvcGUuZXhjZXB0aW9uKCkgPT0gIXN0cmluZyk7CiAg
ICAgaWYgKCFzdHJpbmcpCkBAIC0zNDMsNyArMzQzLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKHJlZ0V4cFByb3RvR2V0dGVyRmxhZ3MsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LAogICAgIGF1dG8gZmxhZ3MgPSBmbGFnc1N0cmluZyhnbG9iYWxPYmplY3QsIGFzT2JqZWN0KHRo
aXNWYWx1ZSkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVl
KCkpOwogCi0gICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgZmxhZ3MuZGF0
YSgpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1N0cmluZyh2bSwgU3RyaW5nIHsg
ZmxhZ3MuZGF0YSgpIH0pKTsKIH0KIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHJlZ0V4cFBy
b3RvR2V0dGVyU291cmNlLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgQ2FsbEZyYW1l
KiBjYWxsRnJhbWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDM5MDI5OTBj
N2FlZDk3ZTVlMGFhZGFhYjViYWM0ZGU2OTBhZWI3ZmEuLjNlNjJlNGMxNTFhZDk0MDYwMjFkMDdi
NzQ1NGVkMjk3NjRlYWE0NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9SZWdFeHBTdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMy
LDcgKzMyLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBT
dHJpbmdJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiUmVnRXhwIFN0cmluZyBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
UmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhw
U3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlJlZ0V4cCBTdHJpbmcgSXRlcmF0
b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHZvaWQgUmVnRXhwU3RyaW5n
SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
Y29wZWRBcmd1bWVudHMuY3BwCmluZGV4IDYwOTExODEwNDM4NzA1MWQ2YjZjNWNiYTUyYjhkN2Fh
OWVjYWU5NDMuLmQzMTMxZTZiOTNmMTdjOWZjMGVmMjE4ZGZhYTAxNjAwNDY5OGY4YTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcApA
QCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklW
SUFMTFlfREVTVFJVQ1RJQkxFKFNjb3BlZEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBT
Y29wZWRBcmd1bWVudHM6OnNfaW5mbyA9IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NvcGVkQXJndW1lbnRzKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIFNjb3BlZEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJndW1lbnRzIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNj
b3BlZEFyZ3VtZW50cykgfTsKIAogU2NvcGVkQXJndW1lbnRzOjpTY29wZWRBcmd1bWVudHMoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgV3JpdGVCYXJyaWVyPFVua25vd24+KiBzdG9yYWdl
LCB1bnNpZ25lZCB0b3RhbExlbmd0aCkKICAgICA6IEdlbmVyaWNBcmd1bWVudHModm0sIHN0cnVj
dHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFy
Z3VtZW50c1RhYmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFy
Z3VtZW50c1RhYmxlLmNwcAppbmRleCAxNGZjMmZiNjA0YjM0ZWY4OTA1MzM5YTY1MWM0ZmU1ZWYw
NWYxMGQ5Li5hYTJkZjRjZDE4MGIzYjI1ZGNiMDdjOGNiZGM4ZmY3ZGJjMjkwMGEwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFi
bGUuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gU2NvcGVkQXJndW1lbnRzVGFibGU6OnNfaW5mbyA9IHsgIlNjb3BlZEFyZ3VtZW50c1Rh
YmxlIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTY29w
ZWRBcmd1bWVudHNUYWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTY29wZWRBcmd1bWVudHNUYWJs
ZTo6c19pbmZvID0geyAiU2NvcGVkQXJndW1lbnRzVGFibGUiX3MsIG51bGxwdHIsIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NvcGVkQXJndW1lbnRzVGFibGUpIH07CiAK
IFNjb3BlZEFyZ3VtZW50c1RhYmxlOjpTY29wZWRBcmd1bWVudHNUYWJsZShWTSYgdm0pCiAgICAg
OiBCYXNlKHZtLCB2bS5zY29wZWRBcmd1bWVudHNUYWJsZVN0cnVjdHVyZS5nZXQoKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NjcmlwdEV4ZWN1dGFibGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5jcHAKaW5k
ZXggNDIxZDcwMGU0NmFmYjgwOGU3ZDVhNTcwZGNhZjVmNWM3YmE5YjQxZi4uYzZhOWVhYjY3MTRj
ZTQyYzQxMDg3YmRiMDhmYzkyMTc0YWM4ZWNiZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2NyaXB0RXhlY3V0YWJsZS5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpzX2lu
Zm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJTY3JpcHRFeGVjdXRh
YmxlIl9zLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShTY3JpcHRFeGVjdXRhYmxlKSB9OwogCiBTY3JpcHRFeGVjdXRhYmxlOjpT
Y3JpcHRFeGVjdXRhYmxlKFN0cnVjdHVyZSogc3RydWN0dXJlLCBWTSYgdm0sIGNvbnN0IFNvdXJj
ZUNvZGUmIHNvdXJjZSwgTGV4aWNhbFNjb3BlRmVhdHVyZXMgbGV4aWNhbFNjb3BlRmVhdHVyZXMs
IERlcml2ZWRDb250ZXh0VHlwZSBkZXJpdmVkQ29udGV4dFR5cGUsIGJvb2wgaXNJbkFycm93RnVu
Y3Rpb25Db250ZXh0LCBib29sIGlzSW5zaWRlT3JkaW5hcnlGdW5jdGlvbiwgRXZhbENvbnRleHRU
eXBlIGV2YWxDb250ZXh0VHlwZSwgSW50cmluc2ljIGludHJpbnNpYykKICAgICA6IEV4ZWN1dGFi
bGVCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TZXRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDU0NDMzYmZlZTRmZGRkYTVmNDcwNjc3YWY0NTdm
OWJmNGY3NGU0NS4uMzFmMzA3ZTY5MDcxMjIwYTc2MmI1OWIyMjdiZGM0MGRlYjAwYjFjZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldENvbnN0cnVjdG9yLmNwcApA
QCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNl
dENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0Q29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldENvbnN0
cnVjdG9yKSB9OwogCiB2b2lkIFNldENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0s
IFNldFByb3RvdHlwZSogc2V0UHJvdG90eXBlLCBHZXR0ZXJTZXR0ZXIqIHNwZWNpZXNTeW1ib2wp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVyYXRv
clByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVyYXRv
clByb3RvdHlwZS5jcHAKaW5kZXggM2ZhYjZlMzg2NTUzZjMxZGQ5OWQ0NGQzMzFhZWU2YWM2OTZl
YzIzNC4uOTA2MTcxYmNmZjYzMDZhYWE3NWEzMGM4MWIxNDgxNTE3YWNkODBkNiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JQcm90b3R5cGUuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBl
LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIFNldEl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldEl0ZXJh
dG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNldEl0ZXJhdG9yUHJvdG90eXBlOjpz
X2luZm8gPSB7ICJTZXQgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0SXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHZvaWQg
U2V0SXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
ZXRQcm90b3R5cGUuY3BwCmluZGV4IGE2ZWZjMmZiYjMxNDQ2ZTgyYTQ2MzQyMTJmMjdiNmQwZDRk
NTkyY2UuLjU0YzIyZGMxNzY1MjdiNGJhZGZmNTQ0ZDBkZDYzYmU3ZmNiYzI1ZjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcApAQCAtMzYsNyAr
MzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldFByb3RvdHlw
ZTo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgJnNldFByb3RvdHlwZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBTZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNldCJfcywgJkJhc2U6OnNfaW5mbywgJnNl
dFByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFByb3RvdHlw
ZSkgfTsKIAogLyogU291cmNlIGZvciBTZXRJdGVyYXRvclByb3RvdHlwZS5sdXQuaAogQGJlZ2lu
IHNldFByb3RvdHlwZVRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TaGFkb3dSZWFsbUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwCmluZGV4IGM4ODZiYWMwNjNiNDJjNjcy
ZjJmZWM5NTE4MWYxMDE3YjY2YWYxYWYuLjQ1NjQ4NDQ3NDc5MTRkNjBmOGMzZTU1Njc3NmNiMzYz
NmU2ZDliYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRv
d1JlYWxtQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1NoYWRvd1JlYWxtQ29uc3RydWN0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNoYWRvd1JlYWxtQ29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gU2hhZG93UmVhbG1Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoU2hhZG93UmVhbG1Db25zdHJ1Y3RvcikgfTsKIAogU1RBVElDX0FTU0VSVF9J
U19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFNoYWRvd1JlYWxtQ29uc3RydWN0b3IpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbU9iamVjdC5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbU9iamVjdC5jcHAK
aW5kZXggMzM2MTQ2YzUyZTRhYjgzYmExMWZhMmZiNzgzZTA4YzhkOTI0ZjRhNC4uZTBmZDRlZjZj
OTM5YjcyZDNmZmYwMGI5NTBlODE3ZTUwZTVmMjEzZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1PYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtT2JqZWN0LmNwcApAQCAtMzksNyArMzksNyBA
QCBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoU2hhZG93UmVhbG1PYmpl
Y3QpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNoYWRvd1JlYWxtT2Jq
ZWN0OjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU2hhZG93UmVhbG1PYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gU2hhZG93UmVhbG1PYmplY3Q6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNoYWRv
d1JlYWxtT2JqZWN0KSB9OwogCiBTaGFkb3dSZWFsbU9iamVjdDo6U2hhZG93UmVhbG1PYmplY3Qo
Vk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJv
dG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NoYWRvd1JlYWxtUHJv
dG90eXBlLmNwcAppbmRleCA4ZTg4NjY2Mzk4M2FmM2E1N2M2MzExZTdhMDg4ZmM2NWU3ZGEzYTUy
Li43NGNjYTA2NTcyNGJiNGE2YWIyOTliYTE3MTUxOTNkMDEzZWQ3MzAyIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TaGFkb3dSZWFsbVByb3RvdHlwZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2hhZG93UmVhbG1Qcm90b3R5cGUuY3Bw
CkBAIC00Nyw3ICs0Nyw3IEBAIG5hbWVzcGFjZSBKU0MgewogQGVuZAogKi8KIAotY29uc3QgQ2xh
c3NJbmZvIFNoYWRvd1JlYWxtUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbSIsICZC
YXNlOjpzX2luZm8sICZzaGFkb3dSZWFsbVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFNoYWRvd1JlYWxtUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFNo
YWRvd1JlYWxtUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTaGFkb3dSZWFsbSJfcywgJkJhc2U6OnNf
aW5mbywgJnNoYWRvd1JlYWxtUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU2hhZG93UmVhbG1Qcm90b3R5cGUpIH07CiAKIFNoYWRvd1JlYWxtUHJvdG90eXBlOjpT
aGFkb3dSZWFsbVByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDog
SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3BhcnNlQXJyYXlWYWx1ZU1hcC5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcAppbmRleCAxNjE1N2NmMDdl
MGVhNmFjMGY1MDg5YTczNWFhZTMzYmZiNmQxMGU1Li44ZGQ2YmQzMzJmYmQyMzBkOTBlYTA1NDk3
NDcwNzA5YmNhMTg0ZDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNwYXJzZUFycmF5VmFsdWVNYXA6OnNfaW5mbyA9
IHsgIlNwYXJzZUFycmF5VmFsdWVNYXAiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFNwYXJzZUFycmF5VmFsdWVNYXApIH07Citjb25zdCBDbGFzc0luZm8g
U3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAiU3BhcnNlQXJyYXlWYWx1ZU1hcCJfcywg
bnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTcGFyc2VBcnJh
eVZhbHVlTWFwKSB9OwogCiBTcGFyc2VBcnJheVZhbHVlTWFwOjpTcGFyc2VBcnJheVZhbHVlTWFw
KFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNwYXJzZUFycmF5VmFsdWVNYXBTdHJ1Y3R1cmUu
Z2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RF
dmFsQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpY3RF
dmFsQWN0aXZhdGlvbi5jcHAKaW5kZXggNDRlZGQxNTZhZjA3M2EyMjI1Y2NlNjUwZGU1OWZiZmY2
MWI0Y2U3ZC4uZWVlMzM1NzAyYjIxNWYxYTM2YWQ0OGUxMjk5ODBkZDRmY2EzMmJkMSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0
aW9uLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmljdEV2YWxBY3RpdmF0aW9uKTsKIAotY29u
c3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmlj
dEV2YWxBY3RpdmF0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9u
OjpzX2luZm8gPSB7ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaWN0RXZhbEFjdGl2YXRpb24pIH07CiAKIFN0cmljdEV2
YWxBY3RpdmF0aW9uOjpTdHJpY3RFdmFsQWN0aXZhdGlvbihWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU1Njb3BlKiBjdXJyZW50U2NvcGUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUs
IGN1cnJlbnRTY29wZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCA5MmRjOTQ2OWQyYTg0YzU0OTIyMGUyMWY1ZjE2Zjc3
YTAwNTVmZDg1Li45MmZlMzkyZDY4YzRmMmEyODBjZjQ5MmEyY2E2Yzg2Mjg2ZDhlY2I5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3Iu
Y3BwCkBAIC0zNiw3ICszNiw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHN0
cmluZ0Zyb21Db2RlUG9pbnQpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFN0cmluZ0NvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0
aW9uOjpzX2luZm8sICZzdHJpbmdDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFN0cmluZ0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ0Nv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkludGVybmFsRnVuY3Rpb246OnNf
aW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RyaW5nQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgU3RyaW5nQ29uc3RydWN0
b3IubHV0LmgKIEBiZWdpbiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdJdGVyYXRvclByb3RvdHlwZS5jcHAK
aW5kZXggNjE0NGIzMTRkZTBiNDI2YTVjMzZjYmI0ZTU2M2Q0ZDNiOGEzYTNlMS4uYTZmNzMxZmY2
YjExNzIzMDM1ZGU3NTQ0ZGY0M2QzZTk0MTkzMmFjOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0l0ZXJhdG9yUHJvdG90eXBlLmNwcApAQCAt
MzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cmlu
Z0l0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3IiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ0l0ZXJh
dG9yUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ0l0ZXJhdG9yUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJTdHJpbmcgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUpIH07
CiAKIHZvaWQgU3RyaW5nSXRlcmF0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCmluZGV4IDYxYmUzMTkyMWQwODI1MzhlZTU5Nzdm
YmM2OTk2NTBmMTA0ZjY4NGIuLjYwNWNjNDg2MjVlMDQ1YjZiZWJkYWI3NmRlNjdhMDY5NzA4MmMz
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVj
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cApAQCAtMjksNyArMjksNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19U
UklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmluZ09iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBT
dHJpbmdPYmplY3Q6OnNfaW5mbyA9IHsgIlN0cmluZyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2JqZWN0KSB9OworY29uc3QgQ2xh
c3NJbmZvIFN0cmluZ09iamVjdDo6c19pbmZvID0geyAiU3RyaW5nIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ09iamVjdCkgfTsK
IAogU3RyaW5nT2JqZWN0OjpTdHJpbmdPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVy
ZSkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCmluZGV4IGYzYjM4M2RjYmE0MjUzYTRhYzky
NTU4NGQxOWJjODA3NmI5NGE1NGEuLjI0ZjFlMTY1MzkzMjhkOGY5YTg5MmJkZDYwOTU0ZmY1MTQw
ZmFmY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1By
b3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJv
dG90eXBlLmNwcApAQCAtODUsNyArODUsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5D
VElPTihzdHJpbmdQcm90b0Z1bmNJdGVyYXRvcik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmciLCAmU3RyaW5n
T2JqZWN0OjpzX2luZm8sICZzdHJpbmdQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTdHJpbmdQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJTdHJpbmciX3MsICZTdHJpbmdPYmplY3Q6OnNfaW5mbywgJnN0
cmluZ1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmluZ1By
b3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBTdHJpbmdDb25zdHJ1Y3Rvci5sdXQuaAogQGJl
Z2luIHN0cmluZ1Byb3RvdHlwZVRhYmxlCkBAIC0xNjIxLDcgKzE2MjEsNyBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgdG9Mb2NhbGVDYXNlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENh
bGxGcmFtZSogY2FsbAogICAgIGF1dG8gY29udmVydENhc2UgPSBtb2RlID09IENhc2VDb252ZXJz
aW9uTW9kZTo6TG93ZXIgPyB1X3N0clRvTG93ZXIgOiB1X3N0clRvVXBwZXI7CiAgICAgYXV0byBz
dGF0dXMgPSBjYWxsQnVmZmVyUHJvZHVjaW5nRnVuY3Rpb24oY29udmVydENhc2UsIGJ1ZmZlciwg
U3RyaW5nVmlldyB7IHMgfS51cGNvbnZlcnRlZENoYXJhY3RlcnMoKS5nZXQoKSwgcy5sZW5ndGgo
KSwgbG9jYWxlLnV0ZjgoKS5kYXRhKCkpOwogICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkKLSAg
ICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgdV9lcnJv
ck5hbWUoc3RhdHVzKSk7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9i
amVjdCwgc2NvcGUsIFN0cmluZyB7IHVfZXJyb3JOYW1lKHN0YXR1cykgfSk7CiAKICAgICAvLyAx
OC4gUmV0dXJuIEwuCiAgICAgUkVMRUFTRV9BTkRfUkVUVVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNv
ZGUoanNTdHJpbmcodm0sIFN0cmluZyhidWZmZXIpKSkpOwpAQCAtMTcxOCw3ICsxNzE4LDcgQEAg
SlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHN0cmluZ1Byb3RvRnVuY1N0YXJ0c1dpdGgsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKICAgICBib29sIGlzUmVndWxhckV4cHJlc3Npb24gPSBp
c1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBhMCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihz
Y29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgaWYgKGlzUmVndWxhckV4cHJlc3Npb24pCi0g
ICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1
bWVudCB0byBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGggY2Fubm90IGJlIGEgUmVnRXhwIik7
CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJB
cmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGggY2Fubm90IGJlIGEgUmVnRXhw
Il9zKTsKIAogICAgIFN0cmluZyBzZWFyY2hTdHJpbmcgPSBhMC50b1dURlN0cmluZyhnbG9iYWxP
YmplY3QpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwpAQCAtMTc1Miw3ICsxNzUyLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKHN0cmluZ1By
b3RvRnVuY0VuZHNXaXRoLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwKICAgICBib29s
IGlzUmVndWxhckV4cHJlc3Npb24gPSBpc1JlZ0V4cCh2bSwgZ2xvYmFsT2JqZWN0LCBhMCk7CiAg
ICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgaWYg
KGlzUmVndWxhckV4cHJlc3Npb24pCi0gICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGds
b2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRo
IGNhbm5vdCBiZSBhIFJlZ0V4cCIpOworICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiQXJndW1lbnQgdG8gU3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0
aCBjYW5ub3QgYmUgYSBSZWdFeHAiX3MpOwogCiAgICAgU3RyaW5nIHNlYXJjaFN0cmluZyA9IGEw
LnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgZW5jb2RlZEpTVmFsdWUoKSk7CkBAIC0xODAyLDcgKzE4MDIsNyBAQCBKU0NfREVGSU5FX0hP
U1RfRlVOQ1RJT04oc3RyaW5nUHJvdG9GdW5jSW5jbHVkZXMsIChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LAogICAgIGJvb2wgaXNSZWd1bGFyRXhwcmVzc2lvbiA9IGlzUmVnRXhwKHZtLCBn
bG9iYWxPYmplY3QsIGEwKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVk
SlNWYWx1ZSgpKTsKICAgICBpZiAoaXNSZWd1bGFyRXhwcmVzc2lvbikKLSAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgIkFyZ3VtZW50IHRvIFN0cmlu
Zy5wcm90b3R5cGUuaW5jbHVkZXMgY2Fubm90IGJlIGEgUmVnRXhwIik7CisgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJBcmd1bWVudCB0byBTdHJp
bmcucHJvdG90eXBlLmluY2x1ZGVzIGNhbm5vdCBiZSBhIFJlZ0V4cCJfcyk7CiAKICAgICBTdHJp
bmcgc2VhcmNoU3RyaW5nID0gYTAudG9XVEZTdHJpbmcoZ2xvYmFsT2JqZWN0KTsKICAgICBSRVRV
Uk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwCmluZGV4IGI2MGUzY2IwZTNiZjU2Mzg3MzJm
ODVjMGRjYjA3YzM5NmQzZmQ2OGIuLjcyNTg5N2NhNDgyOGE1MDQ4Yjc4MDAwNWYxMjZjNGZjNGM1
OTcyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVy
ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcApA
QCAtMjM0LDcgKzIzNCw3IEBAIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUsIGNvCiAgICAgdmFsaWRhdGVG
bGFncygpOwogfQogCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJlOjpzX2luZm8gPSB7ICJTdHJ1
Y3R1cmUiLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0
cnVjdHVyZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVj
dHVyZSJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
dHJ1Y3R1cmUpIH07CiAKIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSwgQ3JlYXRpbmdFYXJs
eUNlbGxUYWcpCiAgICAgOiBKU0NlbGwoQ3JlYXRpbmdFYXJseUNlbGwpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKaW5kZXggY2E2MGEyZmJm
OWIwZWMyZjU2ZDUyOWM2ZTAwZjJmZTIzNGIzMmRjYS4uYmJiMGIzMWEwODkzNjU1MThkZjhmMGY4
Yjk4YzIxMWY4ZjkwNGRiZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RydWN0dXJlQ2hhaW4uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cnVjdHVyZUNoYWluLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsK
ICAgICAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVDaGFpbjo6c19pbmZvID0geyAiU3RydWN0
dXJlQ2hhaW4iLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZUNoYWluKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZUNoYWluOjpzX2lu
Zm8gPSB7ICJTdHJ1Y3R1cmVDaGFpbiJfcywgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShTdHJ1Y3R1cmVDaGFpbikgfTsKIAogU3RydWN0dXJlQ2hhaW46OlN0
cnVjdHVyZUNoYWluKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFN0cnVjdHVyZUlEKiB2
ZWN0b3IpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKaW5kZXggYzIyYWFmYjg2M2Jl
ZTdjMjUxM2VhMGVmNmQ2Y2EzZGQ4ZmQyYzNmNC4uNzM2MzdkODRjZGNkNjI2OGE3OGRhYzNjZjMz
YzAyNDI5YTEzZWUyOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlUmFyZURhdGEuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cnVjdHVyZVJhcmVEYXRhLmNwcApAQCAtMzksNyArMzksNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZVJhcmVEYXRhOjpzX2luZm8gPSB7ICJTdHJ1
Y3R1cmVSYXJlRGF0YSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoU3RydWN0dXJlUmFyZURhdGEpIH07Citjb25zdCBDbGFzc0luZm8gU3RydWN0dXJlUmFy
ZURhdGE6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZVJhcmVEYXRhIl9zLCBudWxscHRyLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cnVjdHVyZVJhcmVEYXRhKSB9OwogCiBT
dHJ1Y3R1cmUqIFN0cnVjdHVyZVJhcmVEYXRhOjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2wuY3BwCmluZGV4IGMzZGIxOTZmYjkzNDZlMDZlMGM1
YzFmMGZlNDliNDFiZjBhM2Y3ZWIuLjA3NTg5NDE1ZDkxMThkYjY1ZjI1ZmRlMGY1NzJlYWExMjg2
YmM5NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sLmNwcApAQCAtMzIs
NyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN5bWJvbDo6
c19pbmZvID0geyAic3ltYm9sIiwgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShTeW1ib2wpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sOjpzX2luZm8gPSB7
ICJzeW1ib2wiX3MsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3ltYm9sKSB9OwogCiBTeW1ib2w6OlN5bWJvbChWTSYgdm0pCiAgICAgOiBCYXNlKHZtLCB2
bS5zeW1ib2xTdHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TeW1ib2xDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TeW1ib2xDb25zdHJ1Y3Rvci5jcHAKaW5kZXggYzVkMDFiNDQzNWJhN2UxYjE5NTQ3
MDI5MDk5NGJmMzg2Mzk0YjljOC4uMDZiZjlkNGE2NWI1ZTU0YWU5M2E1YWRjNmFlZWFhYzEyYTIx
ZGZkZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sQ29u
c3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbENv
bnN0cnVjdG9yLmNwcApAQCAtNDQsNyArNDQsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN5bWJvbENvbnN0cnVjdG9yKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIFN5bWJvbENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sICZzeW1ib2xDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFN5bWJvbENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFN5bWJv
bENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnN5
bWJvbENvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9s
Q29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgU3ltYm9sQ29uc3RydWN0b3IubHV0LmgK
IEBiZWdpbiBzeW1ib2xDb25zdHJ1Y3RvclRhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3ltYm9sT2JqZWN0LmNwcAppbmRleCA3NDc2OThkYTE4YzEwMDczMjcyZTNhM2Yz
NDdjYTg5NDZiNjlhMjA1Li5jODU3YmM0MTY3MTNkNzgxNDZiNzhlYjEyOTZjODRkZWYwYzJlMmU0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbE9iamVjdC5jcHAK
QEAgLTMzLDcgKzMzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShTeW1ib2xPYmplY3QpOwogCi1jb25zdCBDbGFzc0luZm8gU3lt
Ym9sT2JqZWN0OjpzX2luZm8gPSB7ICJTeW1ib2wiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbE9iamVjdCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBTeW1ib2xPYmplY3Q6OnNfaW5mbyA9IHsgIlN5bWJvbCJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShTeW1ib2xPYmplY3QpIH07CiAK
IFN5bWJvbE9iamVjdDo6U3ltYm9sT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUp
CiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU3ltYm9sUHJvdG90eXBlLmNwcAppbmRleCBiY2YxNjM1MTY5YzAyNDc3MjRjNzEw
MzkxNTUzMWMxMjBkODljMzg4Li4zNWNmMDI3NDc2NzNiMWI0MGEyMDZiMGYyM2NjN2FlZmRkZmJl
NTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFByb3Rv
dHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJ
T04oc3ltYm9sUHJvdG9GdW5jVmFsdWVPZik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gU3ltYm9sUHJvdG90eXBlOjpzX2luZm8gPSB7ICJTeW1ib2wiLCAmQmFzZTo6c19p
bmZvLCAmc3ltYm9sUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
U3ltYm9sUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFByb3RvdHlwZTo6c19p
bmZvID0geyAiU3ltYm9sIl9zLCAmQmFzZTo6c19pbmZvLCAmc3ltYm9sUHJvdG90eXBlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFN5bWJvbFByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHN5bWJvbFByb3RvdHlwZVRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJs
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKaW5k
ZXggMWMyN2FkNDk2Y2NkNzM3NjEwZmFhMDJhMTkwMzA1YjZkNTE0ZGYwNi4uYjhiZmM3MmYyNzgw
YjAzMDI2NDQ2MzRlMjU5MmQ4YTI3NDI2YjQzMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFRhYmxlOjpzX2luZm8gPSB7ICJTeW1ib2xU
YWJsZSIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3lt
Ym9sVGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gU3ltYm9sVGFibGU6OnNfaW5mbyA9IHsgIlN5
bWJvbFRhYmxlIl9zLCBudWxscHRyLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFN5bWJvbFRhYmxlKSB9OwogCiBERUZJTkVfQUxMT0NBVE9SX1dJVEhfSEVBUF9JREVOVElG
SUVSKFN5bWJvbFRhYmxlRW50cnlGYXRFbnRyeSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5kYXIuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhci5jcHAKaW5kZXggMDZkZjI1NWI5OTg3YmVm
YjNmNDFlNTkxMTU2YWE1MmExZmNiYmRkMi4uM2E1MDNjODVkODc0MjI5MWY0N2JkZGRjOWZkM2Fm
ZDFjNWMwYmUyMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxDYWxlbmRhci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxDYWxlbmRhci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbENhbGVuZGFyOjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBv
cmFsQ2FsZW5kYXIpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRhcjo6c19pbmZv
ID0geyAiT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXIpIH07CiAKIG5hbWVzcGFjZSBUZW1wb3JhbENh
bGVuZGFySW50ZXJuYWwgewogc3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5k
YXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bENhbGVuZGFyQ29uc3RydWN0b3IuY3BwCmluZGV4IGQ5Nzk5MzE1NjQ2ZDg3NDc1MGNiMDRiZjVl
ZmQzNTgzNzc3MWFhNzEuLmJlNWQyYzhmODU5OWZkNTllYjQwZGIxZTUzZGFkM2QyNGI1ZDgxNjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsQ2FsZW5k
YXJDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yLmNwcApAQCAtNDEsNyArNDEsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3JGdW5jRnJv
bSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxDYWxlbmRh
ckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sICZ0ZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFz
c0luZm8gVGVtcG9yYWxDYWxlbmRhckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJf
cywgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJDb25zdHJ1Y3Rv
clRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsQ2FsZW5kYXJDb25z
dHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3Iu
bHV0LmgKIEBiZWdpbiB0ZW1wb3JhbENhbGVuZGFyQ29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxDYWxlbmRhclByb3RvdHlw
ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyUHJv
dG90eXBlLmNwcAppbmRleCA4ZmIzYTUzNGNkZTQ4YTMzNDNmODEyOTc2NGY1MmViYzhjN2FiOTM1
Li4zMzcwNGIwYzlmOTNiN2MzMzU0MDBjMmQ2ZDgzODY3OTM5MGRhMmI4IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbENhbGVuZGFyUHJv
dG90eXBlLmNwcApAQCAtNDYsNyArNDYsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dF
VFRFUih0ZW1wb3JhbENhbGVuZGFyUHJvdG90eXBlR2V0dGVySWQpOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlbXBvcmFsLkNhbGVuZGFyIiwgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsQ2FsZW5kYXJQ
cm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbENhbGVu
ZGFyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLkNhbGVuZGFyIl9zLCAmQmFzZTo6c19pbmZvLCAmdGVt
cG9yYWxDYWxlbmRhclByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxD
YWxlbmRhclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHRlbXBvcmFsQ2FsZW5kYXJQcm90b3R5cGVU
YWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxE
dXJhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0
aW9uLmNwcAppbmRleCA3N2Q5OWFhM2QwYzdmZDgzOTM5NDE2NjJkMTI1YTFiYjdiZDE5YTBjLi5k
N2JlYTQwNjBjY2M1ZTc5ZDY3NTg1M2Y0MDEwOTFkODBjMTQ5ZWRiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbER1cmF0aW9uLmNwcApAQCAtMzcsNyAr
MzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGljIGNvbnN0ZXhwciBkb3VibGUgbmFub3Nl
Y29uZHNQZXJEYXkgPSAyNC4wICogNjAgKiA2MCAqIDEwMDAgKiAxMDAwICogMTAwMDsKIAotY29u
c3QgQ2xhc3NJbmZvIFRlbXBvcmFsRHVyYXRpb246OnNfaW5mbyA9IHsgIk9iamVjdCIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxE
dXJhdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uOjpzX2luZm8gPSB7
ICJPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvbikgfTsKIAogVGVtcG9yYWxEdXJhdGlvbiogVGVtcG9y
YWxEdXJhdGlvbjo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIElTTzg2MDE6
OkR1cmF0aW9uJiYgZHVyYXRpb24pCiB7CkBAIC01MTUsNyArNTE1LDcgQEAgZG91YmxlIFRlbXBv
cmFsRHVyYXRpb246OnRvdGFsKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUg
b3B0aW9uc1ZhbHUKICAgICBKU09iamVjdCogb3B0aW9ucyA9IGludGxHZXRPcHRpb25zT2JqZWN0
KGdsb2JhbE9iamVjdCwgb3B0aW9uc1ZhbHVlKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCAwKTsKIAotICAgIFN0cmluZyB1bml0U3RyaW5nID0gaW50bFN0cmluZ09wdGlvbihnbG9i
YWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnVuaXQsIHsgfSwgbnVsbHB0ciwg
bnVsbHB0cik7CisgICAgU3RyaW5nIHVuaXRTdHJpbmcgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2Jh
bE9iamVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+dW5pdCwgeyB9LCBBU0NJSUxpdGVy
YWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJ
T04oc2NvcGUsIDApOwogCiAgICAgYXV0byB1bml0VHlwZSA9IHRlbXBvcmFsVW5pdFR5cGUodW5p
dFN0cmluZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmNwcAppbmRleCBkZDNjZWYxMDU2NjNiNzM4
M2ZjOTM4YThkNDY4Yjk3OTZhNThjNjBjLi42MTliZjI3YjhhZDNlNDlkN2M1ZDUxNWUwMTJkMGQ5
YmM4NTk2MTA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbER1cmF0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAg
c3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04odGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVj
dG9yRnVuY0NvbXBhcmUpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCAmdGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xh
c3NJbmZvIFRlbXBvcmFsRHVyYXRpb25Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
X3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3JUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbER1cmF0aW9uQ29uc3RydWN0b3IpIH07
CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yLmx1dC5oCiBAYmVn
aW4gdGVtcG9yYWxEdXJhdGlvbkNvbnN0cnVjdG9yVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5jcHAK
aW5kZXggMGNiNDQyZTI5MGJmOGZhMWEyZDZkZTg4Zjk2MTlkNzZiMmJhZjNjNC4uMjgyZjg4YWFk
MTU4MjA2NjdkYzI2NDc5M2VkNjQ4Yzg1ZmU3MDNiMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5jcHAK
QEAgLTYyLDcgKzYyLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0NVU1RPTV9HRVRURVIodGVtcG9y
YWxEdXJhdGlvblByb3RvdHlwZUdldHRlckJsYW5rKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbER1cmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1w
b3JhbC5EdXJhdGlvbiIsICZCYXNlOjpzX2luZm8sICZkdXJhdGlvblByb3RvdHlwZVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVtcG9yYWwuRHVyYXRpb24iX3MsICZCYXNlOjpzX2luZm8sICZkdXJhdGlvblByb3RvdHlwZVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsRHVyYXRpb25Qcm90b3R5
cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxEdXJhdGlvblByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGR1cmF0aW9uUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnQuY3BwCmluZGV4IDZmNjhjZjBmZjNjZDJjODU3MTM3
NGFiYjNlMDJjNzEzYzIwNWZmNTAuLjVhODUxOWQzY2I3YTJhNzA4NDczZjQ3OWUyN2QwMGMxZTM4
NWUzN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFs
SW5zdGFudC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJ
bnN0YW50LmNwcApAQCAtNDIsNyArNDIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFRlbXBvcmFsSW5zdGFudDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbEluc3Rh
bnQpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50OjpzX2luZm8gPSB7ICJPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxJbnN0YW50KSB9OwogCiBTdHJ1Y3R1cmUqIFRlbXBvcmFsSW5zdGFudDo6Y3Jl
YXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSBwcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggODYxZDgwYzE4ODdl
MjY1MGYwY2Q3NzJhNzM3NWY5OWNkNjRhZTUzZi4uM2QyYjEwZjk2OWFiYTQ0ZjY0YWNjMWM0YWVk
YjE0NThjNTIxMmVhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmNwcApAQCAtNDgsNyArNDgsNyBA
QCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih0ZW1wb3JhbEluc3RhbnRDb25zdHJ1
Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBU
ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6
c19pbmZvLCAmdGVtcG9yYWxJbnN0YW50Q29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBUZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3Ms
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbEluc3RhbnRDb25zdHJ1Y3RvclRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yKSB9OwogCiAv
KiBTb3VyY2UgZm9yIFRlbXBvcmFsSW5zdGFudENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVt
cG9yYWxJbnN0YW50Q29uc3RydWN0b3JUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsSW5zdGFudFByb3RvdHlwZS5jcHAKaW5kZXggYTQy
NmJlMDZmZmQzOTQxMDYzYzFmZjJiNTE4N2I5OWM2MTU2NWMzMy4uNzMwMWJmMzE0NzUzZDgxMDlj
MWJiNWFlZmJiNmVhNjA3ZGVjN2JiZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9UZW1wb3JhbEluc3RhbnRQcm90b3R5cGUuY3BwCkBAIC01NSw3ICs1
NSw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsSW5zdGFudFBy
b3RvdHlwZUdldHRlckVwb2NoTmFub3NlY29uZHMpCiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3Jh
bC5JbnN0YW50IiwgJkJhc2U6OnNfaW5mbywgJmluc3RhbnRQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbEluc3RhbnRQcm90b3R5cGUpIH07Citjb25z
dCBDbGFzc0luZm8gVGVtcG9yYWxJbnN0YW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3Jh
bC5JbnN0YW50Il9zLCAmQmFzZTo6c19pbmZvLCAmaW5zdGFudFByb3RvdHlwZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsSW5zdGFudFByb3RvdHlwZSkgfTsKIAog
LyogU291cmNlIGZvciBUZW1wb3JhbEluc3RhbnRQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBpbnN0
YW50UHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsTm93LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsTm93LmNwcAppbmRleCA1ZGFlOThjYzY0MGZlOTJjNjhkMmMxNTAxMGY1NzRmMmI3Njk0Y2I5
Li4zZTVmNTRkNjlkZDIwNTI2N2QzZGRjOWY5MzBlZjhlNWIzNWQyYTViIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5vdy5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwCkBAIC00OCw3ICs0OCw3IEBA
IG5hbWVzcGFjZSBKU0MgewogQGVuZAogKi8KIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93
OjpzX2luZm8gPSB7ICJUZW1wb3JhbC5Ob3ciLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxOb3dU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE5vdykgfTsKK2NvbnN0
IENsYXNzSW5mbyBUZW1wb3JhbE5vdzo6c19pbmZvID0geyAiVGVtcG9yYWwuTm93Il9zLCAmQmFz
ZTo6c19pbmZvLCAmdGVtcG9yYWxOb3dUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbE5vdykgfTsKIAogVGVtcG9yYWxOb3c6OlRlbXBvcmFsTm93KFZNJiB2bSwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKaW5kZXggM2NkMmZh
MzczM2JhNzAwZmI2YWU3MmRiMDk5MjA0ZTE5Mzg3YmEyMC4uNjZiOGI5NjVjOWVmMjljZTA1NWZl
M2Y5MTk1ZmU0Y2QyYWQzMDIyNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsT2JqZWN0LmNwcApAQCAtMTE2LDcgKzExNiw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogQGVuZAogKi8KIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJUZW1wb3JhbCIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE9iamVjdFRhYmxlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZv
IFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1wb3JhbCJfcywgJkJhc2U6OnNfaW5mbywg
JnRlbXBvcmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9y
YWxPYmplY3QpIH07CiAKIFRlbXBvcmFsT2JqZWN0OjpUZW1wb3JhbE9iamVjdChWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpAQCAtMjMwLDcg
KzIzMCw3IEBAIHN0ZDo6b3B0aW9uYWw8VGVtcG9yYWxVbml0PiB0ZW1wb3JhbExhcmdlc3RVbml0
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTCiAgICAgVk0mIHZtID0gZ2xvYmFsT2Jq
ZWN0LT52bSgpOwogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAot
ICAgIFN0cmluZyBsYXJnZXN0VW5pdCA9IGludGxTdHJpbmdPcHRpb24oZ2xvYmFsT2JqZWN0LCBv
cHRpb25zLCB2bS5wcm9wZXJ0eU5hbWVzLT5sYXJnZXN0VW5pdCwgeyB9LCBudWxscHRyLCBudWxs
cHRyKTsKKyAgICBTdHJpbmcgbGFyZ2VzdFVuaXQgPSBpbnRsU3RyaW5nT3B0aW9uKGdsb2JhbE9i
amVjdCwgb3B0aW9ucywgdm0ucHJvcGVydHlOYW1lcy0+bGFyZ2VzdFVuaXQsIHsgfSwgQVNDSUlM
aXRlcmFsOjpudWxsKCksIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpKTsKICAgICBSRVRVUk5fSUZfRVhD
RVBUSU9OKHNjb3BlLCBzdGQ6Om51bGxvcHQpOwogCiAgICAgaWYgKCFsYXJnZXN0VW5pdCkKQEAg
LTI2MCw3ICsyNjAsNyBAQCBzdGQ6Om9wdGlvbmFsPFRlbXBvcmFsVW5pdD4gdGVtcG9yYWxTbWFs
bGVzdFVuaXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSgogICAgIFZNJiB2bSA9IGds
b2JhbE9iamVjdC0+dm0oKTsKICAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2
bSk7CiAKLSAgICBTdHJpbmcgc21hbGxlc3RVbml0ID0gaW50bFN0cmluZ09wdGlvbihnbG9iYWxP
YmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNtYWxsZXN0VW5pdCwgeyB9LCBudWxs
cHRyLCBudWxscHRyKTsKKyAgICBTdHJpbmcgc21hbGxlc3RVbml0ID0gaW50bFN0cmluZ09wdGlv
bihnbG9iYWxPYmplY3QsIG9wdGlvbnMsIHZtLnByb3BlcnR5TmFtZXMtPnNtYWxsZXN0VW5pdCwg
eyB9LCBBU0NJSUxpdGVyYWw6Om51bGwoKSwgQVNDSUlMaXRlcmFsOjpudWxsKCkpOwogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHN0ZDo6bnVsbG9wdCk7CiAKICAgICBpZiAoIXNtYWxs
ZXN0VW5pdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsUGxhaW5EYXRlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFs
UGxhaW5EYXRlLmNwcAppbmRleCBkYTJiYjc0ODA3MDdlYTQ1ODk3ZGZiZDdiN2VhMjYxODg2Yzc3
ZjBmLi5iYTJjZGI4MjhjNDRlODUxNTk2YWUzNDQ5M2Y2MzdiOGQzMGZmYzA2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpbkRhdGUuY3BwCkBA
IC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBUZW1wb3JhbFBsYWluRGF0ZUludGVybmFsIHsKIHN0
YXRpYyBjb25zdGV4cHIgYm9vbCB2ZXJib3NlID0gZmFsc2U7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBUZW1wb3JhbFBsYWluRGF0ZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbFBsYWluRGF0ZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluRGF0ZTo6c19pbmZvID0geyAiT2JqZWN0
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlbXBvcmFsUGxhaW5EYXRlKSB9OwogCiBUZW1wb3JhbFBsYWluRGF0ZSogVGVtcG9yYWxQbGFp
bkRhdGU6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBJU084NjAxOjpQbGFp
bkRhdGUmJiBwbGFpbkRhdGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbFBsYWluRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwCmluZGV4IDM5
ZTYwZjE1NzFjYTE5NmE5ZjcwOWZhNzZmMGZhZTkzYjRiZjBkM2UuLjU0YzVjOTZmYTViNjliMmI4
MDk3ZWYxYzI5MmFiODFkZTI5NjRiZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5EYXRlQ29uc3RydWN0b3IuY3BwCkBA
IC00NCw3ICs0NCw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHRlbXBvcmFs
UGxhaW5EYXRlQ29uc3RydWN0b3JGdW5jQ29tcGFyZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1j
b25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmdGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvclRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5EYXRlQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFBsYWluRGF0
ZUNvbnN0cnVjdG9yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQ
bGFpbkRhdGVDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBUZW1wb3JhbFBsYWluRGF0
ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxQbGFpbkRhdGVDb25zdHJ1Y3RvclRh
YmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBs
YWluRGF0ZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbFBsYWluRGF0ZVByb3RvdHlwZS5jcHAKaW5kZXggY2Q4ODMwYmJhMjk0ZWU3M2VkODgzNGI2
ZWI5Yjg2NDdiNjkzYTAyOC4uYmZlYTkwNzQ5ZmZmOGZhYzdjMWVlOTAzNzY2YzM4MTc2NDczZjBh
MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFp
bkRhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5EYXRlUHJvdG90eXBlLmNwcApAQCAtNDQsNyArNDQsNyBAQCBzdGF0aWMgSlND
X0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih0ZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZUdldHRlckRh
eSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gVGVtcG9yYWxQbGFpbkRh
dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlBsYWluRGF0ZSIsICZCYXNlOjpzX2lu
Zm8sICZwbGFpbkRhdGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShUZW1wb3JhbFBsYWluRGF0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3Jh
bFBsYWluRGF0ZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVtcG9yYWwuUGxhaW5EYXRlIl9zLCAm
QmFzZTo6c19pbmZvLCAmcGxhaW5EYXRlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBm
b3IgVGVtcG9yYWxQbGFpbkRhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBwbGFpbkRhdGVQcm90
b3R5cGVUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxQbGFpblRpbWUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxQbGFpblRpbWUuY3BwCmluZGV4IGYzM2Y2YWZmYjkwODBmNjAwODhkYzEwNGE5NDU0ZjIyM2Jl
Yjk2ZTUuLmFhNWE1OGMwNjc2ZjQwMTQxMDE2ZjQyZjU0OTQ4OGM3MjMxMzk1ZmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBsYWluVGltZS5jcHAK
QEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFRlbXBvcmFsUGxhaW5UaW1lSW50ZXJuYWwgewog
c3RhdGljIGNvbnN0ZXhwciBib29sIHZlcmJvc2UgPSBmYWxzZTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIFRlbXBvcmFsUGxhaW5UaW1lOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5UaW1l
KSB9OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsUGxhaW5UaW1lOjpzX2luZm8gPSB7ICJPYmpl
Y3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoVGVtcG9yYWxQbGFpblRpbWUpIH07CiAKIFRlbXBvcmFsUGxhaW5UaW1lKiBUZW1wb3JhbFBs
YWluVGltZTo6Y3JlYXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIElTTzg2MDE6OlBs
YWluVGltZSYmIHBsYWluVGltZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsUGxhaW5UaW1lQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
ZDY3Y2ZjOWE1MGE2ZmJmZjk4MmYyODA2NmNlYTc3MmExOGMxMzFhOC4uN2YyOGE4MTFmOTAyODQ5
MDQ3ZWM5OTNjMDUyNDhmY2Y1NjYwMmFkMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxQbGFpblRpbWVDb25zdHJ1Y3Rvci5jcHAK
QEAgLTQ0LDcgKzQ0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04odGVtcG9y
YWxQbGFpblRpbWVDb25zdHJ1Y3RvckZ1bmNDb21wYXJlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9y
VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJnRlbXBvcmFsUGxhaW5U
aW1lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3Jh
bFBsYWluVGltZUNvbnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIFRlbXBvcmFsUGxhaW5U
aW1lQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFBsYWluVGltZUNvbnN0cnVjdG9y
VGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFs
UGxhaW5UaW1lUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmNwcAppbmRleCBlNDk2N2Q0Zjk0OTU4ZDNjYzNhMmI3
NTdjNzAzYzFiODQ4NGRkNTQ4Li5mYzg4ZjcyODQxYTZlZTk5OTE0ODYxNDVjZWM1ZGMyODQ1Mjgw
OWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbFBs
YWluVGltZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUuY3BwCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRpYyBK
U0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKHRlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlR2V0dGVy
Q2FsZW5kYXIpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFs
UGxhaW5UaW1lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5QbGFpblRpbWUiLCAmQmFz
ZTo6c19pbmZvLCAmcGxhaW5UaW1lUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoVGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
VGVtcG9yYWxQbGFpblRpbWVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlbXBvcmFsLlBsYWluVGlt
ZSJfcywgJkJhc2U6OnNfaW5mbywgJnBsYWluVGltZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlKSB9OwogCiAvKiBT
b3VyY2UgZm9yIFRlbXBvcmFsUGxhaW5UaW1lUHJvdG90eXBlLmx1dC5oCiBAYmVnaW4gcGxhaW5U
aW1lUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsVGltZVpvbmUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
VGVtcG9yYWxUaW1lWm9uZS5jcHAKaW5kZXggMTAxYWQ3NmU3NjY2NDA3NjY5NTkwNjVhYTVjNzRk
ZTY5NmFjODFlNC4uMGM2NWMzOGIxOTRlZDY4Yjg5NWYwYTUxYzQ3M2ZjMWEwZmY2YjNjNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9uZS5j
cHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBUZW1wb3JhbFRpbWVab25lOjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsVGltZVpvbmUpIH07
Citjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxUaW1lWm9uZTo6c19pbmZvID0geyAiT2JqZWN0Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRl
bXBvcmFsVGltZVpvbmUpIH07CiAKIFRlbXBvcmFsVGltZVpvbmUqIFRlbXBvcmFsVGltZVpvbmU6
OmNyZWF0ZUZyb21JRChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBUaW1lWm9uZUlEIGlk
ZW50aWZpZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yLmNwcAppbmRleCBkZDc1M2MwMzFlMWNk
YjdkYTIwMzJjZTg4MDgwYTMzOWVjNGI0MGFmLi40M2M3YTA2M2RkMmUzOTExOGY4NmYyNGFlZWE5
OTMxMjBkZGVlMmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbFRpbWVab25lQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1RlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvci5jcHAKQEAgLTQyLDcgKzQyLDcg
QEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04odGVtcG9yYWxUaW1lWm9uZUNvbnN0
cnVjdG9yRnVuY0Zyb20pOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFRl
bXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJu
YWxGdW5jdGlvbjo6c19pbmZvLCAmdGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yKSB9
OworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsVGltZVpvbmVDb25zdHJ1Y3Rvcjo6c19pbmZvID0g
eyAiRnVuY3Rpb24iX3MsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZ0ZW1wb3JhbFRpbWVa
b25lQ29uc3RydWN0b3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3Jh
bFRpbWVab25lQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgVGVtcG9yYWxUaW1lWm9u
ZUNvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gdGVtcG9yYWxUaW1lWm9uZUNvbnN0cnVjdG9yVGFi
bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsVGlt
ZVpvbmVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxUaW1lWm9uZVByb3RvdHlwZS5jcHAKaW5kZXggNmY1NzU1NzllM2VhZmI2MTM5M2YxNTFjNmJm
YmI0YTNjYWNmN2E4MS4uYjNiNDM5MzdjYmU3YzZkM2M1NDlhNWE2MzE5OTA5ZWIwMDA4YTBmNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxUaW1lWm9u
ZVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9y
YWxUaW1lWm9uZVByb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGljIEpTQ19ERUNM
QVJFX0NVU1RPTV9HRVRURVIodGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZUdldHRlcklkKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRpbWVab25lUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5UaW1lWm9uZSIsICZCYXNlOjpzX2luZm8sICZ0ZW1w
b3JhbFRpbWVab25lUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
VGVtcG9yYWxUaW1lWm9uZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbFRp
bWVab25lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZW1wb3JhbC5UaW1lWm9uZSJfcywgJkJhc2U6
OnNfaW5mbywgJnRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShUZW1wb3JhbFRpbWVab25lUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIFRlbXBvcmFsVGltZVpvbmVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiB0ZW1wb3JhbFRpbWVa
b25lUHJvdG90eXBlVGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1R5cGVQcm9maWxlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBl
UHJvZmlsZXIuY3BwCmluZGV4IDdlMWJjZTI5YmFmZWZmYmNhNjRmYzU0NWVhNGFiODhjOGVlMWZk
NjIuLjVmYWIxYjgzMDUzYzM4MmViYTA4MmE5NGFkOGU2M2Q2OWY1NzQ1OTQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1R5cGVQcm9maWxlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVHlwZVByb2ZpbGVyLmNwcApAQCAtNTMsOSArNTMs
OSBAQCB2b2lkIFR5cGVQcm9maWxlcjo6bG9nVHlwZXNGb3JUeXBlTG9jYXRpb24oVHlwZUxvY2F0
aW9uKiBsb2NhdGlvbiwgVk0mIHZtKQogCiAgICAgZGF0YUxvZygiXHRcdCIsIGxvY2F0aW9uLT5t
X2dsb2JhbFZhcmlhYmxlSUQgPT0gVHlwZVByb2ZpbGVyUmV0dXJuU3RhdGVtZW50ID8gIltSZXR1
cm4gU3RhdGVtZW50XSIgOiAiW05vcm1hbCBTdGF0ZW1lbnRdIiwgIlxuIik7CiAKLSAgICBkYXRh
TG9nKCJcdFx0I0xvY2FsI1xuXHRcdCIsIGxvY2F0aW9uLT5tX2luc3RydWN0aW9uVHlwZVNldC0+
ZHVtcFR5cGVzKCkucmVwbGFjZSgiXG4iLCAiXG5cdFx0IiksICJcbiIpOworICAgIGRhdGFMb2co
Ilx0XHQjTG9jYWwjXG5cdFx0IiwgbG9jYXRpb24tPm1faW5zdHJ1Y3Rpb25UeXBlU2V0LT5kdW1w
VHlwZXMoKS5yZXBsYWNlKCJcbiJfcywgIlxuXHRcdCJfcyksICJcbiIpOwogICAgIGlmIChsb2Nh
dGlvbi0+bV9nbG9iYWxUeXBlU2V0KQotICAgICAgICBkYXRhTG9nKCJcdFx0I0dsb2JhbCNcblx0
XHQiLCBsb2NhdGlvbi0+bV9nbG9iYWxUeXBlU2V0LT5kdW1wVHlwZXMoKS5yZXBsYWNlKCJcbiIs
ICJcblx0XHQiKSwgIlxuIik7CisgICAgICAgIGRhdGFMb2coIlx0XHQjR2xvYmFsI1xuXHRcdCIs
IGxvY2F0aW9uLT5tX2dsb2JhbFR5cGVTZXQtPmR1bXBUeXBlcygpLnJlcGxhY2UoIlxuIl9zLCAi
XG5cdFx0Il9zKSwgIlxuIik7CiB9CiAKIHZvaWQgVHlwZVByb2ZpbGVyOjppbnNlcnROZXdMb2Nh
dGlvbihUeXBlTG9jYXRpb24qIGxvY2F0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVHlwZVNldC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UeXBlU2V0LmNwcAppbmRleCBkODhiYTI4YzNmMzA5MjcyZTNkYTJlYzQyNmI5MzllZDFlOTk1
MWNmLi43MzNmOTgxMmYxOGU4ZjYxOGU0ZWE5MDdmOTFjYjI1M2Y3YzA4ZWNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UeXBlU2V0LmNwcApAQCAtMzQ4LDcgKzM0OCw3IEBAIFN0
cmluZyBTdHJ1Y3R1cmVTaGFwZTo6cHJvcGVydHlIYXNoKCkKICAgICBidWlsZGVyLmFwcGVuZCgn
OicpOwogICAgIGZvciAoYXV0byYga2V5IDogbV9maWVsZHMpIHsKICAgICAgICAgU3RyaW5nIHBy
b3BlcnR5ID0ga2V5LmdldCgpOwotICAgICAgICBwcm9wZXJ0eS5yZXBsYWNlKCI6IiwgIlxcOiIp
OyAvLyBFbnN1cmUgdGhhdCBoYXNoKHsiZm9vOiIsICJiYXIifSkgIT0gaGFzaCh7ImZvbyIsICI6
YmFyIn0pIGJlY2F1c2Ugd2UncmUgdXNpbmcgY29sb25zIGFzIGEgc2VwYXJhdG9yIGFuZCBjb2xv
bnMgYXJlIGxlZ2FsIGNoYXJhY3RlcnMgaW4gZmllbGQgbmFtZXMgaW4gSlMuCisgICAgICAgIHBy
b3BlcnR5LnJlcGxhY2UoIjoiX3MsICJcXDoiX3MpOyAvLyBFbnN1cmUgdGhhdCBoYXNoKHsiZm9v
OiIsICJiYXIifSkgIT0gaGFzaCh7ImZvbyIsICI6YmFyIn0pIGJlY2F1c2Ugd2UncmUgdXNpbmcg
Y29sb25zIGFzIGEgc2VwYXJhdG9yIGFuZCBjb2xvbnMgYXJlIGxlZ2FsIGNoYXJhY3RlcnMgaW4g
ZmllbGQgbmFtZXMgaW4gSlMuCiAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKHByb3BlcnR5KTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBD
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwQ29u
c3RydWN0b3IuY3BwCmluZGV4IDdlYjBmZTQ1NTQxNzlhNTE0YjMzMjhmM2QyZDc2MjQ0ZGJhNGVl
NGYuLjE3N2QxZTgxNzM3OGExYzE4MjYyNWI5MGE5YzgwNDczOGQ4ZjMzZjcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcApA
QCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdl
YWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBDb25zdHJ1Y3Rvcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKIAogdm9pZCBXZWFrTWFwQ29uc3RydWN0b3I6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSwgV2Vha01hcFByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcFByb3RvdHlwZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBlLmNwcApp
bmRleCBiODU2ZDc2MTM1YmY2MWJmYTNkMzgzNGI2Y2UwNTNkN2JjNGY2ZjgzLi4xNDQ0Y2Y2Yzgy
NTc4Mjc4N2Q5YjIwZWRjZWYzNjZiNTVhYjU4Mjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9XZWFrTWFwUHJvdG90eXBlLmNwcApAQCAtMzMsNyArMzMsNyBAQCBu
YW1lc3BhY2UgSlNDIHsKIAogY29uc3QgQVNDSUlMaXRlcmFsIFdlYWtNYXBOb25PYmplY3RLZXlF
cnJvciB7ICJBdHRlbXB0ZWQgdG8gc2V0IGEgbm9uLW9iamVjdCBrZXkgaW4gYSBXZWFrTWFwIl9z
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBXZWFrTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWFr
TWFwIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWFrTWFwUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYWtNYXBQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIldlYWtNYXAiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoV2Vha01hcFByb3RvdHlwZSkgfTsKIAogc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04ocHJvdG9GdW5jV2Vha01hcERlbGV0ZSk7CiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihwcm90b0Z1bmNXZWFrTWFwR2V0KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmQ29uc3RydWN0
b3IuY3BwCmluZGV4IGZiZmFmMzVjNzhiZjZlOTY4NzFjYzBkNzQxMDFmY2ZiYjA3ZGU5ODYuLmY1
NGRhMjU1OWM3ZGViYWI2MzBiMGJmMDJjOTQwNjc3MjI5M2E2YWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZkNvbnN0cnVjdG9y
LmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIFdlYWtPYmplY3RSZWZDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtPYmpl
Y3RSZWZDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrT2JqZWN0UmVmQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZDb25zdHJ1Y3RvcikgfTsK
IAogdm9pZCBXZWFrT2JqZWN0UmVmQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwg
V2Vha09iamVjdFJlZlByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha09iamVjdFJlZlByb3RvdHlwZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNwcAppbmRl
eCA4M2EyMDQ2MDlkOWFkN2JhZThhYTg4YjEyMjhjMWNiNzY0OWVmODA4Li44Mjk0YWE1MjFkMmFj
NmE4YTE0YWJiNTZlNTYyNzU4MTZjNjE2MDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9XZWFrT2JqZWN0UmVmUHJvdG90eXBlLmNwcApAQCAtMzEsNyAr
MzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYWtPYmplY3RS
ZWZQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYWtSZWYiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtPYmplY3RSZWZQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gV2Vha09iamVjdFJlZlByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vh
a1JlZiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShXZWFrT2JqZWN0UmVmUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTihwcm90b0Z1bmNXZWFrUmVmRGVyZWYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldENvbnN0cnVjdG9yLmNwcAppbmRleCBjOGRhYWI0
NmIwM2RiMDNlMGU3YWFhZjcxMGY5MTM0ODQxNWY2YWIwLi44NzRjYTk2YjdhOWRkMWRlN2YzM2Y3
NTQ2MDQ4NWNlZjQ0NWM0MDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9XZWFrU2V0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1dlYWtTZXRDb25zdHJ1Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWFrU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWFrU2V0Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vha1Nl
dENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrU2V0Q29uc3RydWN0b3IpIH07
CiAKIHZvaWQgV2Vha1NldENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFdlYWtT
ZXRQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1dlYWtTZXRQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvV2Vha1NldFByb3RvdHlwZS5jcHAKaW5kZXggYzE3ZmZjZjA3YjY4MWVjOGFhZGZj
OGExOWZmMzc1MDAwMDhjZTBkNy4uNDJhMjJhZjgwMjY4NWIyNWY2NmJhNDA5NDlkMjEyMzhiNWUx
OWMyYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFBy
b3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha1NldFBy
b3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIGNvbnN0IEFT
Q0lJTGl0ZXJhbCBXZWFrU2V0Tm9uT2JqZWN0VmFsdWVFcnJvciB7ICJBdHRlbXB0ZWQgdG8gYWRk
IGEgbm9uLW9iamVjdCB2YWx1ZSB0byBhIFdlYWtTZXQiX3MgfTsKIAotY29uc3QgQ2xhc3NJbmZv
IFdlYWtTZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYWtTZXQiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtTZXRQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gV2Vha1NldFByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vha1NldCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShX
ZWFrU2V0UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihw
cm90b0Z1bmNXZWFrU2V0RGVsZXRlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9O
KHByb3RvRnVuY1dlYWtTZXRIYXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RSZWdFeHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCmlu
ZGV4IDg0YmM3Y2YyZGJhNmU2MWYzNGZhZTVjNGVkZTMzYzc3MzUwNGFkMTIuLjdkMjZiMTZiZjlm
M2ZjYmQzMGFlZWZkMDZjZmRkOTk5ODVjMDEwNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0UmVnRXhwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJl
Z0V4cC5jcHAKQEAgLTEyMiw3ICsxMjIsNyBAQCBwcml2YXRlOgogfTsKIFNUQVRJQ19BU1NFUlRf
SVNPX1NVQlNQQUNFX1NIQVJBQkxFKEdsb2JhbE9iamVjdCwgSlNHbG9iYWxPYmplY3QpOwogCi1j
b25zdCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJnbG9iYWwiLCAmSlNHbG9i
YWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShH
bG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJnbG9iYWwiX3MsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEdsb2JhbE9iamVjdCkgfTsKIAogR2xvYmFsT2JqZWN0OjpHbG9i
YWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIGFyZ3VtZW50cykKICAgICA6IEpTR2xvYmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uQWxsb3dsaXN0LmNwcAppbmRl
eCBhYWNkNzVkYTg3YWI5M2MyZDQwYmY3YmVjNTkxNmQ3YzY3MDY5NTc5Li4yNDJmMTA3Nzg0NGQ0
NzYxZDQwODg4ZGVhYjRiYjFkYTc4MjExNTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdG9vbHMvRnVuY3Rpb25BbGxvd2xpc3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90b29scy9GdW5jdGlvbkFsbG93bGlzdC5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAgRnVuY3Rp
b25BbGxvd2xpc3Q6OkZ1bmN0aW9uQWxsb3dsaXN0KGNvbnN0IGNoYXIqIGZpbGVuYW1lKQogICAg
IGlmICghZikgewogICAgICAgICBpZiAoZXJybm8gPT0gRU5PRU5UKSB7CiAgICAgICAgICAgICBt
X2hhc0FjdGl2ZUFsbG93bGlzdCA9IHRydWU7Ci0gICAgICAgICAgICBtX2VudHJpZXMuYWRkKGZp
bGVuYW1lKTsKKyAgICAgICAgICAgIG1fZW50cmllcy5hZGQoU3RyaW5nIHsgZmlsZW5hbWUgfSk7
CiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgZGF0YUxvZ0YoIkZhaWxlZCB0byBvcGVuIGZp
bGUgJXMuIERpZCB5b3UgYWRkIHRoZSBmaWxlLXJlYWQtZGF0YSBlbnRpdGxlbWVudCB0byBXZWJQ
cm9jZXNzLnNiPyBFcnJvciBjb2RlOiAlc1xuIiwgZmlsZW5hbWUsIHNhZmVTdHJlcnJvcihlcnJu
bykuZGF0YSgpKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3ZlcnJpZGVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90b29scy9GdW5jdGlvbk92ZXJyaWRlcy5jcHAKaW5kZXggN2EzYjM3OTI0YmU1NjA1NDdmYzJk
ZmZlMzMyZDNlNjZiZjhhOTVmNi4uOTU2ODZiYTE5MjBiYjBlYjEyNzQwNGYxMzkxYmIwMmY1YmIx
NjA4OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0Z1bmN0aW9uT3Zl
cnJpZGVzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvRnVuY3Rpb25PdmVy
cmlkZXMuY3BwCkBAIC0xMzAsOCArMTMwLDggQEAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZU92ZXJy
aWRlSW5mbyhjb25zdCBTb3VyY2VDb2RlJiBvcmlnQ29kZSwgY29uc3QgU3RyaW5nJiBuZXcKICAg
ICBGdW5jdGlvbk92ZXJyaWRlc0Fzc2VydFNjb3BlIGFzc2VydFNjb3BlOwogICAgIFN0cmluZyBv
cmlnUHJvdmlkZXJTdHIgPSBvcmlnQ29kZS5wcm92aWRlcigpLT5zb3VyY2UoKS50b1N0cmluZygp
OwogICAgIHVuc2lnbmVkIG9yaWdTdGFydCA9IG9yaWdDb2RlLnN0YXJ0T2Zmc2V0KCk7Ci0gICAg
dW5zaWduZWQgb3JpZ0Z1bmN0aW9uU3RhcnQgPSBvcmlnUHJvdmlkZXJTdHIucmV2ZXJzZUZpbmQo
ImZ1bmN0aW9uIiwgb3JpZ1N0YXJ0KTsKLSAgICB1bnNpZ25lZCBvcmlnQnJhY2VTdGFydCA9IG9y
aWdQcm92aWRlclN0ci5maW5kKCJ7Iiwgb3JpZ1N0YXJ0KTsKKyAgICB1bnNpZ25lZCBvcmlnRnVu
Y3Rpb25TdGFydCA9IG9yaWdQcm92aWRlclN0ci5yZXZlcnNlRmluZCgiZnVuY3Rpb24iX3MsIG9y
aWdTdGFydCk7CisgICAgdW5zaWduZWQgb3JpZ0JyYWNlU3RhcnQgPSBvcmlnUHJvdmlkZXJTdHIu
ZmluZCgneycsIG9yaWdTdGFydCk7CiAgICAgdW5zaWduZWQgaGVhZGVyTGVuZ3RoID0gb3JpZ0Jy
YWNlU3RhcnQgLSBvcmlnRnVuY3Rpb25TdGFydDsKICAgICBTdHJpbmcgb3JpZ0hlYWRlciA9IG9y
aWdQcm92aWRlclN0ci5zdWJzdHJpbmcob3JpZ0Z1bmN0aW9uU3RhcnQsIGhlYWRlckxlbmd0aCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9KU0RvbGxhclZNLmNwcAppbmRleCAzZmM3
MTE4NmJlMjNjNDc4NjE5ZjM3ODUwNmRlNDEyYmJkNTdhYzY2Li5kMTliMDE3NzllODBjMGI4ZTI5
YTE0MzUxMmYyYWE3NDY2OWRmZThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pT
RG9sbGFyVk0uY3BwCkBAIC0yMDMsNyArMjAzLDcgQEAgcHJpdmF0ZToKICAgICB9CiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNEb2xsYXJWTUNhbGxGcmFtZTo6c19pbmZvID0geyAiQ2FsbEZyYW1l
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0RvbGxhclZNQ2FsbEZyYW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRG9sbGFyVk1DYWxsRnJh
bWU6OnNfaW5mbyA9IHsgIkNhbGxGcmFtZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNQ2FsbEZyYW1lKSB9OwogCiBjbGFz
cyBFbGVtZW50SGFuZGxlT3duZXI7CiBjbGFzcyBSb290OwpAQCAtMTc4MCwzMiArMTc4MCwzMiBA
QCB2b2lkIEpTVGVzdEN1c3RvbUdldHRlclNldHRlcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8gPSB7ICJFbGVtZW50IiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShFbGVtZW50
KSB9OwotY29uc3QgQ2xhc3NJbmZvIFJvb3Q6OnNfaW5mbyA9IHsgIlJvb3QiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3QpIH07Ci1jb25z
dCBDbGFzc0luZm8gU2ltcGxlT2JqZWN0OjpzX2luZm8gPSB7ICJTaW1wbGVPYmplY3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNpbXBsZU9i
amVjdCkgfTsKLWNvbnN0IENsYXNzSW5mbyBJbXB1cmVHZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVy
ZUdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSW1wdXJlR2V0dGVyKSB9OwotY29uc3QgQ2xhc3NJbmZvIEN1c3RvbUdldHRlcjo6c19p
bmZvID0geyAiQ3VzdG9tR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShDdXN0b21HZXR0ZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gUnVu
dGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJheSkgfTsKK2NvbnN0
IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8gPSB7ICJFbGVtZW50Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEVsZW1lbnQpIH07Citjb25z
dCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSb290KSB9OworY29uc3QgQ2xhc3NJ
bmZvIFNpbXBsZU9iamVjdDo6c19pbmZvID0geyAiU2ltcGxlT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNpbXBsZU9iamVjdCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBJbXB1cmVHZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVyZUdldHRl
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShJbXB1cmVHZXR0ZXIpIH07Citjb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyOjpzX2luZm8g
PSB7ICJDdXN0b21HZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoQ3VzdG9tR2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIFJ1bnRp
bWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJheSkgfTsKICNpZiBF
TkFCTEUoSklUKQotY29uc3QgQ2xhc3NJbmZvIERPTUpJVE5vZGU6OnNfaW5mbyA9IHsgIkRPTUpJ
VE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCAmRE9NSklUTm9kZTo6Y2hlY2tTdWJDbGFz
c1NuaXBwZXQsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBET01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCAmRE9NSklUTm9kZTo6Y2hlY2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9NRVRI
T0RfVEFCTEUoRE9NSklUTm9kZSkgfTsKICNlbHNlCi1jb25zdCBDbGFzc0luZm8gRE9NSklUTm9k
ZTo6c19pbmZvID0geyAiRE9NSklUTm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUTm9kZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBE
T01KSVROb2RlOjpzX2luZm8gPSB7ICJET01KSVROb2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVE5vZGUpIH07CiAjZW5kaWYK
LWNvbnN0IENsYXNzSW5mbyBET01KSVRHZXR0ZXI6OnNfaW5mbyA9IHsgIkRPTUpJVEdldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9N
SklUR2V0dGVyKSB9OwotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlck5vRWZmZWN0czo6c19p
bmZvID0geyAiRE9NSklUR2V0dGVyTm9FZmZlY3RzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJOb0VmZmVjdHMpIH07Ci1j
b25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVyQ29tcGxleDo6c19pbmZvID0geyAiRE9NSklUR2V0
dGVyQ29tcGxleCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoRE9NSklUR2V0dGVyQ29tcGxleCkgfTsKLWNvbnN0IENsYXNzSW5mbyBET01KSVRH
ZXR0ZXJCYXNlSlNPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEdldHRlckJhc2VKU09iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9N
SklUR2V0dGVyQmFzZUpTT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlcjo6
c19pbmZvID0geyAiRE9NSklUR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5m
byBET01KSVRHZXR0ZXJOb0VmZmVjdHM6OnNfaW5mbyA9IHsgIkRPTUpJVEdldHRlck5vRWZmZWN0
cyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShET01KSVRHZXR0ZXJOb0VmZmVjdHMpIH07Citjb25zdCBDbGFzc0luZm8gRE9NSklUR2V0dGVy
Q29tcGxleDo6c19pbmZvID0geyAiRE9NSklUR2V0dGVyQ29tcGxleCJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShET01KSVRHZXR0ZXJDb21w
bGV4KSB9OworY29uc3QgQ2xhc3NJbmZvIERPTUpJVEdldHRlckJhc2VKU09iamVjdDo6c19pbmZv
ID0geyAiRE9NSklUR2V0dGVyQmFzZUpTT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEdldHRlckJhc2VKU09iamVjdCkg
fTsKICNpZiBFTkFCTEUoSklUKQotY29uc3QgQ2xhc3NJbmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0
OjpzX2luZm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsICZET01KSVRGdW5jdGlvbk9iamVjdDo6Y2hlY2tTdWJDbGFzc1NuaXBwZXQsIENSRUFURV9N
RVRIT0RfVEFCTEUoRE9NSklURnVuY3Rpb25PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gRE9N
SklURnVuY3Rpb25PYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUpJVEZ1bmN0aW9uT2JqZWN0Il9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCAmRE9NSklURnVuY3Rpb25PYmplY3Q6OmNoZWNrU3ViQ2xh
c3NTbmlwcGV0LCBDUkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9Owog
I2Vsc2UKLWNvbnN0IENsYXNzSW5mbyBET01KSVRGdW5jdGlvbk9iamVjdDo6c19pbmZvID0geyAi
RE9NSklURnVuY3Rpb25PYmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKERPTUpJVEZ1bmN0aW9uT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJ
bmZvIERPTUpJVEZ1bmN0aW9uT2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRGdW5jdGlvbk9iamVj
dCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShET01KSVRGdW5jdGlvbk9iamVjdCkgfTsKICNlbmRpZgotY29uc3QgQ2xhc3NJbmZvIERPTUpJ
VENoZWNrSlNDYXN0T2JqZWN0OjpzX2luZm8gPSB7ICJET01KSVRDaGVja0pTQ2FzdE9iamVjdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9N
SklUQ2hlY2tKU0Nhc3RPYmplY3QpIH07Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0Q3VzdG9tR2V0
dGVyU2V0dGVyOjpzX2luZm8gPSB7ICJKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEN1c3Rv
bUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBET01KSVRDaGVja0pTQ2FzdE9iamVj
dDo6c19pbmZvID0geyAiRE9NSklUQ2hlY2tKU0Nhc3RPYmplY3QiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoRE9NSklUQ2hlY2tKU0Nhc3RP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVyOjpzX2lu
Zm8gPSB7ICJKU1Rlc3RDdXN0b21HZXR0ZXJTZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q3VzdG9tR2V0dGVyU2V0dGVy
KSB9OwogCi1jb25zdCBDbGFzc0luZm8gU3RhdGljQ3VzdG9tQWNjZXNzb3I6OnNfaW5mbyA9IHsg
IlN0YXRpY0N1c3RvbUFjY2Vzc29yIiwgJkJhc2U6OnNfaW5mbywgJnN0YXRpY0N1c3RvbUFjY2Vz
c29yVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RhdGljQ3VzdG9tQWNjZXNz
b3IpIH07Ci1jb25zdCBDbGFzc0luZm8gU3RhdGljQ3VzdG9tVmFsdWU6OnNfaW5mbyA9IHsgIlN0
YXRpY0N1c3RvbVZhbHVlIiwgJkJhc2U6OnNfaW5mbywgJnN0YXRpY0N1c3RvbVZhbHVlVGFibGUs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RhdGljQ3VzdG9tVmFsdWUpIH07Ci1jb25z
dCBDbGFzc0luZm8gT2JqZWN0RG9pbmdTaWRlRWZmZWN0UHV0V2l0aG91dENvcnJlY3RTbG90U3Rh
dHVzOjpzX2luZm8gPSB7ICJPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNs
b3RTdGF0dXMiLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3REb2luZ1NpZGVFZmZlY3RQdXRXaXRob3V0
Q29ycmVjdFNsb3RTdGF0dXMpIH07Citjb25zdCBDbGFzc0luZm8gU3RhdGljQ3VzdG9tQWNjZXNz
b3I6OnNfaW5mbyA9IHsgIlN0YXRpY0N1c3RvbUFjY2Vzc29yIl9zLCAmQmFzZTo6c19pbmZvLCAm
c3RhdGljQ3VzdG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
dGF0aWNDdXN0b21BY2Nlc3NvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdGF0aWNDdXN0b21WYWx1
ZTo6c19pbmZvID0geyAiU3RhdGljQ3VzdG9tVmFsdWUiX3MsICZCYXNlOjpzX2luZm8sICZzdGF0
aWNDdXN0b21WYWx1ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0YXRpY0N1
c3RvbVZhbHVlKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamVjdERvaW5nU2lkZUVmZmVjdFB1dFdp
dGhvdXRDb3JyZWN0U2xvdFN0YXR1czo6c19pbmZvID0geyAiT2JqZWN0RG9pbmdTaWRlRWZmZWN0
UHV0V2l0aG91dENvcnJlY3RTbG90U3RhdHVzIl9zLCAmQmFzZTo6c19pbmZvLCAmc3RhdGljQ3Vz
dG9tQWNjZXNzb3JUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3REb2lu
Z1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXMpIH07CiAKIEVsZW1lbnRIYW5k
bGVPd25lciogRWxlbWVudDo6aGFuZGxlT3duZXIoKQogewpAQCAtMTg5NSw3ICsxODk1LDcgQEAg
cHVibGljOgogICAgIFdhc206OlN0cmVhbWluZ1BhcnNlciBtX3N0cmVhbWluZ1BhcnNlcjsKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBXYXNtU3RyZWFtaW5nUGFyc2VyOjpzX2luZm8gPSB7ICJXYXNt
U3RyZWFtaW5nUGFyc2VyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShXYXNtU3RyZWFtaW5nUGFyc2VyKSB9OworY29uc3QgQ2xhc3NJbmZvIFdh
c21TdHJlYW1pbmdQYXJzZXI6OnNfaW5mbyA9IHsgIldhc21TdHJlYW1pbmdQYXJzZXIiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2FzbVN0
cmVhbWluZ1BhcnNlcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGZ1bmN0aW9uV2Fz
bVN0cmVhbWluZ1BhcnNlckFkZEJ5dGVzLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
Q2FsbEZyYW1lKiBjYWxsRnJhbWUpKQogewpAQCAtMTk5Niw3ICsxOTk2LDcgQEAgdm9pZCBXYXNt
U3RyZWFtaW5nQ29tcGlsZXI6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRv
ciYgdmlzaXRvcikKIAogREVGSU5FX1ZJU0lUX0NISUxEUkVOKFdhc21TdHJlYW1pbmdDb21waWxl
cik7CiAKLWNvbnN0IENsYXNzSW5mbyBXYXNtU3RyZWFtaW5nQ29tcGlsZXI6OnNfaW5mbyA9IHsg
Ildhc21TdHJlYW1pbmdDb21waWxlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoV2FzbVN0cmVhbWluZ0NvbXBpbGVyKSB9OworY29uc3QgQ2xh
c3NJbmZvIFdhc21TdHJlYW1pbmdDb21waWxlcjo6c19pbmZvID0geyAiV2FzbVN0cmVhbWluZ0Nv
bXBpbGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFdhc21TdHJlYW1pbmdDb21waWxlcikgfTsKIAogSlNDX0RFRklORV9IT1NUX0ZVTkNU
SU9OKGZ1bmN0aW9uV2FzbVN0cmVhbWluZ0NvbXBpbGVyQWRkQnl0ZXMsIChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkpCiB7CkBAIC0yMTQzLDcgKzIx
NDMsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihmdW5jdGlvblJlc2V0SklU
U2l6ZVN0YXRpc3RpY3MpOwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihmdW5j
dGlvbkVuc3VyZUFycmF5U3RvcmFnZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RvbGxhclZNOjpz
X2luZm8gPSB7ICJEb2xsYXJWTSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNEb2xsYXJWTSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RvbGxh
clZNOjpzX2luZm8gPSB7ICJEb2xsYXJWTSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RvbGxhclZNKSB9OwogCiBzdGF0aWMgRW5jb2Rl
ZEpTVmFsdWUgZG9QcmludChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUq
IGNhbGxGcmFtZSwgYm9vbCBhZGRMaW5lRmVlZCkKIHsKQEAgLTI3MzAsNyArMjczMCw3IEBAIEpT
Q19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkhhdmVBQmFkVGltZSwgKEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIENhCiAgICAgaWYgKCFjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmlz
VW5kZWZpbmVkKCkpIHsKICAgICAgICAgSlNPYmplY3QqIG9iaiA9IGNhbGxGcmFtZS0+YXJndW1l
bnQoMCkuZ2V0T2JqZWN0KCk7CiAgICAgICAgIGlmICghb2JqKQotICAgICAgICAgICAgcmV0dXJu
IHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImhhdmVBQmFkVGltZSBleHBl
Y3RzIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCBpZiBwcm92aWRlZCIpOworICAgICAg
ICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImhhdmVB
QmFkVGltZSBleHBlY3RzIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGFuIG9iamVjdCBpZiBwcm92aWRl
ZCJfcyk7CiAgICAgICAgIHRhcmdldCA9IG9iai0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgfQogCkBA
IC0yNzQ5LDcgKzI3NDksNyBAQCBKU0NfREVGSU5FX0hPU1RfRlVOQ1RJT04oZnVuY3Rpb25Jc0hh
dmluZ0FCYWRUaW1lLCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdAogICAgIGlmICghY2Fs
bEZyYW1lLT5hcmd1bWVudCgwKS5pc1VuZGVmaW5lZCgpKSB7CiAgICAgICAgIEpTT2JqZWN0KiBv
YmogPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApLmdldE9iamVjdCgpOwogICAgICAgICBpZiAoIW9i
aikKLSAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2Nv
cGUsICJpc0hhdmluZ0FCYWRUaW1lIGV4cGVjdHMgZmlyc3QgYXJndW1lbnQgdG8gYmUgYW4gb2Jq
ZWN0IGlmIHByb3ZpZGVkIik7CisgICAgICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihn
bG9iYWxPYmplY3QsIHNjb3BlLCAiaXNIYXZpbmdBQmFkVGltZSBleHBlY3RzIGZpcnN0IGFyZ3Vt
ZW50IHRvIGJlIGFuIG9iamVjdCBpZiBwcm92aWRlZCJfcyk7CiAgICAgICAgIHRhcmdldCA9IG9i
ai0+Z2xvYmFsT2JqZWN0KCk7CiAgICAgfQogCkBAIC0yNzk4LDIwICsyNzk4LDIwIEBAIEpTQ19E
RUZJTkVfSE9TVF9GVU5DVElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25DYWxsV2l0aFN0YWNr
U2l6ZSwgU1VQUFJFU1NfQVNBCiAjZW5kaWYKIAogICAgIGlmICghaXNTdXBwb3J0ZWRCeVBsYXRm
b3JtKQotICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29w
ZSwgIk5vdCBzdXBwb3J0ZWQgZm9yIHRoaXMgcGxhdGZvcm0iKTsKKyAgICAgICAgcmV0dXJuIHRo
cm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJOb3Qgc3VwcG9ydGVkIGZvciB0
aGlzIHBsYXRmb3JtIl9zKTsKIAogI2lmIEVOQUJMRShBU1NFTUJMRVIpCiAgICAgaWYgKGdfanNj
Q29uZmlnLmlzUGVybWFuZW50bHlGcm96ZW4oKSB8fCAhZ19qc2NDb25maWcuZGlzYWJsZWRGcmVl
emluZ0ZvclRlc3RpbmcpCi0gICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0
LCB0aHJvd1Njb3BlLCAiT3B0aW9ucyBhcmUgZnJvemVuIik7CisgICAgICAgIHJldHVybiB0aHJv
d1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiT3B0aW9ucyBhcmUgZnJvemVuIl9z
KTsKIAogICAgIGlmIChjYWxsRnJhbWUtPmFyZ3VtZW50Q291bnQoKSA8IDIpCi0gICAgICAgIHJl
dHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiSW52YWxpZCBudW1i
ZXIgb2YgYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCB0aHJvd1Njb3BlLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzIl9zKTsKICAgICBK
U1ZhbHVlIGFyZzAgPSBjYWxsRnJhbWUtPmFyZ3VtZW50KDApOwogICAgIEpTVmFsdWUgYXJnMSA9
IGNhbGxGcmFtZS0+YXJndW1lbnQoMSk7CiAgICAgaWYgKCFhcmcwLmlzQ2FsbGFibGUodm0pKQot
ICAgICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFy
ZzAgc2hvdWxkIGJlIGEgZnVuY3Rpb24iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJhcmcwIHNob3VsZCBiZSBhIGZ1bmN0aW9uIl9zKTsK
ICAgICBpZiAoIWFyZzEuaXNOdW1iZXIoKSkKLSAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihn
bG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJhcmcxIHNob3VsZCBiZSBhIG51bWJlciIpOworICAg
ICAgICByZXR1cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgImFyZzEg
c2hvdWxkIGJlIGEgbnVtYmVyIl9zKTsKIAogICAgIEpTRnVuY3Rpb24qIGZ1bmN0aW9uID0ganND
YXN0PEpTRnVuY3Rpb24qPihhcmcwKTsKICAgICBzaXplX3QgZGVzaXJlZFN0YWNrU2l6ZSA9IGFy
ZzEuYXNOdW1iZXIoKTsKQEAgLTI4MjEsNyArMjgyMSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5D
VElPTl9XSVRIX0FUVFJJQlVURVMoZnVuY3Rpb25DYWxsV2l0aFN0YWNrU2l6ZSwgU1VQUFJFU1Nf
QVNBCiAgICAgdWludDhfdCogZW5kID0gYml0d2lzZV9jYXN0PHVpbnQ4X3QqPihib3VuZHMuZW5k
KCkpOwogICAgIHVpbnQ4X3QqIGRlc2lyZWRTdGFydCA9IGVuZCArIGRlc2lyZWRTdGFja1NpemU7
CiAgICAgaWYgKGRlc2lyZWRTdGFydCA+PSBjdXJyZW50U3RhY2tQb3NpdGlvbikKLSAgICAgICAg
cmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJVbmFibGUgdG8g
c2V0dXAgZGVzaXJlZCBzdGFjayBzaXplIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNRXJyb3Io
Z2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiVW5hYmxlIHRvIHNldHVwIGRlc2lyZWQgc3RhY2sg
c2l6ZSJfcyk7CiAKICAgICBKU0RvbGxhclZNSGVscGVyIGhlbHBlcih2bSk7CiAKQEAgLTMwMzUs
NyArMzAzNSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkNyZWF0ZVdhc21T
dHJlYW1pbmdDb21waWxlckZvckNvbXBpbGUsIChKU0dsb2JhCiAgICAgYXV0byBjb21waWxlciA9
IFdhc21TdHJlYW1pbmdDb21waWxlcjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIFdhc206OkNv
bXBpbGVyTW9kZTo6VmFsaWRhdGlvbiwgbnVsbHB0cik7CiAgICAgTWFya2VkQXJndW1lbnRCdWZm
ZXIgYXJnczsKICAgICBhcmdzLmFwcGVuZChjb21waWxlcik7Ci0gICAgY2FsbChnbG9iYWxPYmpl
Y3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3VsZG4ndCBzZWUgdGhp
cy4uLiIpOworICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNVbmRlZmluZWQoKSwg
YXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iX3MpOwogICAgIGlmIChVTkxJS0VMWShz
Y29wZS5leGNlcHRpb24oKSkpCiAgICAgICAgIHNjb3BlLmNsZWFyRXhjZXB0aW9uKCk7CiAgICAg
Y29tcGlsZXItPnN0cmVhbWluZ0NvbXBpbGVyKCkuZmluYWxpemUoZ2xvYmFsT2JqZWN0KTsKQEAg
LTMwNjIsNyArMzA2Miw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihmdW5jdGlvbkNyZWF0
ZVdhc21TdHJlYW1pbmdDb21waWxlckZvckluc3RhbnRpYXRlLCAoSlNHCiAgICAgYXV0byBjb21w
aWxlciA9IFdhc21TdHJlYW1pbmdDb21waWxlcjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIFdh
c206OkNvbXBpbGVyTW9kZTo6RnVsbENvbXBpbGUsIGltcG9ydE9iamVjdCk7CiAgICAgTWFya2Vk
QXJndW1lbnRCdWZmZXIgYXJnczsKICAgICBhcmdzLmFwcGVuZChjb21waWxlcik7Ci0gICAgY2Fs
bChnbG9iYWxPYmplY3QsIGNhbGxiYWNrLCBqc1VuZGVmaW5lZCgpLCBhcmdzLCAiWW91IHNob3Vs
ZG4ndCBzZWUgdGhpcy4uLiIpOworICAgIGNhbGwoZ2xvYmFsT2JqZWN0LCBjYWxsYmFjaywganNV
bmRlZmluZWQoKSwgYXJncywgIllvdSBzaG91bGRuJ3Qgc2VlIHRoaXMuLi4iX3MpOwogICAgIGlm
IChVTkxJS0VMWShzY29wZS5leGNlcHRpb24oKSkpCiAgICAgICAgIHNjb3BlLmNsZWFyRXhjZXB0
aW9uKCk7CiAgICAgY29tcGlsZXItPnN0cmVhbWluZ0NvbXBpbGVyKCkuZmluYWxpemUoZ2xvYmFs
T2JqZWN0KTsKQEAgLTMxNzAsNyArMzE3MCw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihm
dW5jdGlvbkdldFByaXZhdGVQcm9wZXJ0eSwgKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplCiAK
ICAgICBTeW1ib2xJbXBsKiBzeW1ib2wgPSB2bS5wcm9wZXJ0eU5hbWVzLT5idWlsdGluTmFtZXMo
KS5sb29rVXBQcml2YXRlTmFtZShzdHIpOwogICAgIGlmICghc3ltYm9sKQotICAgICAgICByZXR1
cm4gdGhyb3dWTUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJVbmtub3duIHByaXZhdGUgbmFt
ZS4iKTsKKyAgICAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAi
VW5rbm93biBwcml2YXRlIG5hbWUuIl9zKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29w
ZSwgSlNWYWx1ZTo6ZW5jb2RlKGNhbGxGcmFtZS0+YXJndW1lbnQoMCkuZ2V0KGdsb2JhbE9iamVj
dCwgc3ltYm9sKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xz
L1NpZ2lsbENyYXNoQW5hbHl6ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1Np
Z2lsbENyYXNoQW5hbHl6ZXIuY3BwCmluZGV4IGY2YTU5YjBiN2FjMjI0MTRmYzY3NjY0ZDE3ZmU2
NzYwMzZiMTY5YmMuLjZkNjlhNGRmMmUyMzcxMzAwNGU1MzA3MDA1Y2ZkODIwZTBkMjEyMjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9TaWdpbGxDcmFzaEFuYWx5emVy
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvU2lnaWxsQ3Jhc2hBbmFseXpl
ci5jcHAKQEAgLTI3Nyw3ICsyNzcsNyBAQCBhdXRvIFNpZ2lsbENyYXNoQW5hbHl6ZXI6OmFuYWx5
emUoU2lnbmFsQ29udGV4dCYgY29udGV4dCkgLT4gQ3Jhc2hTb3VyY2UKICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgbG9nKCJwYyAlcCBiZWxvbmdzIHRvIENvZGVCbG9j
ayAlcCBvZiB0eXBlICVzIiwgcGMsIGNvZGVCbG9jaywgSklUQ29kZTo6dHlwZU5hbWUoY29kZUJs
b2NrLT5qaXRUeXBlKCkpKTsKKyAgICAgICAgbG9nKCJwYyAlcCBiZWxvbmdzIHRvIENvZGVCbG9j
ayAlcCBvZiB0eXBlICVzIiwgcGMsIGNvZGVCbG9jaywgSklUQ29kZTo6dHlwZU5hbWUoY29kZUJs
b2NrLT5qaXRUeXBlKCkpLmNoYXJhY3RlcnMoKSk7CiAKICAgICAgICAgZHVtcENvZGVCbG9jayhj
b2RlQmxvY2ssIHBjKTsKICAgICB9IHdoaWxlIChmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNwcAppbmRleCA3ZTNhZTdkODk1ODJmMjFlZTJkNjcwNGNl
YjdiMGU0ZGZhZmZhYmMzLi5iNTZkN2Y0YTIxMzM0OTY0ZTJkZGNlNzc5OGRlNDVhNTkzOWQyODY2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAKQEAgLTQx
MSw3ICs0MTEsNyBAQCB2b2lkIFZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0ZXJzKENhbGxGcmFtZSog
Y2FsbEZyYW1lKQogICAgICAgICAgICAgSlNWYWx1ZSB2ID0gaXQtPmpzVmFsdWUoKTsKICAgICAg
ICAgICAgIGludCByZWdpc3Rlck51bWJlciA9IGl0IC0gY2FsbEZyYW1lLT5yZWdpc3RlcnMoKTsK
ICAgICAgICAgICAgIFN0cmluZyBuYW1lID0gKGl0ID4gZW5kT2ZDYWxsZWVTYXZlcykKLSAgICAg
ICAgICAgICAgICA/ICJDYWxsZWVTYXZlUmVnIgorICAgICAgICAgICAgICAgID8gIkNhbGxlZVNh
dmVSZWciX3MKICAgICAgICAgICAgICAgICA6IGNvZGVCbG9jay0+bmFtZUZvclJlZ2lzdGVyKFZp
cnR1YWxSZWdpc3RlcihyZWdpc3Rlck51bWJlcikpOwogICAgICAgICAgICAgZGF0YUxvZ0YoIlty
JSAzZCAlMTRzXSAgICAgIHwgJTEwcCB8IDB4JS0xNmxseCAlc1xuIiwgcmVnaXN0ZXJOdW1iZXIs
IG5hbWUuYXNjaWkoKS5kYXRhKCksIGl0LCAobG9uZyBsb25nKUpTVmFsdWU6OmVuY29kZSh2KSwg
dmFsdWVBc1N0cmluZyh2KS5kYXRhKCkpOwogICAgICAgICAgICAgLS1pdDsKQEAgLTUxOSw3ICs1
MTksNyBAQCB2b2lkIFZNSW5zcGVjdG9yOjpkdW1wQ2VsbE1lbW9yeVRvU3RyZWFtKEpTQ2VsbCog
Y2VsbCwgUHJpbnRTdHJlYW0mIG91dCkKICAgICAgICAgb3V0LnByaW50KCJcbiIpOwogICAgIH07
CiAKLSAgICBvdXQucHJpbnRmKCI8JXAsICVzPlxuIiwgY2VsbCwgY2VsbC0+Y2xhc3NOYW1lKHZt
KSk7CisgICAgb3V0LnByaW50ZigiPCVwLCAlcz5cbiIsIGNlbGwsIGNlbGwtPmNsYXNzTmFtZSh2
bSkuY2hhcmFjdGVycygpKTsKICAgICBJbmRlbnRhdGlvblNjb3BlIHNjb3BlKGluZGVudGF0aW9u
KTsKIAogICAgIElOREVOVCBkdW1wU2xvdChzbG90cywgMCwgImhlYWRlciIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUV4Y2VwdGlvblR5cGUuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21FeGNlcHRpb25UeXBlLmgKaW5kZXggMjg1ZDM1MjRi
ZWUyYjVkMTlmMTJiNTUzNGViZTM2NzU4NWI0ZGU3NC4uM2FmMDhhNjFlNGEyNzg4ZmI3Yjg3NGQx
MDAxY2E0OWMzMTFiMzRmNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
V2FzbUV4Y2VwdGlvblR5cGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNt
RXhjZXB0aW9uVHlwZS5oCkBAIC0zMiwxOCArMzIsMTggQEAgbmFtZXNwYWNlIEpTQyB7CiBuYW1l
c3BhY2UgV2FzbSB7CiAKICNkZWZpbmUgRk9SX0VBQ0hfRVhDRVBUSU9OKG1hY3JvKSBcCi0gICAg
bWFjcm8oT3V0T2ZCb3VuZHNNZW1vcnlBY2Nlc3MsICAiT3V0IG9mIGJvdW5kcyBtZW1vcnkgYWNj
ZXNzIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzVGFibGVBY2Nlc3MsICJPdXQgb2YgYm91bmRz
IHRhYmxlIGFjY2VzcyIpIFwKLSAgICBtYWNybyhPdXRPZkJvdW5kc0NhbGxJbmRpcmVjdCwgIk91
dCBvZiBib3VuZHMgY2FsbF9pbmRpcmVjdCIpIFwKLSAgICBtYWNybyhOdWxsVGFibGVFbnRyeSwg
ICJjYWxsX2luZGlyZWN0IHRvIGEgbnVsbCB0YWJsZSBlbnRyeSIpIFwKLSAgICBtYWNybyhOdWxs
UmVmZXJlbmNlLCAgImNhbGxfcmVmIHRvIGEgbnVsbCByZWZlcmVuY2UiKSBcCi0gICAgbWFjcm8o
QmFkU2lnbmF0dXJlLCAiY2FsbF9pbmRpcmVjdCB0byBhIHNpZ25hdHVyZSB0aGF0IGRvZXMgbm90
IG1hdGNoIikgXAotICAgIG1hY3JvKE91dE9mQm91bmRzVHJ1bmMsICJPdXQgb2YgYm91bmRzIFRy
dW5jIG9wZXJhdGlvbiIpIFwKLSAgICBtYWNybyhVbnJlYWNoYWJsZSwgIlVucmVhY2hhYmxlIGNv
ZGUgc2hvdWxkIG5vdCBiZSBleGVjdXRlZCIpIFwKLSAgICBtYWNybyhEaXZpc2lvbkJ5WmVybywg
IkRpdmlzaW9uIGJ5IHplcm8iKSBcCi0gICAgbWFjcm8oSW50ZWdlck92ZXJmbG93LCAiSW50ZWdl
ciBvdmVyZmxvdyIpIFwKLSAgICBtYWNybyhTdGFja092ZXJmbG93LCAiU3RhY2sgb3ZlcmZsb3ci
KSBcCi0gICAgbWFjcm8oRnVuY3JlZk5vdFdhc20sICJGdW5jcmVmIG11c3QgYmUgYW4gZXhwb3J0
ZWQgd2FzbSBmdW5jdGlvbiIpCisgICAgbWFjcm8oT3V0T2ZCb3VuZHNNZW1vcnlBY2Nlc3MsICAi
T3V0IG9mIGJvdW5kcyBtZW1vcnkgYWNjZXNzIl9zKSBcCisgICAgbWFjcm8oT3V0T2ZCb3VuZHNU
YWJsZUFjY2VzcywgIk91dCBvZiBib3VuZHMgdGFibGUgYWNjZXNzIl9zKSBcCisgICAgbWFjcm8o
T3V0T2ZCb3VuZHNDYWxsSW5kaXJlY3QsICJPdXQgb2YgYm91bmRzIGNhbGxfaW5kaXJlY3QiX3Mp
IFwKKyAgICBtYWNybyhOdWxsVGFibGVFbnRyeSwgICJjYWxsX2luZGlyZWN0IHRvIGEgbnVsbCB0
YWJsZSBlbnRyeSJfcykgXAorICAgIG1hY3JvKE51bGxSZWZlcmVuY2UsICAiY2FsbF9yZWYgdG8g
YSBudWxsIHJlZmVyZW5jZSJfcykgXAorICAgIG1hY3JvKEJhZFNpZ25hdHVyZSwgImNhbGxfaW5k
aXJlY3QgdG8gYSBzaWduYXR1cmUgdGhhdCBkb2VzIG5vdCBtYXRjaCJfcykgXAorICAgIG1hY3Jv
KE91dE9mQm91bmRzVHJ1bmMsICJPdXQgb2YgYm91bmRzIFRydW5jIG9wZXJhdGlvbiJfcykgXAor
ICAgIG1hY3JvKFVucmVhY2hhYmxlLCAiVW5yZWFjaGFibGUgY29kZSBzaG91bGQgbm90IGJlIGV4
ZWN1dGVkIl9zKSBcCisgICAgbWFjcm8oRGl2aXNpb25CeVplcm8sICJEaXZpc2lvbiBieSB6ZXJv
Il9zKSBcCisgICAgbWFjcm8oSW50ZWdlck92ZXJmbG93LCAiSW50ZWdlciBvdmVyZmxvdyJfcykg
XAorICAgIG1hY3JvKFN0YWNrT3ZlcmZsb3csICJTdGFjayBvdmVyZmxvdyJfcykgXAorICAgIG1h
Y3JvKEZ1bmNyZWZOb3RXYXNtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVu
Y3Rpb24iX3MpCiAKIGVudW0gY2xhc3MgRXhjZXB0aW9uVHlwZSA6IHVpbnQzMl90IHsKICNkZWZp
bmUgTUFLRV9FTlVNKGVudW1OYW1lLCBlcnJvcikgZW51bU5hbWUsCkBAIC01MSw3ICs1MSw3IEBA
IGVudW0gY2xhc3MgRXhjZXB0aW9uVHlwZSA6IHVpbnQzMl90IHsKICN1bmRlZiBNQUtFX0VOVU0K
IH07CiAKLUFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlRm9yRXhjZXB0aW9u
VHlwZShFeGNlcHRpb25UeXBlIHR5cGUpCitBTFdBWVNfSU5MSU5FIEFTQ0lJTGl0ZXJhbCBlcnJv
ck1lc3NhZ2VGb3JFeGNlcHRpb25UeXBlKEV4Y2VwdGlvblR5cGUgdHlwZSkKIHsKICAgICBzd2l0
Y2ggKHR5cGUpIHsKICNkZWZpbmUgU1dJVENIX0NBU0UoZW51bU5hbWUsIGVycm9yKSBcCkBAIC02
MSw3ICs2MSw3IEBAIEFMV0FZU19JTkxJTkUgY29uc3QgY2hhciogZXJyb3JNZXNzYWdlRm9yRXhj
ZXB0aW9uVHlwZShFeGNlcHRpb25UeXBlIHR5cGUpCiAjdW5kZWYgU1dJVENIX0NBU0UKICAgICB9
CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuICIiOworICAgIHJldHVybiAi
Il9zOwogfQogCiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6V2FzbQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZvcm1hdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUZvcm1hdC5oCmluZGV4IGM3OWUzMzdjN2E3YWNkMTI4MjBjMmU2OTQwMzQ0ZmY0
YmRkMTBhOWUuLjk3MDYzYWFiOWU2YjdmNTYwZmUyOGQ1NDIwNjBjNTJiODg0NmU1ZDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21Gb3JtYXQuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtRm9ybWF0LmgKQEAgLTg0LDcgKzg0LDcgQEAgaW5s
aW5lIEpTU3RyaW5nKiB0eXBlVG9TdHJpbmcoVk0mIHZtLCBUeXBlS2luZCB0eXBlKQogewogI2Rl
ZmluZSBUWVBFX0NBU0UobWFjcm9OYW1lLCB2YWx1ZSwgYjMsIGluYywgd2FzbU5hbWUpIFwKICAg
ICBjYXNlIFR5cGVLaW5kOjptYWNyb05hbWU6IFwKLSAgICAgICAgcmV0dXJuIGpzTm9udHJpdmlh
bFN0cmluZyh2bSwgI3dhc21OYW1lKTsgXAorICAgICAgICByZXR1cm4ganNOb250cml2aWFsU3Ry
aW5nKHZtLCAjd2FzbU5hbWUiIl9zKTsgXAogCiAgICAgc3dpdGNoICh0eXBlKSB7CiAgICAgICAg
IEZPUl9FQUNIX1dBU01fVFlQRShUWVBFX0NBU0UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9XYXNtR2xvYmFsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L1dhc21HbG9iYWwuY3BwCmluZGV4IGNiM2QxNjNiYmUwOGI2YTU3NThjZDlkYzI4ZGUwNjhhMWRl
NTZmMTcuLmVkMWIwZjdkMTY5MjJlNjJhNmU3NzZmMThlYTBhOTViNDNlM2E0M2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21HbG9iYWwuY3BwCkBAIC05MCw3ICs5MCw3IEBAIHZv
aWQgR2xvYmFsOjpzZXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBhcmd1
bWVudCkKICAgICAgICAgaWYgKGlzRXh0ZXJucmVmKG1fdHlwZSkpIHsKICAgICAgICAgICAgIFJF
TEVBU0VfQVNTRVJUKG1fb3duZXIpOwogICAgICAgICAgICAgaWYgKCFtX3R5cGUuaXNOdWxsYWJs
ZSgpICYmIGFyZ3VtZW50LmlzTnVsbCgpKSB7Ci0gICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVy
cm9yKGdsb2JhbE9iamVjdCwgdm0sICJOb24tbnVsbCBFeHRlcm5yZWYgY2Fubm90IGJlIG51bGwi
KSk7CisgICAgICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Nj
b3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJO
b24tbnVsbCBFeHRlcm5yZWYgY2Fubm90IGJlIG51bGwiX3MpKTsKICAgICAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBtX3ZhbHVlLm1fZXh0ZXJucmVmLnNl
dChtX293bmVyLT52bSgpLCBtX293bmVyLCBhcmd1bWVudCk7CkBAIC05OSw3ICs5OSw3IEBAIHZv
aWQgR2xvYmFsOjpzZXQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBhcmd1
bWVudCkKICAgICAgICAgICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbiA9IG51
bGxwdHI7CiAgICAgICAgICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2FzbVdyYXBw
ZXJGdW5jdGlvbiA9IG51bGxwdHI7CiAgICAgICAgICAgICBpZiAoIWlzV2ViQXNzZW1ibHlIb3N0
RnVuY3Rpb24odm0sIGFyZ3VtZW50LCB3YXNtRnVuY3Rpb24sIHdhc21XcmFwcGVyRnVuY3Rpb24p
ICYmICghbV90eXBlLmlzTnVsbGFibGUoKSB8fCAhYXJndW1lbnQuaXNOdWxsKCkpKSB7Ci0gICAg
ICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVh
dGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11
c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiIpKTsKKyAgICAgICAgICAgICAgICB0aHJv
d0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlS
dW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgIkZ1bmNyZWYgbXVzdCBiZSBhbiBleHBvcnRl
ZCB3YXNtIGZ1bmN0aW9uIl9zKSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAg
ICAgfQogCkBAIC0xMDcsNyArMTA3LDcgQEAgdm9pZCBHbG9iYWw6OnNldChKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU1ZhbHVlIGFyZ3VtZW50KQogICAgICAgICAgICAgICAgIFdhc206
OlNpZ25hdHVyZUluZGV4IHBhcmFtSW5kZXggPSBtX3R5cGUuaW5kZXg7CiAgICAgICAgICAgICAg
ICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggYXJnSW5kZXggPSB3YXNtRnVuY3Rpb24gPyB3YXNtRnVu
Y3Rpb24tPnNpZ25hdHVyZUluZGV4KCkgOiB3YXNtV3JhcHBlckZ1bmN0aW9uLT5zaWduYXR1cmVJ
bmRleCgpOwogICAgICAgICAgICAgICAgIGlmIChwYXJhbUluZGV4ICE9IGFyZ0luZGV4KSB7Ci0g
ICAgICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29w
ZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiQXJn
dW1lbnQgZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0aGUgcmVmZXJlbmNlIHR5cGUiKSk7CisgICAg
ICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwg
Y3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3QsIHZtLCAiQXJndW1l
bnQgZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0aGUgcmVmZXJlbmNlIHR5cGUiX3MpKTsKICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21MTEludFBsYW4uY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUxMSW50UGxhbi5jcHAKaW5kZXggYWUx
NWY4ZGVkZmJlMDE5OTAxNzljZWQzYzFkMmYwNzQwZGJjOGQ2Ni4uYzI0OWY5MmNmMDViYjBjOGMz
NDRlYTVhYjcxYjM5NmYxYWRiOTRjMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vV2FzbUxMSW50UGxhbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
V2FzbUxMSW50UGxhbi5jcHAKQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIExMSW50UGxhbjo6ZGlk
Q29tcGxldGVDb21waWxhdGlvbigpCiAKICAgICAgICAgTGlua0J1ZmZlciBsaW5rQnVmZmVyKGpp
dCwgR0xPQkFMX1RIVU5LX0lELCBMaW5rQnVmZmVyOjpQcm9maWxlOjpXYXNtLCBKSVRDb21waWxh
dGlvbkNhbkZhaWwpOwogICAgICAgICBpZiAoVU5MSUtFTFkobGlua0J1ZmZlci5kaWRGYWlsVG9B
bGxvY2F0ZSgpKSkgewotICAgICAgICAgICAgQmFzZTo6ZmFpbCgiT3V0IG9mIGV4ZWN1dGFibGUg
bWVtb3J5IGluIFdhc20gTExJbnQgZW50cnkgdGh1bmtzIik7CisgICAgICAgICAgICBCYXNlOjpm
YWlsKCJPdXQgb2YgZXhlY3V0YWJsZSBtZW1vcnkgaW4gV2FzbSBMTEludCBlbnRyeSB0aHVua3Mi
X3MpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dhc21PcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL1dhc21PcGVyYXRpb25zLmNwcAppbmRleCAxMDgwNDQ5ZGE2MzhmNjc2ZTA3
ZWNhMGY1ODJlM2I5ZmM3YjVlNjkxLi5iYjQ2ZjhhODEzMmQxZWQ1NWUxYzM0YWY2YTAwZjBkMjQ5
ZmYwZmMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9XYXNtT3BlcmF0
aW9ucy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbU9wZXJhdGlvbnMu
Y3BwCkBAIC01MzcsMTIgKzUzNywxMiBAQCBKU0NfREVGSU5FX0pJVF9PUEVSQVRJT04ob3BlcmF0
aW9uSXRlcmF0ZVJlc3VsdHMsIHZvaWQsIChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgSQogICAgIFJF
VFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIHZvaWQoKSk7CiAKICAgICBpZiAoYnVmZmVyLmhhc092
ZXJmbG93ZWQoKSkgewotICAgICAgICB0aHJvd091dE9mTWVtb3J5RXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSwgIkpTIHJlc3VsdHMgdG8gV2FzbSBhcmUgdG9vIGxhcmdlIik7CisgICAgICAgIHRo
cm93T3V0T2ZNZW1vcnlFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSlMgcmVzdWx0cyB0byBX
YXNtIGFyZSB0b28gbGFyZ2UiX3MpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgaWYg
KGl0ZXJhdGlvbkNvdW50ICE9IHNpZ25hdHVyZS0+cmV0dXJuQ291bnQoKSkgewotICAgICAgICB0
aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJJbmNvcnJlY3QgbnVtYmVyIG9m
IHZhbHVlcyByZXR1cm5lZCB0byBXYXNtIGZyb20gSlMiKTsKKyAgICAgICAgdGhyb3dWTVR5cGVF
cnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiSW5jb3JyZWN0IG51bWJlciBvZiB2YWx1ZXMgcmV0
dXJuZWQgdG8gV2FzbSBmcm9tIEpTIl9zKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNUb1dhc21JQ0NhbGxlZS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcApp
bmRleCBiNTA1ZGYwNWJjNjZkZGQ4YjNkZmFmN2YxZTc2YzdkZTc0N2ZlM2IzLi5jOTgzZWI2NDk3
YmI1MGU5ODAwYjk1NDRhNzY1MDllODRjYTU2M2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNwcApAQCAtMzMsNyArMzMsNyBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVG9XYXNtSUNDYWxsZWU6OnNf
aW5mbyA9IHsgIkpTVG9XYXNtSUNDYWxsZWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVG9XYXNtSUNDYWxsZWUpIH07Citjb25zdCBDbGFz
c0luZm8gSlNUb1dhc21JQ0NhbGxlZTo6c19pbmZvID0geyAiSlNUb1dhc21JQ0NhbGxlZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rv
V2FzbUlDQ2FsbGVlKSB9OwogCiBKU1RvV2FzbUlDQ2FsbGVlKiBKU1RvV2FzbUlDQ2FsbGVlOjpj
cmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBXZWJBc3NlbWJseUZ1
bmN0aW9uKiBmdW5jdGlvbikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
SlNXZWJBc3NlbWJseS5jcHAKaW5kZXggODJkNjMxOWM2MTYzNWI1N2Y2NDQ4Mzg5NDkyNjA0N2Ni
MzgzM2ZjOC4uYzU0MWI1OTQ2NjY4ZWRkMDhhYWI4ZDM1ZmMzODg1YjQ1ZmM1ZmY2NyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKQEAgLTcz
LDcgKzczLDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlW
YWxpZGF0ZUZ1bmMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2Vi
QXNzZW1ibHk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5IiwgJkJhc2U6OnNfaW5mbywgJndlYkFz
c2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5OjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eSJfcywgJkJhc2U6OnNfaW5mbywgJndlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseSkgfTsKIAogLyogU291cmNlIGZvciBKU1dlYkFzc2Vt
Ymx5Lmx1dC5oCiBAYmVnaW4gd2ViQXNzZW1ibHlUYWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUV4Y2VwdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcAppbmRleCBk
ZTQxNDE5MDczOWQwYzgyOGZlMGI2NzdiMTk3NTFjNmQ4NzZmMzIxLi4wMmY4YmIwZDhjYzVkODQ2
YWFhZTBkMTkxYjNhMzUwMTQyODVjZWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5RXhjZXB0aW9uLmNwcApAQCAtMzcsNyArMzcs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlF
eGNlcHRpb246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUV4
Y2VwdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5RXhjZXB0aW9uOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5FeGNlcHRpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUV4Y2VwdGlvbikgfTsK
IAogSlNXZWJBc3NlbWJseUV4Y2VwdGlvbjo6SlNXZWJBc3NlbWJseUV4Y2VwdGlvbihWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBXYXNtOjpUYWcmIHRhZywgRml4ZWRWZWN0b3I8
dWludDY0X3Q+JiYgcGF5bG9hZCkKICAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlHbG9iYWwuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUdsb2JhbC5jcHAK
aW5kZXggOTc5MDg5MTMzOGI0NDkwYzJhNDA0MTdlNmMxZjliNWRmOTc3OTNjZS4uYjMzZDg4NTEx
ZTNiMWIwOGUyMjgzMWE0ZjAwMjJiN2ExNTNiZTI5NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUdsb2JhbC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUdsb2JhbC5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5
R2xvYmFsOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5HbG9iYWwiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlHbG9iYWwp
IH07Citjb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJseUdsb2JhbDo6c19pbmZvID0geyAiV2Vi
QXNzZW1ibHkuR2xvYmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlHbG9iYWwpIH07CiAKIEpTV2ViQXNzZW1ibHlH
bG9iYWwqIEpTV2ViQXNzZW1ibHlHbG9iYWw6OnRyeUNyZWF0ZShKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V2FzbTo6R2xvYmFs
PiYmIGdsb2JhbCkKIHsKQEAgLTk0LDIyICs5NCwyMiBAQCBKU09iamVjdCogSlNXZWJBc3NlbWJs
eUdsb2JhbDo6dHlwZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgIEpTU3RyaW5n
KiB2YWx1ZVN0cmluZyA9IG51bGxwdHI7CiAgICAgc3dpdGNoICh2YWx1ZVR5cGUua2luZCkgewog
ICAgIGNhc2UgV2FzbTo6VHlwZUtpbmQ6OkkzMjoKLSAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05v
bnRyaXZpYWxTdHJpbmcodm0sICJpMzIiKTsKKyAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRy
aXZpYWxTdHJpbmcodm0sICJpMzIiX3MpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFdhc206
OlR5cGVLaW5kOjpJNjQ6Ci0gICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5n
KHZtLCAiaTY0Iik7CisgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZt
LCAiaTY0Il9zKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXYXNtOjpUeXBlS2luZDo6RjMy
OgotICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImYzMiIpOwor
ICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2bSwgImYzMiJfcyk7CiAg
ICAgICAgIGJyZWFrOwogICAgIGNhc2UgV2FzbTo6VHlwZUtpbmQ6OkY2NDoKLSAgICAgICAgdmFs
dWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJmNjQiKTsKKyAgICAgICAgdmFsdWVT
dHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJmNjQiX3MpOwogICAgICAgICBicmVhazsK
ICAgICBkZWZhdWx0OiB7CiAgICAgICAgIGlmIChXYXNtOjppc0Z1bmNyZWYodmFsdWVUeXBlKSkK
LSAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiYW55ZnVu
YyIpOworICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSBqc05vbnRyaXZpYWxTdHJpbmcodm0sICJh
bnlmdW5jIl9zKTsKICAgICAgICAgZWxzZSBpZiAoV2FzbTo6aXNFeHRlcm5yZWYodmFsdWVUeXBl
KSkKLSAgICAgICAgICAgIHZhbHVlU3RyaW5nID0ganNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0
ZXJucmVmIik7CisgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmluZyh2
bSwgImV4dGVybnJlZiJfcyk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIFJFTEVBU0VfQVNT
RVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUhlbHBlcnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlIZWxwZXJzLmgKaW5kZXggN2M1NGQzNDBlMzY3ZDc0NmUw
MjE4MjFlZTBiZTExMjBiMjZjMmExNC4uODdlNTBiNDUzNWZlNDUxM2M4MmRiYWQ3ZjEzM2YyMGZk
ZTgwMDI5YSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJB
c3NlbWJseUhlbHBlcnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dl
YkFzc2VtYmx5SGVscGVycy5oCkBAIC0xOTEsMTcgKzE5MSwxNyBAQCBBTFdBWVNfSU5MSU5FIHVp
bnQ2NF90IGZyb21KU1ZhbHVlKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFdh
c206OlR5cAogICAgIGRlZmF1bHQ6IHsKICAgICAgICAgaWYgKFdhc206OmlzRXh0ZXJucmVmKHR5
cGUpKSB7CiAgICAgICAgICAgICBpZiAoIXR5cGUuaXNOdWxsYWJsZSgpICYmIHZhbHVlLmlzTnVs
bCgpKQotICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd1ZNRXhjZXB0aW9uKGdsb2JhbE9iamVj
dCwgc2NvcGUsIGNyZWF0ZUpTV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IoZ2xvYmFsT2JqZWN0LCB2
bSwgIk5vbi1udWxsIEV4dGVybnJlZiBjYW5ub3QgYmUgbnVsbCIpKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gdGhyb3dWTUV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dl
YkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJOb24tbnVsbCBFeHRlcm5y
ZWYgY2Fubm90IGJlIG51bGwiX3MpKTsKICAgICAgICAgfSBlbHNlIGlmIChXYXNtOjppc0Z1bmNy
ZWYodHlwZSkgfHwgaXNSZWZXaXRoVHlwZUluZGV4KHR5cGUpKSB7CiAgICAgICAgICAgICBXZWJB
c3NlbWJseUZ1bmN0aW9uKiB3YXNtRnVuY3Rpb24gPSBudWxscHRyOwogICAgICAgICAgICAgV2Vi
QXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHdhc21XcmFwcGVyRnVuY3Rpb24gPSBudWxscHRyOwog
ICAgICAgICAgICAgaWYgKCFpc1dlYkFzc2VtYmx5SG9zdEZ1bmN0aW9uKHZtLCB2YWx1ZSwgd2Fz
bUZ1bmN0aW9uLCB3YXNtV3JhcHBlckZ1bmN0aW9uKSAmJiAoIXR5cGUuaXNOdWxsYWJsZSgpIHx8
ICF2YWx1ZS5pc051bGwoKSkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihn
bG9iYWxPYmplY3QsIHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rp
b24iKSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1FeGNlcHRpb24oZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3Qs
IHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iX3MpKTsKICAg
ICAgICAgICAgIGlmIChpc1JlZldpdGhUeXBlSW5kZXgodHlwZSkgJiYgIXZhbHVlLmlzTnVsbCgp
KSB7CiAgICAgICAgICAgICAgICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggcGFyYW1JbmRleCA9IHR5
cGUuaW5kZXg7CiAgICAgICAgICAgICAgICAgV2FzbTo6U2lnbmF0dXJlSW5kZXggYXJnSW5kZXgg
PSB3YXNtRnVuY3Rpb24gPyB3YXNtRnVuY3Rpb24tPnNpZ25hdHVyZUluZGV4KCkgOiB3YXNtV3Jh
cHBlckZ1bmN0aW9uLT5zaWduYXR1cmVJbmRleCgpOwogICAgICAgICAgICAgICAgIGlmIChwYXJh
bUluZGV4ICE9IGFyZ0luZGV4KQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dWTUV4
Y2VwdGlvbihnbG9iYWxPYmplY3QsIHNjb3BlLCBjcmVhdGVKU1dlYkFzc2VtYmx5UnVudGltZUVy
cm9yKGdsb2JhbE9iamVjdCwgdm0sICJBcmd1bWVudCBmdW5jdGlvbiBkaWQgbm90IG1hdGNoIHRo
ZSByZWZlcmVuY2UgdHlwZSIpKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1F
eGNlcHRpb24oZ2xvYmFsT2JqZWN0LCBzY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVF
cnJvcihnbG9iYWxPYmplY3QsIHZtLCAiQXJndW1lbnQgZnVuY3Rpb24gZGlkIG5vdCBtYXRjaCB0
aGUgcmVmZXJlbmNlIHR5cGUiX3MpKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlCiAg
ICAgICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlJbnN0YW5jZS5jcHAKaW5k
ZXggNDljZDAwN2ZiNzdkYzc3MjM0ZWE0Yzk1M2U1ZWM3MzhjMDczOTE5Ni4uOWE1YzA4MzUzMzc0
OWY1ZDg1YTI4NDc1YTZhZWQ2ZDY2MGQxYzg1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseUluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5SW5zdGFuY2UuY3BwCkBAIC00MCw3ICs0
MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNXZWJBc3NlbWJs
eUluc3RhbmNlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUlu
c3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6c19pbmZv
ID0geyAiV2ViQXNzZW1ibHkuSW5zdGFuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseUluc3RhbmNlKSB9OwogCiBT
dHJ1Y3R1cmUqIEpTV2ViQXNzZW1ibHlJbnN0YW5jZTo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CkBAIC0x
NTUsNyArMTU1LDcgQEAgdm9pZCBKU1dlYkFzc2VtYmx5SW5zdGFuY2U6OmZpbmFsaXplQ3JlYXRp
b24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWMKIAogSWRlbnRpZmllciBKU1dl
YkFzc2VtYmx5SW5zdGFuY2U6OmNyZWF0ZVByaXZhdGVNb2R1bGVLZXkoKQogewotICAgIHJldHVy
biBJZGVudGlmaWVyOjpmcm9tVWlkKFByaXZhdGVOYW1lKFByaXZhdGVOYW1lOjpEZXNjcmlwdGlv
biwgIldlYkFzc2VtYmx5SW5zdGFuY2UiKSk7CisgICAgcmV0dXJuIElkZW50aWZpZXI6OmZyb21V
aWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAiV2ViQXNzZW1ibHlJbnN0
YW5jZSJfcykpOwogfQogCiBKU1dlYkFzc2VtYmx5SW5zdGFuY2UqIEpTV2ViQXNzZW1ibHlJbnN0
YW5jZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29u
c3QgSWRlbnRpZmllciYgbW9kdWxlS2V5LCBKU1dlYkFzc2VtYmx5TW9kdWxlKiBqc01vZHVsZSwg
SlNPYmplY3QqIGltcG9ydE9iamVjdCwgU3RydWN0dXJlKiBpbnN0YW5jZVN0cnVjdHVyZSwgUmVm
PFdhc206Ok1vZHVsZT4mJiBtb2R1bGUsIFdhc206OkNyZWF0aW9uTW9kZSBjcmVhdGlvbk1vZGUp
CkBAIC0yMDEsNyArMjAxLDcgQEAgSlNXZWJBc3NlbWJseUluc3RhbmNlKiBKU1dlYkFzc2VtYmx5
SW5zdGFuY2U6OnRyeUNyZWF0ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KgogICAgICAgICAgICAg
V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQ6OkltcG9ydEVudHJ5VHlwZTo6U2luZ2xlLAogICAgICAg
ICAgICAgbW9kdWxlTmFtZSwKICAgICAgICAgICAgIGZpZWxkTmFtZSwKLSAgICAgICAgICAgIElk
ZW50aWZpZXI6OmZyb21VaWQoUHJpdmF0ZU5hbWUoUHJpdmF0ZU5hbWU6OkRlc2NyaXB0aW9uLCAi
V2ViQXNzZW1ibHlJbXBvcnROYW1lIikpLAorICAgICAgICAgICAgSWRlbnRpZmllcjo6ZnJvbVVp
ZChQcml2YXRlTmFtZShQcml2YXRlTmFtZTo6RGVzY3JpcHRpb24sICJXZWJBc3NlbWJseUltcG9y
dE5hbWUiX3MpKSwKICAgICAgICAgfSk7CiAgICAgfQogICAgIEFTU0VSVChtb2R1bGVSZWNvcmQt
PmltcG9ydEVudHJpZXMoKS5zaXplKCkgPT0gbW9kdWxlSW5mb3JtYXRpb24uaW1wb3J0cy5zaXpl
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3Nl
bWJseU1lbW9yeS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2Vt
Ymx5TWVtb3J5LmNwcAppbmRleCAzNWVkZTQxNDkyNmQ2MTk4NTlkMmU4NThiOWM4YTRmMjk5MWFm
NjI5Li5mNGE0MDIzNjg2NzdjMDcyOThkMjdlOTU4NzQ4MDU1NThhNGYwM2MxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5TWVtb3J5LmNw
cApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTV2ViQXNzZW1ibHlNZW1vcnk6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1lbW9yeSIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJB
c3NlbWJseU1lbW9yeSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5TWVtb3J5Ojpz
X2luZm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXZWJBc3NlbWJseU1lbW9yeSkgfTsKIAog
SlNXZWJBc3NlbWJseU1lbW9yeSogSlNXZWJBc3NlbWJseU1lbW9yeTo6dHJ5Q3JlYXRlKEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5
TW9kdWxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlN
b2R1bGUuY3BwCmluZGV4IDBmMGI5Y2M1YTUyZjBlYzQ4YzZmN2NmMzUxYTc1NjdmNmExYzQyMmYu
LmJjNDRhMTJhNmUwMDM3MzM2Mjg3MGMzMzc4ODFkM2E5ZjJlMTBiOTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNb2R1bGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlNb2R1bGUuY3BwCkBA
IC0zOSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNX
ZWJBc3NlbWJseU1vZHVsZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTW9kdWxlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2Vt
Ymx5TW9kdWxlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlNb2R1bGU6OnNfaW5m
byA9IHsgIldlYkFzc2VtYmx5Lk1vZHVsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYkFzc2VtYmx5TW9kdWxlKSB9OwogCiBKU1dl
YkFzc2VtYmx5TW9kdWxlKiBKU1dlYkFzc2VtYmx5TW9kdWxlOjpjcmVhdGVTdHViKFZNJiB2bSwg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFdhc206
Ok1vZHVsZTo6VmFsaWRhdGlvblJlc3VsdCYmIHJlc3VsdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvd2FzbS9qcy9KU1dlYkFzc2VtYmx5VGFibGUuY3BwCmluZGV4IGMwMjA2
ZTRkNWNkOTdhMWQyMWE4YTJmY2ZkMWZmNTc0YWRiMWMzMDAuLjIyZDUyMGRhMjA1Mzg3ZjdkZDQ1
YTAzNGVjYjcyNTAzM2JmN2UxZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvSlNXZWJBc3NlbWJseVRhYmxlLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2ViQXNzZW1ibHlUYWJsZTo6c19pbmZv
ID0geyAiV2ViQXNzZW1ibHkuVGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlUYWJsZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1dlYkFzc2VtYmx5VGFibGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhYmxlIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
V2ViQXNzZW1ibHlUYWJsZSkgfTsKIAogSlNXZWJBc3NlbWJseVRhYmxlKiBKU1dlYkFzc2VtYmx5
VGFibGU6OnRyeUNyZWF0ZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V2FzbTo6VGFibGU+JiYgdGFibGUpCiB7CkBAIC0xMjcs
MTAgKzEyNywxMCBAQCBKU09iamVjdCogSlNXZWJBc3NlbWJseVRhYmxlOjp0eXBlKEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgSlNTdHJpbmcqIGVsZW1lbnRTdHJpbmcgPSBudWxs
cHRyOwogICAgIHN3aXRjaCAoZWxlbWVudCkgewogICAgIGNhc2UgV2FzbTo6VGFibGVFbGVtZW50
VHlwZTo6RnVuY3JlZjoKLSAgICAgICAgZWxlbWVudFN0cmluZyA9IGpzTm9udHJpdmlhbFN0cmlu
Zyh2bSwgImFueWZ1bmMiKTsKKyAgICAgICAgZWxlbWVudFN0cmluZyA9IGpzTm9udHJpdmlhbFN0
cmluZyh2bSwgImFueWZ1bmMiX3MpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFdhc206OlRh
YmxlRWxlbWVudFR5cGU6OkV4dGVybnJlZjoKLSAgICAgICAgZWxlbWVudFN0cmluZyA9IGpzTm9u
dHJpdmlhbFN0cmluZyh2bSwgImV4dGVybnJlZiIpOworICAgICAgICBlbGVtZW50U3RyaW5nID0g
anNOb250cml2aWFsU3RyaW5nKHZtLCAiZXh0ZXJucmVmIl9zKTsKICAgICAgICAgYnJlYWs7CiAg
ICAgZGVmYXVsdDoKICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL0pTV2ViQXNzZW1ibHlUYWcuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5jcHAKaW5k
ZXggNjk0MWZjNGNiNTNiMjM1NWNhYzcwNWNkYzVkMWRmYjZiZjI3YjRhNS4uYmRkYzE0OWNmMGJm
NDE1ZTE5NGFkNjkyNGQ1NGMzODdkMzk1NWVmNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvSlNXZWJBc3NlbWJseVRhZy5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dlYkFzc2VtYmx5VGFnOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5UYWciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNzZW1ibHlUYWcpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXZWJBc3NlbWJseVRhZzo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2ViQXNz
ZW1ibHlUYWcpIH07CiAKIEpTV2ViQXNzZW1ibHlUYWcqIEpTV2ViQXNzZW1ibHlUYWc6OmNyZWF0
ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBjb25zdCBXYXNtOjpUYWcmIHRhZykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKaW5kZXggOGJiNmU1NGMyYjVhMDIyY2ZiODI0ZjY2YWNlNTgwYTJkMjEyOGVi
ZC4uOTA2ZGI3ZDYzOGJhOWJmM2MzNjE5YTVkZGUwNDk5NDFkNTA0ZThmYyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3Rv
clRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5m
byBXZWJBc3NlbWJseUNvbXBpbGVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUNvbXBpbGVF
cnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUNvbXBpbGVFcnJv
ckNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25z
dHJ1Y3RKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90
eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5Q29tcGls
ZUVycm9yUHJvdG90eXBlLmNwcAppbmRleCBhNWJlMDE3MmJhZTNiMGJjOWZhMTRjNmM3MWViNGJm
ZWUzMzY2ZjViLi45MjBiOTJiNDMyYWViMjZkNjlhZjI3MDU0M2M3ZjUxYjlmNjZhNWY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUNvbXBpbGVF
cnJvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LkNvbXBpbGVFcnJvciIsICZCYXNlOjpz
X2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5Q29tcGlsZUVycm9yLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseS5Db21waWxlRXJyb3IiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5
cGVUYWJsZVdlYkFzc2VtYmx5Q29tcGlsZUVycm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlLmx1dC5oCiAgQGJlZ2luIHByb3RvdHlw
ZVRhYmxlV2ViQXNzZW1ibHlDb21waWxlRXJyb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rv
ci5jcHAKaW5kZXggMzdhNmZhMGJkNmZhNDU4NzUyNDhjODM1MDA3MWE2ZTY0MmZmMzIzOS4uZjRi
MWUyM2Y5Y2I5OGIyNTA4MWE2NTAwZTEwMzI0MzEzMjllNGI3ZCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Db25zdHJ1Y3Rvci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRp
b25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM5LDcgKzM5LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1i
bHlFeGNlcHRpb24sIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlFeGNl
cHRpb25Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUV4Y2VwdGlv
bkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgJmNv
bnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlvbkNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlND
X0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5RXhjZXB0aW9uKTsK
IHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFzc2VtYmx5RXhjZXB0
aW9uKTsKQEAgLTU4LDcgKzU4LDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVj
dEpTV2ViQXNzZW1ibHlFeGNlcHRpb24sIChKU0dsb2JhbE9iamVjdCogZ2xvYmEKIAogICAgIGF1
dG8gdGFnID0ganNEeW5hbWljQ2FzdDxKU1dlYkFzc2VtYmx5VGFnKj4odm0sIHRhZ1ZhbHVlKTsK
ICAgICBpZiAoIXRhZykKLSAgICAgICAgcmV0dXJuIHRocm93Vk1UeXBlRXJyb3IoZ2xvYmFsT2Jq
ZWN0LCBzY29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbiBjb25zdHJ1Y3RvciBleHBlY3RzIHRo
ZSBmaXJzdCBhcmd1bWVudCB0byBiZSBhIFdlYkFzc2VtYmx5LlRhZyIpOworICAgICAgICByZXR1
cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhj
ZXB0aW9uIGNvbnN0cnVjdG9yIGV4cGVjdHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIGJlIGEgV2Vi
QXNzZW1ibHkuVGFnIl9zKTsKIAogICAgIE1hcmtlZEFyZ3VtZW50QnVmZmVyIHZhbHVlczsKICAg
ICBmb3JFYWNoSW5JdGVyYWJsZShnbG9iYWxPYmplY3QsIHRhZ1BhcmFtZXRlcnMsIFsmXSAoVk0m
LCBKU0dsb2JhbE9iamVjdCosIEpTVmFsdWUgbmV4dFZhbHVlKSB7CkBAIC02Nyw3ICs2Nyw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5RXhjZXB0aW9u
LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhCiAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwg
eyB9KTsKIAogICAgIGlmICh2YWx1ZXMuc2l6ZSgpICE9IHRhZy0+c2lnbmF0dXJlKCkuYXJndW1l
bnRDb3VudCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3Qs
IHNjb3BlLCAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIGNvbnN0cnVjdG9yIGV4cGVjdHMgdGhlIG51
bWJlciBvZiBwYXJlbWV0ZXJzIGluIFdlYkFzc2VtYmx5LlRhZyB0byBtYXRjaCB0aGUgdGFncyBw
YXJhbWV0ZXIgY291bnQuIik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2Jh
bE9iamVjdCwgc2NvcGUsICJXZWJBc3NlbWJseS5FeGNlcHRpb24gY29uc3RydWN0b3IgZXhwZWN0
cyB0aGUgbnVtYmVyIG9mIHBhcmVtZXRlcnMgaW4gV2ViQXNzZW1ibHkuVGFnIHRvIG1hdGNoIHRo
ZSB0YWdzIHBhcmFtZXRlciBjb3VudC4iX3MpOwogCiAgICAgLy8gQW55IEdDJ2QgdmFsdWVzIGlu
IGhlcmUgd2lsbCBiZSBtYXJrZWQgYnkgdGhlIE1hcmtlZEFydWdlbWVudEJ1ZmZlciB1bnRpbCBz
dG9yZWQgaW4gdGhlIEV4Y2VwdGlvbi4KICAgICBGaXhlZFZlY3Rvcjx1aW50NjRfdD4gcGF5bG9h
ZCh2YWx1ZXMuc2l6ZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlLmNwcAppbmRleCA3MzEx
MTU2NzA1Y2YyYWZiMDJiODg1MGRlZDE0MTdjMGVkMGIwOThiLi43ZTFlZmQ2N2RkYTgwMGI2Nzdh
ZmU2NmQ2M2NhNGY1NGEzNjFmZGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlFeGNlcHRpb25Qcm90b3R5cGUuY3BwCkBA
IC00Miw3ICs0Miw3IEBAIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2Vt
Ymx5RXhjZXB0aW9uUHJvdG9GdW5jSXMpOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xh
c3NJbmZvIFdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3Nl
bWJseS5FeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJs
eUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUV4Y2Vw
dGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUV4Y2VwdGlvblBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUV4Y2VwdGlvbiwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogLyogU291
cmNlIGZvciBXZWJBc3NlbWJseUV4Y2VwdGlvblByb3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90
b3R5cGVUYWJsZVdlYkFzc2VtYmx5RXhjZXB0aW9uCkBAIC0xNDMsNyArMTQzLDcgQEAgSlNDX0RF
RklORV9IT1NUX0ZVTkNUSU9OKHdlYkFzc2VtYmx5RXhjZXB0aW9uUHJvdG9GdW5jSXMsIChKU0ds
b2JhbE9iamVjdCogZ2xvYmEKIAogICAgIEpTV2ViQXNzZW1ibHlUYWcqIHRhZyA9IGdldFRhZyh2
bSwgY2FsbEZyYW1lLT5hcmd1bWVudCgwKSk7CiAgICAgaWYgKCF0YWcpCi0gICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwgIldlYkFzc2VtYmx5
LkV4Y2VwdGlvbi5pcygpOiBGaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgV2ViQXNzZW1ibHkuVGFn
Iik7CisgICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dT
Y29wZSwgIldlYkFzc2VtYmx5LkV4Y2VwdGlvbi5pcygpOiBGaXJzdCBhcmd1bWVudCBtdXN0IGJl
IGEgV2ViQXNzZW1ibHkuVGFnIl9zKTsKIAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTih0aHJvd1Nj
b3BlLCBKU1ZhbHVlOjplbmNvZGUoanNCb29sZWFuKGpzRXhjZXB0aW9uLT50YWcoKSA9PSB0YWct
PnRhZygpKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9X
ZWJBc3NlbWJseUZ1bmN0aW9uLmNwcAppbmRleCBjNzg3MzczZjdjOTJkYWJmNGQ0MTAzY2FiN2Rj
ZTgzZjhhMzAyZDgzLi44ODkxMjA3ZGMxMjAzYjUxOTEzNjQxNWZkNDAzOGM1ZjczYjkwYzkzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1bmN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUZ1
bmN0aW9uLmNwcApAQCAtNTQsNyArNTQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5RnVuY3Rpb246OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5RnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFdlYkFzc2VtYmx5RnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlG
dW5jdGlvbjo6c19pbmZvID0geyAiV2ViQXNzZW1ibHlGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0
aW9uKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsV2ViQXNzZW1i
bHlGdW5jdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5RnVuY3Rpb25CYXNlLmNwcAppbmRleCBiNTMwNmIxZmMzOGJmYTI3MzFl
OTIyYjkzN2Y3NThkMjkwMTA2MjFmLi5hOTRiYzQzM2EzN2U0M2E2NzlkNThlNTA2ZDViOWVmNTUy
YWFkMzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseUZ1bmN0aW9uQmFzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMv
V2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2U6OnNfaW5m
byA9IHsgIldlYkFzc2VtYmx5RnVuY3Rpb25CYXNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZTo6c19pbmZvID0geyAiV2Vi
QXNzZW1ibHlGdW5jdGlvbkJhc2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlGdW5jdGlvbkJhc2UpIH07CiAKIFdlYkFz
c2VtYmx5RnVuY3Rpb25CYXNlOjpXZWJBc3NlbWJseUZ1bmN0aW9uQmFzZShWTSYgdm0sIE5hdGl2
ZUV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBXYXNtVG9XYXNtSW1wb3J0YWJsZUZ1bmN0aW9uIGltcG9ydGFi
bGVGdW5jdGlvbikKICAgICA6IEJhc2Uodm0sIGV4ZWN1dGFibGUsIGdsb2JhbE9iamVjdCwgc3Ry
dWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlHbG9iYWxDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcAppbmRleCAwYjk2MzFlYTU0NjU0NWY3
NmEzMmU4NzJkMzk3OGUwZjU4YzgwOGVjLi40OWVlOGI0NjEwNzA3M2I4YWMzZWQ4ZTYwY2FjNTJm
NmFhMWVlM2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmNwcApAQCAtMzksNyArMzksNyBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFs
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0
cnVjdG9yR2xvYmFsV2ViQXNzZW1ibHlHbG9iYWwsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlHbG9iYWxDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJB
c3NlbWJseUdsb2JhbENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJhc2U6
OnNfaW5mbywgJmNvbnN0cnVjdG9yR2xvYmFsV2ViQXNzZW1ibHlHbG9iYWwsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlHbG9iYWxDb25zdHJ1Y3RvcikgfTsKIAogc3Rh
dGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseUdsb2Jh
bCk7CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNXZWJBc3NlbWJseUds
b2JhbCk7CkBAIC0xNDIsNyArMTQyLDcgQEAgSlNDX0RFRklORV9IT1NUX0ZVTkNUSU9OKGNvbnN0
cnVjdEpTV2ViQXNzZW1ibHlHbG9iYWwsIChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2IKICAgICAg
ICAgICAgIGlmIChhcmd1bWVudC5pc1VuZGVmaW5lZCgpKQogICAgICAgICAgICAgICAgIGFyZ3Vt
ZW50ID0gZGVmYXVsdFZhbHVlRm9yUmVmZXJlbmNlVHlwZSh0eXBlKTsKICAgICAgICAgICAgIGlm
ICghaXNXZWJBc3NlbWJseUhvc3RGdW5jdGlvbih2bSwgYXJndW1lbnQpICYmICFhcmd1bWVudC5p
c051bGwoKSkgewotICAgICAgICAgICAgICAgIHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwg
dGhyb3dTY29wZSwgY3JlYXRlSlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcihnbG9iYWxPYmplY3Qs
IHZtLCAiRnVuY3JlZiBtdXN0IGJlIGFuIGV4cG9ydGVkIHdhc20gZnVuY3Rpb24iKSk7CisgICAg
ICAgICAgICAgICAgdGhyb3dFeGNlcHRpb24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVh
dGVKU1dlYkFzc2VtYmx5UnVudGltZUVycm9yKGdsb2JhbE9iamVjdCwgdm0sICJGdW5jcmVmIG11
c3QgYmUgYW4gZXhwb3J0ZWQgd2FzbSBmdW5jdGlvbiJfcykpOwogICAgICAgICAgICAgICAgIHJl
dHVybiB7IH07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpbml0aWFsVmFsdWUgPSBKU1Zh
bHVlOjplbmNvZGUoYXJndW1lbnQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlHbG9iYWxQcm90b3R5cGUuY3BwCmluZGV4IDE4YTRk
MWY5MWRmZmU0ZDQ4NWJjNjdjOTkxMWJiODA0ZDIzOWNkYTEuLmE1YmRmOWI2MzYwMDU4ZTIxNDVm
YzBhMjk3ZTYxYjgyZWZkY2I5NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93
YXNtL2pzL1dlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZS5jcHAKQEAgLTQ1LDcg
KzQ1LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlHbG9i
YWxQcm90b0Z1bmNUeXBlKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBX
ZWJBc3NlbWJseUdsb2JhbFByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuR2xvYmFs
IiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZUdsb2JhbFdlYkFzc2VtYmx5R2xvYmFsLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5R2xvYmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJX
ZWJBc3NlbWJseS5HbG9iYWwiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVHbG9iYWxXZWJB
c3NlbWJseUdsb2JhbCwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUds
b2JhbFByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseUdsb2JhbFByb3Rv
dHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVHbG9iYWxXZWJBc3NlbWJseUdsb2JhbApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJbnN0YW5j
ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2Vt
Ymx5SW5zdGFuY2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzUyMzMzMzMyZmZmNjY4NzBjZGE5NTkz
ZWFlYzcxNDkxMTM1ZWQ0ZS4uZTAwYzU4N2MxMDNiMzNhODc4YzczYTA2YzRkNGNmNjk1NjEyNjI3
MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlJ
bnN0YW5jZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlJbnN0YW5jZUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1
Y3RvclRhYmxlV2ViQXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShXZWJBc3NlbWJseUluc3RhbmNlQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlJbnN0YW5jZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiJfcywgJkJh
c2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseUluc3RhbmNlLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5SW5zdGFuY2VDb25zdHJ1Y3RvcikgfTsK
IAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJs
eUluc3RhbmNlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFz
c2VtYmx5SW5zdGFuY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlJbnN0YW5jZVByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcAppbmRleCA2OTM4ODkx
NWE3ZjA2NGQ0ZTJiMjQxMDlkMDk0ODhmZWMyZTk5YzY5Li5hZTRiOTMxZTZjYzZhODIzNmY3MzQ2
YmNhZTljMjM0ZWQwNzE3NDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2Fz
bS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlLmNwcApAQCAtNDIs
NyArNDIsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUih3ZWJBc3NlbWJseUlu
c3RhbmNlUHJvdG9HZXR0ZXJFeHBvcnRzKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3Nl
bWJseS5JbnN0YW5jZSIsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5
SW5zdGFuY2UsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlJbnN0YW5j
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5JbnN0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywg
JnByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlJbnN0YW5jZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShXZWJBc3NlbWJseUluc3RhbmNlUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2UgZm9y
IFdlYkFzc2VtYmx5SW5zdGFuY2VQcm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFi
bGVXZWJBc3NlbWJseUluc3RhbmNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseUxpbmtFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCmlu
ZGV4IDgzMDM4MTQ3MWJmYWRkYzhiMzM0YmJmMTZhNTVhNTBjNzc2N2ZhZGIuLjY0MWZhNjBjMjNh
Y2NhMjgwOTc2MWMyNzRlMmIxODNiZTEyNTRjN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3RydWN0b3IuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TGlua0Vycm9yQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TGlua0Vy
cm9yLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TGlua0Vycm9yQ29u
c3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3Rv
clRhYmxlV2ViQXNzZW1ibHlMaW5rRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlMaW5rRXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJF
X0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseUxpbmtFcnJvcik7CiBzdGF0aWMg
SlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNXZWJBc3NlbWJseUxpbmtFcnJvcik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseUxpbmtF
cnJvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseUxpbmtFcnJvclByb3RvdHlwZS5jcHAKaW5kZXggMzhkOGFjYWYxZWJjYThkMzBlY2Y4MDhk
MDg4N2IyZmI2MjNlNmUyYi4uNDdkZTdjNTkwYWIwYjQzYjZhMzYzZDVlYWQ4MzY3YWQ0ZDUzM2Ew
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlM
aW5rRXJyb3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TGlua0Vycm9yUHJvdG90eXBlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TGlua0Vycm9yUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJseS5MaW5rRXJyb3IiLCAmQmFzZTo6c19pbmZv
LCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBXZWJBc3NlbWJseUxpbmtFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1i
bHkuTGlua0Vycm9yIl9zLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJs
eUxpbmtFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseUxpbmtF
cnJvclByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseUxpbmtFcnJvclBy
b3RvdHlwZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5TGlua0Vycm9y
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1l
bW9yeUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCmluZGV4IDcyODI4YWM2NzlhYzlhMDNiNjk5MDA3
YWUyMjE1MGY2NTJkZTBmZTIuLjZlOTQ3YjY0YTQxMzZkMzZhNGQxNTM5MWZkMjgxODQwMzY4YmY0
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5
TWVtb3J5Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pz
L1dlYkFzc2VtYmx5TWVtb3J5Q29uc3RydWN0b3IuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JU
YWJsZVdlYkFzc2VtYmx5TWVtb3J5LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFz
c2VtYmx5TWVtb3J5Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlN
ZW1vcnlDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8s
ICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNZW1vcnksIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoV2ViQXNzZW1ibHlNZW1vcnlDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseU1lbW9yeSk7CiBzdGF0
aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNXZWJBc3NlbWJseU1lbW9yeSk7CkBA
IC03OSw3ICs3OSw3IEBAIEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFz
c2VtYmx5TWVtb3J5LCAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iCiAgICAgICAgIFJFVFVSTl9J
Rl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgICAgIGlmICgh
bWluU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIWluaXRTaXplVmFsdWUuaXNVbmRlZmluZWQo
KSkgewogICAgICAgICAgICAgLy8gRXJyb3IgYmVjYXVzZSBib3RoIHNwZWNpZmllZC4KLSAgICAg
ICAgICAgIHJldHVybiB0aHJvd1ZNVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgdGhyb3dTY29wZSwg
IldlYkFzc2VtYmx5Lk1lbW9yeSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBz
cGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICAgICAgcmV0dXJuIHRocm93Vk1U
eXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCAiV2ViQXNzZW1ibHkuTWVtb3J5ICdp
bml0aWFsJyBhbmQgJ21pbmltdW0nIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBhdCB0aGUgc2FtZSB0
aW1lIl9zKTsKICAgICAgICAgfQogICAgICAgICBpZiAoIWluaXRTaXplVmFsdWUuaXNVbmRlZmlu
ZWQoKSkKICAgICAgICAgICAgIG1pblNpemVWYWx1ZSA9IGluaXRTaXplVmFsdWU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9yeVByb3Rv
dHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1lbW9y
eVByb3RvdHlwZS5jcHAKaW5kZXggN2VjY2MzZTA4ZmNmOTQ0ZGE3MDVhM2E0MzlmYWQzNThkM2Y4
YjM5YS4uYTcyNmVlZjAyMmFiNzZhNDhmYmJhNzMwZTQ5N2E2NDI0MDA3OGVlZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNZW1vcnlQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TWVt
b3J5UHJvdG90eXBlLmNwcApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9T
VF9GVU5DVElPTih3ZWJBc3NlbWJseU1lbW9yeVByb3RvRnVuY1R5cGUpOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5TWVtb3J5UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJXZWJBc3NlbWJseS5NZW1vcnkiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFi
bGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3Nl
bWJseU1lbW9yeVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1lbW9y
eVByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuTWVtb3J5Il9zLCAmQmFzZTo6c19p
bmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseU1lbW9yeSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShXZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZv
ciBXZWJBc3NlbWJseU1lbW9yeVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByb3RvdHlwZVRhYmxl
V2ViQXNzZW1ibHlNZW1vcnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNt
L2pzL1dlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZDMxNzU2
NTBmM2QzM2I0MTE4ZDM0ZDc4NDQ4ZmIxNDI2YjdiNWU2OS4uMTFhYzE2YTcxOTA0Yzc1M2Q5MjQ4
Y2FkYTliODNkY2M1MGRhMzVmYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTU0
LDcgKzU0LDcgQEAgc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNX
ZWJBc3NlbWJseU1vZHVsZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
V2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5TW9kdWxlLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9kdWxlQ29uc3RydWN0b3IpIH07Citjb25z
dCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3RvclRhYmxlV2ViQXNzZW1ibHlNb2R1
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVDb25zdHJ1
Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseU1vZHVsZUNvbnN0cnVjdG9yLmx1
dC5oCiAgQGJlZ2luIGNvbnN0cnVjdG9yVGFibGVXZWJBc3NlbWJseU1vZHVsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5
cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlNb2R1bGVQ
cm90b3R5cGUuY3BwCmluZGV4IGIwODllNjZiZGVjOGU4ODZiMmVhNjIzMWYyZjk1NDYzMmZlNzYz
MDEuLjk2Y2ViNWYzZjdlNzE4MWEwNTJkMjZhNzMzZTAwYjkzNWUyZGNhMjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9kdWxlUHJvdG90eXBl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseU1vZHVs
ZVByb3RvdHlwZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVByb3RvdHlwZTo6c19pbmZvID0geyAiV2Vi
QXNzZW1ibHkuTW9kdWxlIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlwZVRhYmxlV2ViQXNzZW1i
bHlNb2R1bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlNb2R1bGVQ
cm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5Lk1vZHVsZSJfcywgJkJhc2U6OnNfaW5mbywgJnByb3Rv
dHlwZVRhYmxlV2ViQXNzZW1ibHlNb2R1bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlNb2R1bGVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgV2ViQXNzZW1i
bHlNb2R1bGVQcm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJs
eU1vZHVsZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNz
ZW1ibHlNb2R1bGVSZWNvcmQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2Vi
QXNzZW1ibHlNb2R1bGVSZWNvcmQuY3BwCmluZGV4IDdmYTgxZTc5NzMyYjIyNTU2MzJhNzQ4ZjY5
MmViYWFiOTgzZDVmN2IuLjI1ZTA4OWZhMjA3MWIzZjQ3ZjQ1OWVjNjM2ODE4ZWJkYjExM2E5OWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5TW9k
dWxlUmVjb3JkLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseU1vZHVsZVJlY29yZC5jcHAKQEAgLTQ0LDcgKzQ0LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6c19pbmZvID0geyAi
V2ViQXNzZW1ibHlNb2R1bGVSZWNvcmQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkKSB9OworY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5TW9kdWxlUmVjb3JkOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eU1vZHVsZVJlY29yZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShXZWJBc3NlbWJseU1vZHVsZVJlY29yZCkgfTsKIAogU3RydWN0dXJlKiBX
ZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6Y3JlYXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiB7CkBAIC00NjcsNyArNDY3
LDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6aW5pdGlhbGl6ZUV4cG9ydHMoSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICAgICAgICAgIC8vIFdlIGNyZWF0ZSBhIFRh
YmxlIHdoZW4gaXQncyBhIFRhYmxlIGRlZmluaXRpb24uCiAgICAgICAgICAgICBSZWZQdHI8V2Fz
bTo6VGFibGU+IHdhc21UYWJsZSA9IFdhc206OlRhYmxlOjp0cnlDcmVhdGUobW9kdWxlSW5mb3Jt
YXRpb24udGFibGVzW2ldLmluaXRpYWwoKSwgbW9kdWxlSW5mb3JtYXRpb24udGFibGVzW2ldLm1h
eGltdW0oKSwgbW9kdWxlSW5mb3JtYXRpb24udGFibGVzW2ldLnR5cGUoKSk7CiAgICAgICAgICAg
ICBpZiAoIXdhc21UYWJsZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZXhjZXB0aW9uKGNyZWF0
ZUpTV2ViQXNzZW1ibHlMaW5rRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgImNvdWxkbid0IGNyZWF0
ZSBUYWJsZSIpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gZXhjZXB0aW9uKGNyZWF0ZUpTV2Vi
QXNzZW1ibHlMaW5rRXJyb3IoZ2xvYmFsT2JqZWN0LCB2bSwgImNvdWxkbid0IGNyZWF0ZSBUYWJs
ZSJfcykpOwogICAgICAgICAgICAgSlNXZWJBc3NlbWJseVRhYmxlKiB0YWJsZSA9IEpTV2ViQXNz
ZW1ibHlUYWJsZTo6dHJ5Q3JlYXRlKGdsb2JhbE9iamVjdCwgdm0sIGdsb2JhbE9iamVjdC0+d2Vi
QXNzZW1ibHlUYWJsZVN0cnVjdHVyZSgpLCB3YXNtVGFibGUucmVsZWFzZU5vbk51bGwoKSk7CiAg
ICAgICAgICAgICAvLyBXZSBzaG91bGQgYWx3YXlzIGJlIGFibGUgdG8gYWxsb2NhdGUgYSBKU1dl
YkFzc2VtYmx5VGFibGUgd2UndmUgZGVmaW5lZC4KICAgICAgICAgICAgIC8vIElmIGl0J3MgZGVm
aW5lZCB0byBiZSB0b28gbGFyZ2UsIHdlIHNob3VsZCBoYXZlIHRocm93biBhIHZhbGlkYXRpb24g
ZXJyb3IuCkBAIC02NjEsNyArNjYxLDcgQEAgdm9pZCBXZWJBc3NlbWJseU1vZHVsZVJlY29yZDo6
aW5pdGlhbGl6ZUV4cG9ydHMoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIFdhc206OkNhbGxlZSYgZW1iZWRkZXJFbnRyeXBvaW50Q2Fs
bGVlID0gY2FsbGVlR3JvdXAtPmVtYmVkZGVyRW50cnlwb2ludENhbGxlZUZyb21GdW5jdGlvbklu
ZGV4U3BhY2Uoc3RhcnRGdW5jdGlvbkluZGV4U3BhY2UpOwogICAgICAgICAgICAgV2FzbTo6V2Fz
bVRvV2FzbUltcG9ydGFibGVGdW5jdGlvbjo6TG9hZExvY2F0aW9uIGVudHJ5cG9pbnRMb2FkTG9j
YXRpb24gPSBjYWxsZWVHcm91cC0+ZW50cnlwb2ludExvYWRMb2NhdGlvbkZyb21GdW5jdGlvbklu
ZGV4U3BhY2Uoc3RhcnRGdW5jdGlvbkluZGV4U3BhY2UpOwotICAgICAgICAgICAgV2ViQXNzZW1i
bHlGdW5jdGlvbiogZnVuY3Rpb24gPSBXZWJBc3NlbWJseUZ1bmN0aW9uOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53ZWJBc3NlbWJseUZ1bmN0aW9uU3RydWN0dXJlKCks
IHNpZ25hdHVyZS5hcmd1bWVudENvdW50KCksICJzdGFydCIsIG1faW5zdGFuY2UuZ2V0KCksIGVt
YmVkZGVyRW50cnlwb2ludENhbGxlZSwgZW50cnlwb2ludExvYWRMb2NhdGlvbiwgc2lnbmF0dXJl
SW5kZXgpOworICAgICAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogZnVuY3Rpb24gPSBXZWJB
c3NlbWJseUZ1bmN0aW9uOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT53
ZWJBc3NlbWJseUZ1bmN0aW9uU3RydWN0dXJlKCksIHNpZ25hdHVyZS5hcmd1bWVudENvdW50KCks
ICJzdGFydCJfcywgbV9pbnN0YW5jZS5nZXQoKSwgZW1iZWRkZXJFbnRyeXBvaW50Q2FsbGVlLCBl
bnRyeXBvaW50TG9hZExvY2F0aW9uLCBzaWduYXR1cmVJbmRleCk7CiAgICAgICAgICAgICBtX3N0
YXJ0RnVuY3Rpb24uc2V0KHZtLCB0aGlzLCBmdW5jdGlvbik7CiAgICAgICAgIH0KICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRp
bWVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDQ0ZmE1ZTM4ZDFiMWIy
OWJmMGNmZThiZjc4MjVhNzZkODY2ZDRkMzcuLmFhN2Q4ZGE1MGQ0YThkZWJhZmZjYzY0MjIwYmZl
NzA3ZDVlMWEwNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dl
YkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3RydWN0b3IuY3BwCkBA
IC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vi
QXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCAmY29uc3RydWN0b3JUYWJsZVdlYkFzc2VtYmx5UnVudGltZUVycm9yLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5UnVudGltZUVycm9yQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sICZjb25zdHJ1Y3Rv
clRhYmxlV2ViQXNzZW1ibHlSdW50aW1lRXJyb3IsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JDb25zdHJ1Y3RvcikgfTsKIAogc3RhdGljIEpTQ19E
RUNMQVJFX0hPU1RfRlVOQ1RJT04oY29uc3RydWN0SlNXZWJBc3NlbWJseVJ1bnRpbWVFcnJvcik7
CiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihjYWxsSlNXZWJBc3NlbWJseVJ1bnRp
bWVFcnJvcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJB
c3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d2FzbS9qcy9XZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlwZS5jcHAKaW5kZXggMjBjMzU5
OTdmNmIxZTg5NTI5MzU1ODFiNzIxN2FkYTFjMWU2YTk0ZS4uZWI3NjEzYWZiNzhkMGU3OWZlYmM2
MTAxZWYzZTFkNTVhODJhNzBjZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlSdW50aW1lRXJyb3JQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlLmNw
cApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZv
IFdlYkFzc2VtYmx5UnVudGltZUVycm9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWJBc3NlbWJs
eS5SdW50aW1lRXJyb3IiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJs
eVJ1bnRpbWVFcnJvciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1
bnRpbWVFcnJvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVJ1bnRp
bWVFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuUnVudGltZUVycm9yIl9z
LCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVJ1bnRpbWVFcnJvciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3Rv
dHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseVJ1bnRpbWVFcnJvclByb3RvdHlw
ZS5sdXQuaAogIEBiZWdpbiBwcm90b3R5cGVUYWJsZVdlYkFzc2VtYmx5UnVudGltZUVycm9yCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxl
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlUYWJsZUNvbnN0cnVjdG9yLmNwcAppbmRleCA1OWQ5YjczYTAzNmI2ZWVjMjM5ODYzM2ZhNTQ4
Y2Y0NTk2ZGE1ZDk1Li5kYWFmMGZmMDE2OGYxMzYzOGUwOGUyMmU3ZGZjNTY2MWY0Y2JkNDUxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxl
Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5VGFibGVDb25zdHJ1Y3Rvci5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgJmNvbnN0cnVjdG9yVGFibGVXZWJB
c3NlbWJseVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5VGFi
bGVDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhYmxlQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCAmY29uc3RydWN0
b3JUYWJsZVdlYkFzc2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2Vi
QXNzZW1ibHlUYWJsZUNvbnN0cnVjdG9yKSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9G
VU5DVElPTihjYWxsSlNXZWJBc3NlbWJseVRhYmxlKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NU
X0ZVTkNUSU9OKGNvbnN0cnVjdEpTV2ViQXNzZW1ibHlUYWJsZSk7CkBAIC04OSw3ICs4OSw3IEBA
IEpTQ19ERUZJTkVfSE9TVF9GVU5DVElPTihjb25zdHJ1Y3RKU1dlYkFzc2VtYmx5VGFibGUsIChK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqCiAgICAgSlNWYWx1ZSBtaW5TaXplVmFsdWUgPSBtZW1v
cnlEZXNjcmlwdG9yLT5nZXQoZ2xvYmFsT2JqZWN0LCBtaW5pbXVtSWRlbnQpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7CiAgICAgaWYgKCFp
bml0aWFsU2l6ZVZhbHVlLmlzVW5kZWZpbmVkKCkgJiYgIW1pblNpemVWYWx1ZS5pc1VuZGVmaW5l
ZCgpKQotICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93
U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAnaW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25z
IGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUgdGltZSIpOworICAgICAgICByZXR1cm4gdGhyb3dW
TVR5cGVFcnJvcihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsICJXZWJBc3NlbWJseS5UYWJsZSAn
aW5pdGlhbCcgYW5kICdtaW5pbXVtJyBvcHRpb25zIGFyZSBzcGVjaWZpZWQgYXQgdGhlIHNhbWUg
dGltZSJfcyk7CiAKICAgICBpZiAoIW1pblNpemVWYWx1ZS5pc1VuZGVmaW5lZCgpKQogICAgICAg
ICBpbml0aWFsU2l6ZVZhbHVlID0gbWluU2l6ZVZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZS5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcApp
bmRleCA0Y2M1M2I3YWFjMzNmNjVhNjhiZGZlM2QxYTRiM2RkZmRiOTBmMGQ4Li4zZjlkMGFiMDIx
ODEyNjdhYWRjYWMyOTM3YjQzNGM4Y2Y3NTJmNjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcApA
QCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTih3ZWJBc3Nl
bWJseVRhYmxlUHJvdG9GdW5jVHlwZSk7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHku
VGFibGUiLCAmQmFzZTo6c19pbmZvLCAmcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAi
V2ViQXNzZW1ibHkuVGFibGUiX3MsICZCYXNlOjpzX2luZm8sICZwcm90b3R5cGVUYWJsZVdlYkFz
c2VtYmx5VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNzZW1ibHlUYWJs
ZVByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBXZWJBc3NlbWJseVRhYmxlUHJvdG90eXBl
Lmx1dC5oCiAgQGJlZ2luIHByb3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlUYWJsZQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWdDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0
cnVjdG9yLmNwcAppbmRleCA3NGRhMDVmMjcxNzVkZTI4OTBjNTljZmJhMDU4NmJhOWU1YTkwMDM4
Li5kNjcxZTBjNDIzYzNjYTY1MGQwZWFkYTJiN2Q1OGZlNTQxZDdkMzZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhZ0NvbnN0
cnVjdG9yLmNwcApAQCAtMzYsNyArMzYsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3Qg
Q2xhc3NJbmZvIFdlYkFzc2VtYmx5VGFnQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShX
ZWJBc3NlbWJseVRhZ0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5
VGFnQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5VGFnQ29uc3Ry
dWN0b3IpIH07CiAKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxKU1dlYkFz
c2VtYmx5VGFnKTsKIHN0YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNvbnN0cnVjdEpT
V2ViQXNzZW1ibHlUYWcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20v
anMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dh
c20vanMvV2ViQXNzZW1ibHlUYWdQcm90b3R5cGUuY3BwCmluZGV4IGU0YTQ2MDdhMDA1ZTA4OTlj
Mzc1ZTdmMGRlYjMzYWNhM2U1ZWExYWMuLjI5YjVmMmRkYmQzMzQ0ZGVmNmRmOTdkMGE0MDk0Yjcw
Y2Q2MGY0MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFz
c2VtYmx5VGFnUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9q
cy9XZWJBc3NlbWJseVRhZ1Byb3RvdHlwZS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgc3RhdGljIEpT
Q19ERUNMQVJFX0hPU1RfRlVOQ1RJT04od2ViQXNzZW1ibHlUYWdQcm90b0Z1bmNUeXBlKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVRhZ1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiV2ViQXNzZW1ibHkuVGFnIiwgJkJhc2U6OnNfaW5mbywgJnByb3RvdHlw
ZVRhYmxlV2ViQXNzZW1ibHlUYWcsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoV2ViQXNz
ZW1ibHlUYWdQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gV2ViQXNzZW1ibHlUYWdQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIldlYkFzc2VtYmx5LlRhZyJfcywgJkJhc2U6OnNfaW5mbywgJnBy
b3RvdHlwZVRhYmxlV2ViQXNzZW1ibHlUYWcsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
V2ViQXNzZW1ibHlUYWdQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgV2ViQXNzZW1ibHlU
YWdQcm90b3R5cGUubHV0LmgKICBAYmVnaW4gcHJvdG90eXBlVGFibGVXZWJBc3NlbWJseVRhZwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlXcmFw
cGVyRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1i
bHlXcmFwcGVyRnVuY3Rpb24uY3BwCmluZGV4IDJmYjZhNGVjN2JiNjI3YThjYjg3ZWQ4ZGY0YmU0
NTk1N2QxZmM5YmYuLmI1ZDc4Y2U0OGRhNzBkMjY5YzNlNTk5ZGE3ZjM5ZGNmOTAwNmZiOWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5V3JhcHBl
ckZ1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd2FzbS9qcy9XZWJBc3Nl
bWJseVdyYXBwZXJGdW5jdGlvbi5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIEpT
QyB7CiAKLWNvbnN0IENsYXNzSW5mbyBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbjo6c19pbmZv
ID0geyAiV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9u
KSB9OworY29uc3QgQ2xhc3NJbmZvIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uOjpzX2luZm8g
PSB7ICJXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlv
bikgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oY2FsbFdlYkFzc2VtYmx5
V3JhcHBlckZ1bmN0aW9uKTsKIApAQCAtNDUsNyArNDUsNyBAQCBXZWJBc3NlbWJseVdyYXBwZXJG
dW5jdGlvbjo6V2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24oVk0mIHZtLCBOYXRpdmVFeGVjdXRh
YmxlKgogV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0
aW9uOjpjcmVhdGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNPYmplY3QqIGZ1bmN0aW9uLCB1bnNpZ25lZCBpbXBvcnRJbmRleCwg
SlNXZWJBc3NlbWJseUluc3RhbmNlKiBpbnN0YW5jZSwgV2FzbTo6U2lnbmF0dXJlSW5kZXggc2ln
bmF0dXJlSW5kZXgpCiB7CiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRSghZnVuY3Rpb24tPmluaGVy
aXRzPFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uPih2bSksICJXZSBzaG91bGQgbmV2ZXIgZG91
YmxlIHdyYXAgYSB3cmFwcGVyIGZ1bmN0aW9uLiIpOwotICAgIFN0cmluZyBuYW1lID0gIiI7Cisg
ICAgU3RyaW5nIG5hbWUgPSBlbXB0eVN0cmluZygpOwogICAgIE5hdGl2ZUV4ZWN1dGFibGUqIGV4
ZWN1dGFibGUgPSB2bS5nZXRIb3N0RnVuY3Rpb24oY2FsbFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0
aW9uLCBOb0ludHJpbnNpYywgY2FsbEhvc3RGdW5jdGlvbkFzQ29uc3RydWN0b3IsIG51bGxwdHIs
IG5hbWUpOwogICAgIFdlYkFzc2VtYmx5V3JhcHBlckZ1bmN0aW9uKiByZXN1bHQgPSBuZXcgKE5v
dE51bGwsIGFsbG9jYXRlQ2VsbDxXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbj4odm0pKSBXZWJB
c3NlbWJseVdyYXBwZXJGdW5jdGlvbih2bSwgZXhlY3V0YWJsZSwgZ2xvYmFsT2JqZWN0LCBzdHJ1
Y3R1cmUsIFdhc206Oldhc21Ub1dhc21JbXBvcnRhYmxlRnVuY3Rpb24geyBzaWduYXR1cmVJbmRl
eCwgJmluc3RhbmNlLT5pbnN0YW5jZSgpLmltcG9ydEZ1bmN0aW9uSW5mbyhpbXBvcnRJbmRleCkt
Pndhc21Ub0VtYmVkZGVyU3R1YiB9ICk7CiAgICAgY29uc3QgV2FzbTo6U2lnbmF0dXJlJiBzaWdu
YXR1cmUgPSBXYXNtOjpTaWduYXR1cmVJbmZvcm1hdGlvbjo6Z2V0KHNpZ25hdHVyZUluZGV4KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9u
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1JlZ3VsYXJFeHByZXNzaW9uLmNwcApp
bmRleCBlZTRmNThiZDQyMGQzOWExNGFkODFlZmNhZTdkMzc4ZDdmMzhjZGQ3Li4zNzkwMzZlYjM2
Yjg2YjhiN2I3ODYyMDJlMjZiYjhmMTY3OTQzMzM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUveWFyci9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvUmVndWxhckV4cHJlc3Npb24uY3BwCkBAIC02NCw3ICs2NCw3IEBAIHByaXZh
dGU6CiAKICAgICAgICAgSlNDOjpZYXJyOjpZYXJyUGF0dGVybiBwYXR0ZXJuKHBhdHRlcm5TdHJp
bmcsIGZsYWdzLCBtX2NvbnN0cnVjdGlvbkVycm9yQ29kZSk7CiAgICAgICAgIGlmIChKU0M6Ollh
cnI6Omhhc0Vycm9yKG1fY29uc3RydWN0aW9uRXJyb3JDb2RlKSkgewotICAgICAgICAgICAgTE9H
X0VSUk9SKCJSZWd1bGFyRXhwcmVzc2lvbjogWUFSUiBjb21waWxlIGZhaWxlZCB3aXRoICclcyci
LCBKU0M6OllhcnI6OmVycm9yTWVzc2FnZShtX2NvbnN0cnVjdGlvbkVycm9yQ29kZSkpOworICAg
ICAgICAgICAgTE9HX0VSUk9SKCJSZWd1bGFyRXhwcmVzc2lvbjogWUFSUiBjb21waWxlIGZhaWxl
ZCB3aXRoICclcyciLCBKU0M6OllhcnI6OmVycm9yTWVzc2FnZShtX2NvbnN0cnVjdGlvbkVycm9y
Q29kZSkuY2hhcmFjdGVycygpKTsKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJFcnJvckNv
ZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5jcHAKaW5k
ZXggNGYwM2UwNzQ2MjQwMGI1YzE2ZTRjZjlhNjhhMzIzODk4NDFkMTE0OS4uZmU2YjJlYjJmNWY5
ZDM4NmUyMGQyOGVhOWZjNDYyMDg3YTMxMzQ4MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3lhcnIvWWFyckVycm9yQ29kZS5jcHAKQEAgLTMwLDM4ICszMCwzOCBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsgbmFtZXNwYWNlIFlhcnIgewogCi1jb25zdCBjaGFyKiBlcnJvck1lc3NhZ2UoRXJyb3JD
b2RlIGVycm9yKQorQVNDSUlMaXRlcmFsIGVycm9yTWVzc2FnZShFcnJvckNvZGUgZXJyb3IpCiB7
CiAjZGVmaW5lIFJFR0VYUF9FUlJPUl9QUkVGSVggIkludmFsaWQgcmVndWxhciBleHByZXNzaW9u
OiAiCiAgICAgLy8gVGhlIG9yZGVyIG9mIHRoaXMgYXJyYXkgbXVzdCBtYXRjaCB0aGUgRXJyb3JD
b2RlIGVudW0uCi0gICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGVycm9yTWVzc2FnZXNbXSA9
IHsKLSAgICAgICAgbnVsbHB0ciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vRXJyb3IKLSAgICAgICAgUkVHRVhQ
X0VSUk9SX1BSRUZJWCAicmVndWxhciBleHByZXNzaW9uIHRvbyBsYXJnZSIsICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vIFBhdHRlcm5Ub29MYXJnZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJF
RklYICJudW1iZXJzIG91dCBvZiBvcmRlciBpbiB7fSBxdWFudGlmaWVyIiwgICAgICAgICAgICAg
ICAgLy8gUXVhbnRpZmllck91dE9mT3JkZXIKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAi
bm90aGluZyB0byByZXBlYXQiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v
IFF1YW50aWZpZXJXaXRob3V0QXRvbQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJudW1i
ZXIgdG9vIGxhcmdlIGluIHt9IHF1YW50aWZpZXIiLCAgICAgICAgICAgICAgICAgICAgLy8gUXVh
bnRpZmllclRvb0xhcmdlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImluY29tcGxldGUg
e30gcXVhbnRpZmllciBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAvLyBRdWFudGlmaWVy
SW5jb21wbGV0ZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJtaXNzaW5nICkiLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWlzc2luZ1BhcmVudGhl
c2VzCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hlZCBdIG9yIH0gYnJhY2tl
dCBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAvLyBCcmFja2V0VW5tYXRjaGVkCi0gICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hlZCBwYXJlbnRoZXNlcyIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvLyBQYXJlbnRoZXNlc1VubWF0Y2hlZAotICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJ1bnJlY29nbml6ZWQgY2hhcmFjdGVyIGFmdGVyICg/IiwgICAg
ICAgICAgICAgICAgICAgICAgLy8gUGFyZW50aGVzZXNUeXBlSW52YWxpZAotICAgICAgICBSRUdF
WFBfRVJST1JfUFJFRklYICJpbnZhbGlkIGdyb3VwIHNwZWNpZmllciBuYW1lIiwgICAgICAgICAg
ICAgICAgICAgICAgICAgLy8gSW52YWxpZEdyb3VwTmFtZQotICAgICAgICBSRUdFWFBfRVJST1Jf
UFJFRklYICJkdXBsaWNhdGUgZ3JvdXAgc3BlY2lmaWVyIG5hbWUiLCAgICAgICAgICAgICAgICAg
ICAgICAgLy8gRHVwbGljYXRlR3JvdXBOYW1lCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVgg
Im1pc3NpbmcgdGVybWluYXRpbmcgXSBmb3IgY2hhcmFjdGVyIGNsYXNzIiwgICAgICAgICAgICAv
LyBDaGFyYWN0ZXJDbGFzc1VubWF0Y2hlZAotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJy
YW5nZSBvdXQgb2Ygb3JkZXIgaW4gY2hhcmFjdGVyIGNsYXNzIiwgICAgICAgICAgICAgICAgLy8g
Q2hhcmFjdGVyQ2xhc3NSYW5nZU91dE9mT3JkZXIKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJ
WCAiaW52YWxpZCByYW5nZSBpbiBjaGFyYWN0ZXIgY2xhc3MgZm9yIFVuaWNvZGUgcGF0dGVybiIs
IC8vIENoYXJhY3RlckNsYXNzUmFuZ2VJbnZhbGlkCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVG
SVggIlxcIGF0IGVuZCBvZiBwYXR0ZXJuIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvLyBFc2NhcGVVbnRlcm1pbmF0ZWQKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52
YWxpZCBVbmljb2RlIFxcdSBlc2NhcGUiLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIElu
dmFsaWRVbmljb2RlRXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQg
VW5pY29kZSBjb2RlIHBvaW50IFxcdXt9IGVzY2FwZSIsICAgICAgICAgICAgICAvLyBJbnZhbGlk
VW5pY29kZUNvZGVQb2ludEVzY2FwZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZh
bGlkIGJhY2tyZWZlcmVuY2UgZm9yIFVuaWNvZGUgcGF0dGVybiIsICAgICAgICAgICAgLy8gSW52
YWxpZEJhY2tyZWZlcmVuY2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBc
XGs8PiBuYW1lZCBiYWNrcmVmZXJlbmNlIiwgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRO
YW1lZEJhY2tSZWZlcmVuY2UKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBl
c2NhcGVkIGNoYXJhY3RlciBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgIC8vIEludmFsaWRJ
ZGVudGl0eUVzY2FwZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIG9jdGFs
IGVzY2FwZSBmb3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAgICAgLy8gSW52YWxpZE9jdGFs
RXNjYXBlCi0gICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxjIGVzY2FwZSBm
b3IgVW5pY29kZSBwYXR0ZXJuIiwgICAgICAgICAgICAgICAvLyBJbnZhbGlkQ29udHJvbExldHRl
ckVzY2FwZQotICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHByb3BlcnR5IGV4
cHJlc3Npb24iLCAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZFVuaWNvZGVQcm9w
ZXJ0eUV4cHJlc3Npb24KLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAidG9vIG1hbnkgbmVz
dGVkIGRpc2p1bmN0aW9ucyIsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRvb01hbnlEaXNq
dW5jdGlvbnMKLSAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAicGF0dGVybiBleGNlZWRzIHN0
cmluZyBsZW5ndGggbGltaXRzIiwgICAgICAgICAgICAgICAgIC8vIE9mZnNldFRvb0xhcmdlCi0g
ICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgZmxhZ3MiICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkUmVndWxhckV4cHJlc3Npb25GbGFn
cworICAgIHN0YXRpYyBjb25zdCBBU0NJSUxpdGVyYWwgZXJyb3JNZXNzYWdlc1tdID0geworICAg
ICAgICBBU0NJSUxpdGVyYWw6Om51bGwoKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBOb0Vycm9yCisgICAgICAgIFJFR0VYUF9FUlJP
Ul9QUkVGSVggInJlZ3VsYXIgZXhwcmVzc2lvbiB0b28gbGFyZ2UiX3MsICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vIFBhdHRlcm5Ub29MYXJnZQorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklY
ICJudW1iZXJzIG91dCBvZiBvcmRlciBpbiB7fSBxdWFudGlmaWVyIl9zLCAgICAgICAgICAgICAg
ICAvLyBRdWFudGlmaWVyT3V0T2ZPcmRlcgorICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJu
b3RoaW5nIHRvIHJlcGVhdCJfcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
LyBRdWFudGlmaWVyV2l0aG91dEF0b20KKyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAibnVt
YmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyIl9zLCAgICAgICAgICAgICAgICAgICAgLy8g
UXVhbnRpZmllclRvb0xhcmdlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImluY29tcGxl
dGUge30gcXVhbnRpZmllciBmb3IgVW5pY29kZSBwYXR0ZXJuIl9zLCAgICAgICAgIC8vIFF1YW50
aWZpZXJJbmNvbXBsZXRlCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggIm1pc3NpbmcgKSJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1pc3NpbmdQ
YXJlbnRoZXNlcworICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ1bm1hdGNoZWQgXSBvciB9
IGJyYWNrZXQgZm9yIFVuaWNvZGUgcGF0dGVybiJfcywgICAgICAgICAvLyBCcmFja2V0VW5tYXRj
aGVkCisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVubWF0Y2hlZCBwYXJlbnRoZXNlcyJf
cywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhcmVudGhlc2VzVW5tYXRjaGVk
CisgICAgICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0
ZXIgKD8iX3MsICAgICAgICAgICAgICAgICAgICAgIC8vIFBhcmVudGhlc2VzVHlwZUludmFsaWQK
KyAgICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBncm91cCBzcGVjaWZpZXIgbmFt
ZSJfcywgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW52YWxpZEdyb3VwTmFtZQorICAgICAg
ICBSRUdFWFBfRVJST1JfUFJFRklYICJkdXBsaWNhdGUgZ3JvdXAgc3BlY2lmaWVyIG5hbWUiX3Ms
ICAgICAgICAgICAgICAgICAgICAgICAvLyBEdXBsaWNhdGVHcm91cE5hbWUKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAibWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBjaGFyYWN0ZXIgY2xh
c3MiX3MsICAgICAgICAgICAgLy8gQ2hhcmFjdGVyQ2xhc3NVbm1hdGNoZWQKKyAgICAgICAgUkVH
RVhQX0VSUk9SX1BSRUZJWCAicmFuZ2Ugb3V0IG9mIG9yZGVyIGluIGNoYXJhY3RlciBjbGFzcyJf
cywgICAgICAgICAgICAgICAgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZU91dE9mT3JkZXIKKyAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCByYW5nZSBpbiBjaGFyYWN0ZXIgY2xhc3Mg
Zm9yIFVuaWNvZGUgcGF0dGVybiJfcywgLy8gQ2hhcmFjdGVyQ2xhc3NSYW5nZUludmFsaWQKKyAg
ICAgICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiXFwgYXQgZW5kIG9mIHBhdHRlcm4iX3MsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXNjYXBlVW50ZXJtaW5hdGVkCisgICAgICAg
IFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgVW5pY29kZSBcXHUgZXNjYXBlIl9zLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlRXNjYXBlCisgICAgICAgIFJF
R0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgVW5pY29kZSBjb2RlIHBvaW50IFxcdXt9IGVzY2Fw
ZSJfcywgICAgICAgICAgICAgIC8vIEludmFsaWRVbmljb2RlQ29kZVBvaW50RXNjYXBlCisgICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgYmFja3JlZmVyZW5jZSBmb3IgVW5pY29k
ZSBwYXR0ZXJuIl9zLCAgICAgICAgICAgIC8vIEludmFsaWRCYWNrcmVmZXJlbmNlCisgICAgICAg
IFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgXFxrPD4gbmFtZWQgYmFja3JlZmVyZW5jZSJf
cywgICAgICAgICAgICAgICAgICAgIC8vIEludmFsaWROYW1lZEJhY2tSZWZlcmVuY2UKKyAgICAg
ICAgUkVHRVhQX0VSUk9SX1BSRUZJWCAiaW52YWxpZCBlc2NhcGVkIGNoYXJhY3RlciBmb3IgVW5p
Y29kZSBwYXR0ZXJuIl9zLCAgICAgICAgLy8gSW52YWxpZElkZW50aXR5RXNjYXBlCisgICAgICAg
IFJFR0VYUF9FUlJPUl9QUkVGSVggImludmFsaWQgb2N0YWwgZXNjYXBlIGZvciBVbmljb2RlIHBh
dHRlcm4iX3MsICAgICAgICAgICAgIC8vIEludmFsaWRPY3RhbEVzY2FwZQorICAgICAgICBSRUdF
WFBfRVJST1JfUFJFRklYICJpbnZhbGlkIFxcYyBlc2NhcGUgZm9yIFVuaWNvZGUgcGF0dGVybiJf
cywgICAgICAgICAgICAgICAvLyBJbnZhbGlkQ29udHJvbExldHRlckVzY2FwZQorICAgICAgICBS
RUdFWFBfRVJST1JfUFJFRklYICJpbnZhbGlkIHByb3BlcnR5IGV4cHJlc3Npb24iX3MsICAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyBJbnZhbGlkVW5pY29kZVByb3BlcnR5RXhwcmVzc2lvbgor
ICAgICAgICBSRUdFWFBfRVJST1JfUFJFRklYICJ0b28gbWFueSBuZXN0ZWQgZGlzanVuY3Rpb25z
Il9zLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUb29NYW55RGlzanVuY3Rpb25zCisgICAg
ICAgIFJFR0VYUF9FUlJPUl9QUkVGSVggInBhdHRlcm4gZXhjZWVkcyBzdHJpbmcgbGVuZ3RoIGxp
bWl0cyJfcywgICAgICAgICAgICAgICAgIC8vIE9mZnNldFRvb0xhcmdlCisgICAgICAgIFJFR0VY
UF9FUlJPUl9QUkVGSVggImludmFsaWQgZmxhZ3MiX3MgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vIEludmFsaWRSZWd1bGFyRXhwcmVzc2lvbkZsYWdzCiAgICAgfTsK
IAogICAgIHJldHVybiBlcnJvck1lc3NhZ2VzW3N0YXRpY19jYXN0PHVuc2lnbmVkPihlcnJvcild
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckVycm9yQ29kZS5oCmluZGV4IGQyNzdm
Y2JjNGRjYTgzYmQ4ODMwOTdjN2MwMDNhZDM2NzliYjU1ZjkuLmViZmY1OTZlNWU0MWY1YjlhNDIy
Y2Y3MjRmZDFkYzc0YjUwMjEyMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95
YXJyL1lhcnJFcnJvckNvZGUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJy
RXJyb3JDb2RlLmgKQEAgLTI1LDYgKzI1LDggQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
IDx3dGYvRm9yd2FyZC5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAogY2xhc3MgQ2FsbEZyYW1lOwpA
QCAtNjMsNyArNjUsNyBAQCBlbnVtIGNsYXNzIEVycm9yQ29kZSA6IHVpbnQ4X3QgewogICAgIElu
dmFsaWRSZWd1bGFyRXhwcmVzc2lvbkZsYWdzLAogfTsKIAotSlNfRVhQT1JUX1BSSVZBVEUgY29u
c3QgY2hhciogZXJyb3JNZXNzYWdlKEVycm9yQ29kZSk7CitKU19FWFBPUlRfUFJJVkFURSBBU0NJ
SUxpdGVyYWwgZXJyb3JNZXNzYWdlKEVycm9yQ29kZSk7CiBpbmxpbmUgYm9vbCBoYXNFcnJvcihF
cnJvckNvZGUgZXJyb3JDb2RlKQogewogICAgIHJldHVybiBlcnJvckNvZGUgIT0gRXJyb3JDb2Rl
OjpOb0Vycm9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5oIGIv
U291cmNlL1dURi93dGYvUmVzb3VyY2VVc2FnZS5oCmluZGV4IDgzZDJhNmRiOTg1MDU5ODA4ZTU4
OWYxODZmZGViMDk4MmRmNTE1ODYuLmVlNTFmYmI4ZGRlMGQ2Mjc0YmZkNmJiY2FjMWI4YjI4ZjE2
MDE5YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1Jlc291cmNlVXNhZ2UuaAorKysgYi9T
b3VyY2UvV1RGL3d0Zi9SZXNvdXJjZVVzYWdlLmgKQEAgLTI2LDYgKzI2LDcgQEAKICNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8YXJyYXk+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KIAogbmFt
ZXNwYWNlIFdURiB7CiAKQEAgLTM5LDcgKzQwLDcgQEAgc3RydWN0IFRhZ0luZm8gewogICAgIHNp
emVfdCByZXNlcnZlZCB7IDAgfTsKIH07CiAKLVdURl9FWFBPUlRfUFJJVkFURSBjb25zdCBjaGFy
KiBkaXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkKTsKK1dURl9FWFBPUlRfUFJJVkFURSBBU0NJ
SUxpdGVyYWwgZGlzcGxheU5hbWVGb3JWTVRhZyh1bnNpZ25lZCk7CiBXVEZfRVhQT1JUX1BSSVZB
VEUgc2l6ZV90IHZtUGFnZVNpemUoKTsKIFdURl9FWFBPUlRfUFJJVkFURSBzdGQ6OmFycmF5PFRh
Z0luZm8sIDI1Nj4gcGFnZXNQZXJWTVRhZygpOwogV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgbG9n
Rm9vdHByaW50Q29tcGFyaXNvbihjb25zdCBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4mLCBjb25z
dCBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4mKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3Rm
L2NvY29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9SZXNv
dXJjZVVzYWdlQ29jb2EuY3BwCmluZGV4IDMxNDA3YmFhZDU0MDc0NmI4NTk3NmRkODkzYWM0ODk5
NGJiMTc3MDMuLjQ4Y2ZiNjQ3YzU2OTM4ZTY2NDRmZDEyMGMxNDY1N2MyODhmMTEzOTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL2NvY29hL1Jlc291cmNlVXNhZ2VDb2NvYS5jcHAKKysrIGIv
U291cmNlL1dURi93dGYvY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNwcApAQCAtNjksMzYgKzY5
LDM2IEBAIHZvaWQgbG9nRm9vdHByaW50Q29tcGFyaXNvbihjb25zdCBzdGQ6OmFycmF5PFRhZ0lu
Zm8sIDI1Nj4mIGJlZm9yZSwgY29uc3Qgc3RkOjphCiAgICAgfQogfQogCi1jb25zdCBjaGFyKiBk
aXNwbGF5TmFtZUZvclZNVGFnKHVuc2lnbmVkIHRhZykKK0FTQ0lJTGl0ZXJhbCBkaXNwbGF5TmFt
ZUZvclZNVGFnKHVuc2lnbmVkIHRhZykKIHsKICAgICBzd2l0Y2ggKHRhZykgewotICAgIGNhc2Ug
Vk1fTUVNT1JZX0NHSU1BR0U6IHJldHVybiAiQ0cgaW1hZ2UiOwotICAgIGNhc2UgVk1fTUVNT1JZ
X0NPUkVHUkFQSElDU19EQVRBOiByZXR1cm4gIkNHIHJhc3RlciBkYXRhIjsKLSAgICBjYXNlIFZN
X01FTU9SWV9DT1JFU0VSVklDRVM6IHJldHVybiAiQ29yZVNlcnZpY2VzIjsKLSAgICBjYXNlIFZN
X01FTU9SWV9EWUxJQjogcmV0dXJuICJkeWxpYiI7Ci0gICAgY2FzZSBWTV9NRU1PUllfRk9VTkRB
VElPTjogcmV0dXJuICJGb3VuZGF0aW9uIjsKLSAgICBjYXNlIFZNX01FTU9SWV9JTUFHRUlPOiBy
ZXR1cm4gIkltYWdlSU8iOwotICAgIGNhc2UgVk1fTUVNT1JZX0lPQUNDRUxFUkFUT1I6IHJldHVy
biAiSU9BY2NlbGVyYXRvciI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSU9TVVJGQUNFOiByZXR1cm4g
IklPU3VyZmFjZSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSU9LSVQ6IHJldHVybiAiSU9LaXQiOwot
ICAgIGNhc2UgVk1fTUVNT1JZX0pBVkFTQ1JJUFRfQ09SRTogcmV0dXJuICJHaWdhY2FnZSI7Ci0g
ICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfRVhFQ1VUQUJMRV9BTExPQ0FUT1I6IHJl
dHVybiAiSlNDIEpJVCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfUkVHSVNU
RVJfRklMRTogcmV0dXJuICJJc29IZWFwIjsKLSAgICBjYXNlIFZNX01FTU9SWV9MQVlFUktJVDog
cmV0dXJuICJDb3JlQW5pbWF0aW9uIjsKLSAgICBjYXNlIFZNX01FTU9SWV9MSUJESVNQQVRDSDog
cmV0dXJuICJsaWJkaXNwYXRjaCI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DOiByZXR1cm4g
Im1hbGxvYyI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX0hVR0U6IHJldHVybiAibWFsbG9j
IChodWdlKSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX0xBUkdFOiByZXR1cm4gIm1hbGxv
YyAobGFyZ2UpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTUVESVVNOiByZXR1cm4gIm1h
bGxvYyAobWVkaXVtKSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX05BTk86IHJldHVybiAi
bWFsbG9jIChuYW5vKSI7Ci0gICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DX1NNQUxMOiByZXR1cm4g
Im1hbGxvYyAoc21hbGwpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfVElOWTogcmV0dXJu
ICJtYWxsb2MgKHRpbnkpIjsKLSAgICBjYXNlIFZNX01FTU9SWV9PU19BTExPQ19PTkNFOiByZXR1
cm4gIm9zX2FsbG9jX29uY2UiOwotICAgIGNhc2UgVk1fTUVNT1JZX1NRTElURTogcmV0dXJuICJT
UUxpdGUiOwotICAgIGNhc2UgVk1fTUVNT1JZX1NUQUNLOiByZXR1cm4gIlN0YWNrIjsKLSAgICBj
YXNlIFZNX01FTU9SWV9UQ01BTExPQzogcmV0dXJuICJibWFsbG9jIjsKLSAgICBjYXNlIFZNX01F
TU9SWV9VTlNIQVJFRF9QTUFQOiByZXR1cm4gInBtYXAgKHVuc2hhcmVkKSI7Ci0gICAgZGVmYXVs
dDogcmV0dXJuIG51bGxwdHI7CisgICAgY2FzZSBWTV9NRU1PUllfQ0dJTUFHRTogcmV0dXJuICJD
RyBpbWFnZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9DT1JFR1JBUEhJQ1NfREFUQTogcmV0dXJu
ICJDRyByYXN0ZXIgZGF0YSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9DT1JFU0VSVklDRVM6IHJl
dHVybiAiQ29yZVNlcnZpY2VzIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0RZTElCOiByZXR1cm4g
ImR5bGliIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0ZPVU5EQVRJT046IHJldHVybiAiRm91bmRh
dGlvbiJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9JTUFHRUlPOiByZXR1cm4gIkltYWdlSU8iX3M7
CisgICAgY2FzZSBWTV9NRU1PUllfSU9BQ0NFTEVSQVRPUjogcmV0dXJuICJJT0FjY2VsZXJhdG9y
Il9zOworICAgIGNhc2UgVk1fTUVNT1JZX0lPU1VSRkFDRTogcmV0dXJuICJJT1N1cmZhY2UiX3M7
CisgICAgY2FzZSBWTV9NRU1PUllfSU9LSVQ6IHJldHVybiAiSU9LaXQiX3M7CisgICAgY2FzZSBW
TV9NRU1PUllfSkFWQVNDUklQVF9DT1JFOiByZXR1cm4gIkdpZ2FjYWdlIl9zOworICAgIGNhc2Ug
Vk1fTUVNT1JZX0pBVkFTQ1JJUFRfSklUX0VYRUNVVEFCTEVfQUxMT0NBVE9SOiByZXR1cm4gIkpT
QyBKSVQiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfSkFWQVNDUklQVF9KSVRfUkVHSVNURVJfRklM
RTogcmV0dXJuICJJc29IZWFwIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX0xBWUVSS0lUOiByZXR1
cm4gIkNvcmVBbmltYXRpb24iX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTElCRElTUEFUQ0g6IHJl
dHVybiAibGliZGlzcGF0Y2giX3M7CisgICAgY2FzZSBWTV9NRU1PUllfTUFMTE9DOiByZXR1cm4g
Im1hbGxvYyJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfSFVHRTogcmV0dXJuICJtYWxs
b2MgKGh1Z2UpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19MQVJHRTogcmV0dXJuICJt
YWxsb2MgKGxhcmdlKSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTUVESVVNOiByZXR1
cm4gIm1hbGxvYyAobWVkaXVtKSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0NfTkFOTzog
cmV0dXJuICJtYWxsb2MgKG5hbm8pIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX01BTExPQ19TTUFM
TDogcmV0dXJuICJtYWxsb2MgKHNtYWxsKSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9NQUxMT0Nf
VElOWTogcmV0dXJuICJtYWxsb2MgKHRpbnkpIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX09TX0FM
TE9DX09OQ0U6IHJldHVybiAib3NfYWxsb2Nfb25jZSJfczsKKyAgICBjYXNlIFZNX01FTU9SWV9T
UUxJVEU6IHJldHVybiAiU1FMaXRlIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX1NUQUNLOiByZXR1
cm4gIlN0YWNrIl9zOworICAgIGNhc2UgVk1fTUVNT1JZX1RDTUFMTE9DOiByZXR1cm4gImJtYWxs
b2MiX3M7CisgICAgY2FzZSBWTV9NRU1PUllfVU5TSEFSRURfUE1BUDogcmV0dXJuICJwbWFwICh1
bnNoYXJlZCkiX3M7CisgICAgZGVmYXVsdDogcmV0dXJuIEFTQ0lJTGl0ZXJhbDo6bnVsbCgpOwog
ICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaAppbmRleCBjNzZjZDUyMzY3NjExYzk0
MmQzNDJiZjA5MWIxNjJhMGE2Nzc0NGUwLi44ZDgwZjc4Nzc4M2Q0M2M1NjJmOGUwY2QzZTM2NzVi
OTc2YmE4MjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaAor
KysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaApAQCAtNDMxLDcgKzQzMSw3IEBA
IHB1YmxpYzoKICAgICBzaXplX3QgZmluZChjaGFyIGNoYXJhY3RlciwgdW5zaWduZWQgc3RhcnQg
PSAwKTsKICAgICBzaXplX3QgZmluZChVQ2hhciBjaGFyYWN0ZXIsIHVuc2lnbmVkIHN0YXJ0ID0g
MCk7CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5kKENvZGVVbml0TWF0Y2hGdW5j
dGlvbiwgdW5zaWduZWQgaW5kZXggPSAwKTsKLSAgICBzaXplX3QgZmluZChjb25zdCBMQ2hhcios
IHVuc2lnbmVkIGluZGV4ID0gMCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVfdCBmaW5k
KGNvbnN0IExDaGFyKiwgdW5zaWduZWQgaW5kZXggPSAwKTsKICAgICBBTFdBWVNfSU5MSU5FIHNp
emVfdCBmaW5kKGNvbnN0IGNoYXIqIHN0cmluZywgdW5zaWduZWQgaW5kZXggPSAwKSB7IHJldHVy
biBmaW5kKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgTENoYXIqPihzdHJpbmcpLCBpbmRleCk7IH0K
ICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc2l6ZV90IGZpbmQoU3RyaW5nSW1wbCopOwogICAgIFdU
Rl9FWFBPUlRfUFJJVkFURSBzaXplX3QgZmluZChTdHJpbmdJbXBsKiwgdW5zaWduZWQgaW5kZXgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3BwIGIvU291cmNl
L1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCmluZGV4IDNhOTFhNjc3ZDVjMDM4ZTAzYjdjNWVi
MzJmMzczM2JlZmMwOGNhNTUuLmYzNDU5MzRiNzNjYzhkNDUyMDVlM2E0NmFjNjE5MjBhOWEzOTk5
YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAorKysgYi9T
b3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKQEAgLTgwLDcgKzgwLDcgQEAgU3RyaW5n
OjpTdHJpbmcoY29uc3QgY2hhciogbnVsbFRlcm1pbmF0ZWRTdHJpbmcpCiB9CiAKIFN0cmluZzo6
U3RyaW5nKEFTQ0lJTGl0ZXJhbCBjaGFyYWN0ZXJzKQotICAgIDogbV9pbXBsKFN0cmluZ0ltcGw6
OmNyZWF0ZUZyb21MaXRlcmFsKGNoYXJhY3RlcnMpKQorICAgIDogbV9pbXBsKGNoYXJhY3RlcnMu
aXNOdWxsKCkgPyBudWxscHRyIDogUmVmUHRyPFN0cmluZ0ltcGw+IHsgU3RyaW5nSW1wbDo6Y3Jl
YXRlRnJvbUxpdGVyYWwoY2hhcmFjdGVycykgfSkKIHsKIH0KIApAQCAtNDY1LDMxICs0NjUsMzEg
QEAgU3RyaW5nIFN0cmluZzo6bnVtYmVyKHVuc2lnbmVkIGxvbmcgbG9uZyBudW1iZXIpCiBTdHJp
bmcgU3RyaW5nOjpudW1iZXJUb1N0cmluZ0ZpeGVkUHJlY2lzaW9uKGZsb2F0IG51bWJlciwgdW5z
aWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGluZ1pl
cm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7
Ci0gICAgcmV0dXJuIG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVjaXNp
b24sIGJ1ZmZlciwgdHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFp
bGluZ1plcm9zKTsKKyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0
cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1Bv
bGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51
bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24oZG91YmxlIG51bWJlciwgdW5zaWduZWQgcHJlY2lz
aW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSB0cmFpbGluZ1plcm9zVHJ1bmNhdGlu
Z1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJu
IG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwg
dHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPT0gVHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsK
KyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIs
IHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVu
Y2F0ZVRyYWlsaW5nWmVyb3MpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlcihmbG9hdCBu
dW1iZXIpCiB7CiAgICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwotICAgIHJldHVybiBu
dW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1ZmZlcik7CisgICAgcmV0dXJuIFN0cmluZyB7IG51bWJl
clRvU3RyaW5nKG51bWJlciwgYnVmZmVyKSB9OwogfQogCiBTdHJpbmcgU3RyaW5nOjpudW1iZXIo
ZG91YmxlIG51bWJlcikKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7Ci0gICAg
cmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwgYnVmZmVyKTsKKyAgICByZXR1cm4gU3RyaW5n
IHsgbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpIH07CiB9CiAKIFN0cmluZyBTdHJpbmc6
Om51bWJlclRvU3RyaW5nRml4ZWRXaWR0aChkb3VibGUgbnVtYmVyLCB1bnNpZ25lZCBkZWNpbWFs
UGxhY2VzKQogewogICAgIE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4g
bnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwgZGVjaW1hbFBsYWNlcywgYnVmZmVyKTsK
KyAgICByZXR1cm4gU3RyaW5nIHsgbnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nKG51bWJlciwgZGVj
aW1hbFBsYWNlcywgYnVmZmVyKSB9OwogfQogCiBkb3VibGUgU3RyaW5nOjp0b0RvdWJsZShib29s
KiBvaykgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCmluZGV4IDUxMWI5YzE2NGExYTU4YzEx
ZDRjZmQ1MzIxZTMyZjUyN2I0YzllZDYuLjQxZWQzNWNjYTZlOWY3MWYyNmVkZGJkMzVhNzhhZTZh
ZTY0NzgwODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKKysr
IGIvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaApAQCAtMTcxLDYgKzE3MSw3IEBAIHB1
YmxpYzoKIAogICAgIHNpemVfdCBmaW5kKENvZGVVbml0TWF0Y2hGdW5jdGlvbiBtYXRjaEZ1bmN0
aW9uLCB1bnNpZ25lZCBzdGFydCA9IDApIGNvbnN0IHsgcmV0dXJuIG1faW1wbCA/IG1faW1wbC0+
ZmluZChtYXRjaEZ1bmN0aW9uLCBzdGFydCkgOiBub3RGb3VuZDsgfQogICAgIHNpemVfdCBmaW5k
KGNvbnN0IExDaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4g
bV9pbXBsID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91bmQ7IH0KKyAgICBz
aXplX3QgZmluZChjb25zdCBjaGFyKiBzdHJpbmcsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3Qg
eyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5maW5kKHN0cmluZywgc3RhcnQpIDogbm90Rm91bmQ7
IH0KIAogICAgIC8vIEZpbmQgdGhlIGxhc3QgaW5zdGFuY2Ugb2YgYSBzaW5nbGUgY2hhcmFjdGVy
IG9yIHN0cmluZy4KICAgICBzaXplX3QgcmV2ZXJzZUZpbmQoVUNoYXIgY2hhcmFjdGVyLCB1bnNp
Z25lZCBzdGFydCA9IE1heExlbmd0aCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5y
ZXZlcnNlRmluZChjaGFyYWN0ZXIsIHN0YXJ0KSA6IG5vdEZvdW5kOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvV29ya2xldEdsb2JhbFNjb3BlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwCmluZGV4IGFjMDUwNWQ1NDk2NDIzZmM1ZmRlZTY2MzBlYjdmOTUzODAyMTMzNTguLmZm
OTM3MTBmMjA5NzQ2YmFhZWY5YTY2YzU3Y2QwMjRjMDk1M2NiMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9Xb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwCkBAIC0xNDYsNyArMTQ2LDcgQEAgUmVmUHRyPEF1ZGlvV29ya2xldFByb2Nlc3Nvcj4g
QXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGU6OmNyZWF0ZVByb2Nlc3Nvcihjb25zdCBTdHIKICAgICBh
cmdzLmFwcGVuZChhcmcpOwogICAgIEFTU0VSVCghYXJncy5oYXNPdmVyZmxvd2VkKCkpOwogCi0g
ICAgYXV0byogb2JqZWN0ID0gSlNDOjpjb25zdHJ1Y3QoZ2xvYmFsT2JqZWN0LCBqc0NvbnN0cnVj
dG9yLCBhcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBBdWRpb1dvcmtsZXRQcm9jZXNzb3IiKTsK
KyAgICBhdXRvKiBvYmplY3QgPSBKU0M6OmNvbnN0cnVjdChnbG9iYWxPYmplY3QsIGpzQ29uc3Ry
dWN0b3IsIGFyZ3MsICJGYWlsZWQgdG8gY29uc3RydWN0IEF1ZGlvV29ya2xldFByb2Nlc3NvciJf
cyk7CiAgICAgQVNTRVJUKCEhc2NvcGUuZXhjZXB0aW9uKCkgPT0gIW9iamVjdCk7CiAgICAgUkVU
VVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oCmluZGV4IGY1NTNjMjVk
ZTc5ZjczMWMwNzlmNWFlMGZlMWUxOGEwYzcwYzVkNjUuLjI0YTQxYWI4N2ZmNTkxOTFiOGVhYmU4
ZmNlMThlZTY0YmIyOTBmZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01CdWlsdGluQ29uc3RydWN0b3IuaApAQCAtOTgsNyArOTgsNyBAQCB0ZW1wbGF0ZTx0
eXBlbmFtZSBKU0NsYXNzPiBpbmxpbmUgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
X0FUVFJJQlVURVMgSgogICAgICAgICByZXR1cm4geyB9OwogCiAgICAgYXV0byoganNPYmplY3Qg
PSBKU0NsYXNzOjpjcmVhdGUoc3RydWN0dXJlLCBjYXN0ZWRUaGlzLT5nbG9iYWxPYmplY3QoKSk7
Ci0gICAgSlNDOjpjYWxsKGxleGljYWxHbG9iYWxPYmplY3QsIGNhc3RlZFRoaXMtPmluaXRpYWxp
emVGdW5jdGlvbigpLCBqc09iamVjdCwgSlNDOjpBcmdMaXN0KGNhbGxGcmFtZSksICJUaGlzIGVy
cm9yIHNob3VsZCBuZXZlciBvY2N1cjogaW5pdGlhbGl6ZSBmdW5jdGlvbiBpcyBndWFyYW50ZWVk
IHRvIGJlIGNhbGxhYmxlLiIpOworICAgIEpTQzo6Y2FsbChsZXhpY2FsR2xvYmFsT2JqZWN0LCBj
YXN0ZWRUaGlzLT5pbml0aWFsaXplRnVuY3Rpb24oKSwganNPYmplY3QsIEpTQzo6QXJnTGlzdChj
YWxsRnJhbWUpLCAiVGhpcyBlcnJvciBzaG91bGQgbmV2ZXIgb2NjdXI6IGluaXRpYWxpemUgZnVu
Y3Rpb24gaXMgZ3VhcmFudGVlZCB0byBiZSBjYWxsYWJsZS4iX3MpOwogICAgIHJldHVybiBKU0M6
OkpTVmFsdWU6OmVuY29kZShqc09iamVjdCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAppbmRleCBiMjYyNmZlYjRhMDUzNzM4ZWE3
ZGVkMTgyNzc4NjVjNGY4MTM0YjU4Li43MWFiMTJiMTUwZjBlNzJmZGE5NTdjOTk0MWEwNDA3YmI0
YjRlY2JkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2Jh
bE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxP
YmplY3QuY3BwCkBAIC04Miw3ICs4Miw3IEBAIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oZ2V0
SW50ZXJuYWxXcml0YWJsZVN0cmVhbSk7CiBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKHdoZW5T
aWduYWxBYm9ydGVkKTsKIEpTQ19ERUNMQVJFX0hPU1RfRlVOQ1RJT04oaXNBYm9ydFNpZ25hbCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xv
YmFsT2JqZWN0IiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8g
SlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkRPTUdsb2JhbE9iamVjdCJfcywgJkpTR2xv
YmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNET01HbG9iYWxPYmplY3QpIH07CiAKIEpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUdsb2JhbE9i
amVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV3JhcHBlcldvcmxkPiYm
IHdvcmxkLCBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSogZ2xvYmFsT2JqZWN0TWV0aG9k
VGFibGUpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0dXJlLCBnbG9iYWxPYmplY3RN
ZXRob2RUYWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
V2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jh
c2UuY3BwCmluZGV4IGVkMGUyNzRhNzg0NTY4MGE4OTUzOTBkNjBkMTJjYWIyNjQ3YWY1ZGUuLjU3
ZDBiNjQ5OTg1ZmUwNmMyNzQ4NWJhN2JmNmJmNzgxZjI0Mjg3ODcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtNjgsNyArNjgsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFsT2Jq
ZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01X
aW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZvID0g
eyAiV2luZG93Il9zLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRvd0Jhc2UpIH07CiAKIGNvbnN0IEdsb2Jh
bE9iamVjdE1ldGhvZFRhYmxlIEpTRE9NV2luZG93QmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RU
YWJsZSA9IHsKICAgICAmc3VwcG9ydHNSaWNoU291cmNlSW5mbywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1Byb3BlcnRpZXMuY3BwCmluZGV4IDUxMjVh
YzhjOTBkYWQzMjNkMDY2MDJlYTEwZDdlZjBkM2Q1Zjc5ZDguLjI4N2JmYjA2NTBlZDUwMjBjYzYz
YmY4ZDJlNjc4OWE3ZGVhMjY0OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93UHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0RPTVdpbmRvd1Byb3BlcnRpZXM6OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2lu
ZG93UHJvcGVydGllcykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd1Byb3BlcnRpZXM6
OnNfaW5mbyA9IHsgIldpbmRvd1Byb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dQcm9wZXJ0aWVzKSB9Owog
CiAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93aW5kb3ctb2JqZWN0
Lmh0bWwjZG9tLXdpbmRvdy1uYW1lZGl0ZW0KIHN0YXRpYyBib29sIGpzRE9NV2luZG93UHJvcGVy
dGllc0dldE93blByb3BlcnR5U2xvdE5hbWVkSXRlbUdldHRlcihKU0RPTVdpbmRvd1Byb3BlcnRp
ZXMqIHRoaXNPYmplY3QsIERPTVdpbmRvdyYgd2luZG93LCBKU0dsb2JhbE9iamVjdCogbGV4aWNh
bEdsb2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBz
bG90KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwCmluZGV4IGI1MDE5MDU5YzEz
NWVlNzZhYmVhMzNhOTUzZjI1MDMzYTE1N2VkODguLjZlYmFkYjUxOGNkZDJhOWYyZjRkY2ZiNWE3
YjIwYTE0NjAyMmMyNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHAKQEAg
LTQzLDExICs0MywxMSBAQCBzdGF0aWMgSlNDX0RFQ0xBUkVfSE9TVF9GVU5DVElPTihqc0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcl9vblByb21pc2VSZQogSlNDX0FOTk9UQVRFX0hP
U1RfRlVOQ1RJT04oSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5cGVO
ZXh0LCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6bmV4dCk7
CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIEpTRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRv
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpD
bGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3I6OnNfaW5mbyA9IHsg
IkRpcmVjdG9yeSBIYW5kbGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJh
dG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
SXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJEaXJlY3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmls
ZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yQmFzZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJ
bmZvIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJEaXJl
Y3RvcnkgSGFuZGxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
KSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRs
ZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JQcm90b3R5cGUpIH07
Citjb25zdCBKU0M6OkNsYXNzSW5mbyBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRv
clByb3RvdHlwZTo6c19pbmZvID0geyAiRGlyZWN0b3J5IEhhbmRsZSBJdGVyYXRvciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogR0NDbGllbnQ6Oklz
b1N1YnNwYWNlKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjo6c3Vic3BhY2VG
b3JJbXBsKFZNJiB2bSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCmluZGV4IDQxNGY2ZDNk
NTM0NmQ2YzI4NGVlMmM4YTc4NTQ0YzYxYzgwYTM5NzAuLmEwN2E3NTRiODE2YmM5Mzk5YjliNDZm
ZWU0YjQzMGY1Mzc3ZmQ0MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcApAQCAtMzIsNyAr
MzIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsg
IkpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2Jq
ZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6
c19pbmZvID0geyAiSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSURCU2VyaWFsaXph
dGlvbkdsb2JhbE9iamVjdCkgfTsKIAogaW5saW5lIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9i
amVjdDo6SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIFJlZjxET01XcmFwcGVyV29ybGQ+JiYgaW1wbCkKICAgICA6IEJhc2Uodm0sIHN0
cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTUmVtb3RlRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwCmluZGV4IGE0ZDcxNWY3MDhjNjBjMDI4NjU3
OWNmMTU5MDM1NzcwMGI3ZDU0YWQuLjNlMTEwNDBkOWUxYWVmYzJiMzVmNWU1ZGQ5NzcxYzgxZDhh
MjA0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUmVtb3RlRE9N
V2luZG93QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNSZW1vdGVE
T01XaW5kb3dCYXNlLmNwcApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURPTVdpbmRv
d0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUmVtb3RlRE9NV2luZG93QmFz
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsg
IldpbmRvdyJfcywgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNSZW1vdGVET01XaW5kb3dCYXNlKSB9OwogCiBjb25zdCBH
bG9iYWxPYmplY3RNZXRob2RUYWJsZSBKU1JlbW90ZURPTVdpbmRvd0Jhc2U6OnNfZ2xvYmFsT2Jq
ZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgbnVsbHB0ciwgLy8gc2hlbGxTdXBwb3J0c1JpY2hTb3Vy
Y2VJbmZvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCmluZGV4IDgzZjk0ZTMxMDhmOGU0NThkNmQyNDdh
MzlmMDJiOTU1YTNhNjFhMTEuLjMzMDRiN2I4ODhlOWNhM2I1ZTRmZTNlMzdmODNhYTllY2IyYjQ0
N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hhZG93UmVhbG1H
bG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2Nv
cGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVCYXNlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIlNoYWRvd1Jl
YWxtR2xvYmFsU2NvcGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZUJhc2Up
IH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1ldGhvZFRhYmxlIEpTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7CiAgICAgJnN1cHBvcnRzUmlj
aFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dp
bmRvd1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHku
Y3BwCmluZGV4IDQ2OTlkOGVkYjUxZjIzZDE4OTM3ZGI4N2JmYTZiODhmYWIxNDgwYTYuLjI3MjFi
Nzc2YWU2N2FiNjZmZDM1YmVjYzQxZjE3YzE0N2YyYTM1ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTV2luZG93UHJveHkuY3BwCkBAIC01MCw3ICs1MCw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
V2luZG93UHJveHk6OnNfaW5mbyA9IHsgIkpTV2luZG93UHJveHkiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2luZG93UHJveHkpIH07Citj
b25zdCBDbGFzc0luZm8gSlNXaW5kb3dQcm94eTo6c19pbmZvID0geyAiSlNXaW5kb3dQcm94eSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1dpbmRvd1Byb3h5KSB9OwogCiBpbmxpbmUgSlNXaW5kb3dQcm94eTo6SlNXaW5kb3dQcm94eShW
TSYgdm0sIFN0cnVjdHVyZSYgc3RydWN0dXJlLCBET01XcmFwcGVyV29ybGQmIHdvcmxkKQogICAg
IDogQmFzZSh2bSwgJnN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCA5NmNkZjZlMDA3YjQyMDYx
NWY0YTUzNjRhN2I5YThjZGZjNjIzMDQwLi5iNDFlZDNlODQyNDAzY2Y1YTJkNTE2ZjYzMDFhMDEw
Zjc2M2Y1ZTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtl
ckdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNX
b3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwCkBAIC00Myw3ICs0Myw3IEBACiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0luZm8gSlNXb3JrZXJH
bG9iYWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIiwgJkpTRE9NR2xv
YmFsT2JqZWN0OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNXb3JrZXJHbG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrZXJHbG9i
YWxTY29wZUJhc2U6OnNfaW5mbyA9IHsgIldvcmtlckdsb2JhbFNjb3BlIl9zLCAmSlNET01HbG9i
YWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7
CiAgICAgJnN1cHBvcnRzUmljaFNvdXJjZUluZm8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlLmNwcAppbmRleCAwOThiZjYz
YjYwY2QzYzY2ZDg2NjQ1ZDVmNTU4MmIwNjM1ODZmYTEwLi5iNjRjMmFhZWFkYTgxNDE3MjliNjkz
YWYxMWE1NDFjNzc3ZjM0NTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwogCi1jb25zdCBDbGFzc0lu
Zm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2Nv
cGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrbGV0R2xvYmFsU2Nv
cGUiX3MsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSkgfTsKIAogY29uc3QgR2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlOjpzX2dsb2JhbE9i
amVjdE1ldGhvZFRhYmxlID0gewogICAgICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0g
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRl
eCA0NmEwYTVhZDFlMTVhYTZiM2QwMTY1MGFiZWY1ZDAxMTNhZjRkMWRhLi4wNzNlMTU4ZTMxYTUz
MmMyYjMzODU3ODdhOTc5MmM0MzIzMDY0YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtNDU1NCw3ICs0NTU0LDcgQEAg
c3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgJG9iamVjdC0+R2VuZXJhdGVIYXNo
VGFibGUoJGNsYXNzTmFtZSwgJGhhc2hOYW1lLCAkaGFzaFNpemUsIFxAaGFzaEtleXMsIFxAaGFz
aFNwZWNpYWxzLCBcQGhhc2hWYWx1ZTEsIFxAaGFzaFZhbHVlMiwgXCVjb25kaXRpb25hbHMsIFwl
cmVhZFdyaXRlQ29uZGl0aW9uYWxzLCAkanVzdEdlbmVyYXRlVmFsdWVBcnJheSk7CiAKICAgICAg
ICAgbXkgJHByb3RvdHlwZUhhc2hUYWJsZSA9ICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5ID8gIm51
bGxwdHIiIDogIiYke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSI7Ci0gICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZv
ID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sICR7cHJvdG90
eXBlSGFzaFRhYmxlfSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Q
cm90b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNvbnN0IENs
YXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRl
cmZhY2VOYW1lfVwiX3MsICZCYXNlOjpzX2luZm8sICR7cHJvdG90eXBlSGFzaFRhYmxlfSwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5cbiIp
OwogCiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAidm9pZCAke2NsYXNzTmFtZX1Qcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSlcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dCwgIntcbiIpOwpAQCAtNDY0OCw3ICs0NjQ4LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b24KICAgICB9CiAKICAgICAjIC0gSW5pdGlhbGl6ZSBzdGF0aWMgQ2xhc3NJbmZvIG9iamVjdAot
ICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUiIC4gIjo6
c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNlOjpzX2luZm8sICIp
OworICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFzc05hbWUiIC4g
Ijo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCJfcywgJkJhc2U6OnNfaW5m
bywgIik7CiAKICAgICBpZiAoJG51bUluc3RhbmNlUHJvcGVydGllcyA+IDApIHsKICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICImJHtjbGFzc05hbWV9VGFibGUiKTsKQEAgLTY4MzAsMTEgKzY4
MzAsMTEgQEAgdXNpbmcgJHtpdGVyYXRvclByb3RvdHlwZU5hbWV9ID0gSlNET01JdGVyYXRvclBy
b3RvdHlwZTwke2NsYXNzTmFtZX0sICR7aXRlcmF0b3IKIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNU
SU9OKCR7aXRlcmF0b3JQcm90b3R5cGVOYW1lfU5leHQsICR7aXRlcmF0b3JQcm90b3R5cGVOYW1l
fTo6bmV4dCk7CiAKIHRlbXBsYXRlPD4KLWNvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JO
YW1lfUJhc2U6OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0
ZXJhdG9yTmFtZX1CYXNlKSB9OwotY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9
OjpzX2luZm8gPSB7ICIke3Zpc2libGVJbnRlcmZhY2VOYW1lfSBJdGVyYXRvciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5h
bWV9KSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gJHtpdGVyYXRvck5hbWV9QmFzZTo6c19pbmZv
ID0geyAiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9QmFz
ZSkgfTsKK2NvbnN0IEpTQzo6Q2xhc3NJbmZvICR7aXRlcmF0b3JOYW1lfTo6c19pbmZvID0geyAi
JHt2aXNpYmxlSW50ZXJmYWNlTmFtZX0gSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtpdGVyYXRvck5hbWV9KSB9OwogCiB0
ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90eXBlTmFtZX06
OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2l0ZXJhdG9yUHJv
dG90eXBlTmFtZX0pIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyAke2l0ZXJhdG9yUHJvdG90eXBl
TmFtZX06OnNfaW5mbyA9IHsgIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9IEl0ZXJhdG9yIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7aXRl
cmF0b3JQcm90b3R5cGVOYW1lfSkgfTsKIAogRU5ECiAKQEAgLTc4MzEsNyArNzgzMSw3IEBAIHN1
YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0aG9kcwogICAgICAgICAkbGVhc3RDb25zdHJ1
Y3Rvckxlbmd0aCA9IDA7CiAgICAgfQogCi0gICAgcHVzaChAJG91dHB1dEFycmF5LCAidGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OnNfaW5mbyA9IHsg
XCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y29uc3RydWN0b3JDbGFzc05hbWV9KSB9O1xuXG4i
KTsKKyAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyAk
e2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5h
bWV9XCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRSgke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfSkgfTtcblxuIik7CiAKICAgICAjIElmIHRoZSBp
bnRlcmZhY2UgaGFzIGEgcGFyZW50IGludGVyZmFjZSB3aGljaCBkb2VzIG5vdCBoYXZlIFtMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdF0sIHRoZW4gdXNlIGl0cyBpbnRlcmZhY2Ugb2JqZWN0IGFzIHBy
b3RvdHlwZSwKICAgICAjIG90aGVyd2lzZSB1c2UgRnVuY3Rpb25Qcm90b3R5cGU6IGh0dHA6Ly9o
ZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jaW50ZXJmYWNlLW9iamVjdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5jcHAKaW5k
ZXggNzc4N2UxZGYwN2Q4YjUzNTVhNzg4MjU4Yzg4OGNmNTA1OTIzODU4Mi4uMGZlYTAyNTk1NmIw
MTU5OWU3YjU2MDM4NTQzODYxMzZhMmEwMTExMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuY3BwCkBAIC0xNDcsNyAr
MTQ3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTRE9NV2luZG93VGFibGVWYWx1
ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTRE9NV2luZG93VGFibGUgPSB7
IDEyLCAzMSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dUYWJsZVZhbHVl
cywgSlNET01XaW5kb3dUYWJsZUluZGV4IH07Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U0RPTVdpbmRvd0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01XaW5kb3ciLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRv
d0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTRE9NV2luZG93RE9NQ29uc3RydWN0
b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3Nyw3ICsxNzcsNyBAQCBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlVmFsdWUgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAK
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZSA9IHsgMSwg
MSwgdHJ1ZSwgSlNET01XaW5kb3c6OmluZm8oKSwgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZVZh
bHVlcywgSlNET01XaW5kb3dQcm90b3R5cGVUYWJsZUluZGV4IH07Ci1jb25zdCBDbGFzc0luZm8g
SlNET01XaW5kb3dQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2lu
Zm8sICZKU0RPTVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTRE9NV2luZG93UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sICZKU0RP
TVdpbmRvd1Byb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTRE9NV2luZG93UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xODYsNyArMTg2LDcgQEAgdm9pZCBKU0RPTVdpbmRvd1By
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3c6OnNf
aW5mbyA9IHsgIkRPTVdpbmRvdyIsICZCYXNlOjpzX2luZm8sICZKU0RPTVdpbmRvd1RhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93KSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTRE9NV2luZG93OjpzX2luZm8gPSB7ICJET01XaW5kb3ciX3MsICZCYXNlOjpzX2luZm8s
ICZKU0RPTVdpbmRvd1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2lu
ZG93KSB9OwogCiBKU0RPTVdpbmRvdzo6SlNET01XaW5kb3coVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgUmVmPERPTVdpbmRvdz4mJiBpbXBsLCBKU1dpbmRvd1Byb3h5KiBwcm94eSkKICAg
ICA6IEpTRXZlbnRUYXJnZXQodm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSwgcHJveHkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggMmRjYmE5
ZjY0MGZhMTAwODRlOGNiNWRhMGI4MDUzZjVkMWI4ODk5OS4uOTI4NjhkNTc3NzU2YWNjNzA0YmMy
MmU4MTcyMmZiYjJlMWUwYjg1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlLmNwcApAQCAtNzQsNyArNzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUgPSB7
IDIsIDMsIHRydWUsIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU6OmluZm8oKSwgSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRX
b3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9y
KSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBs
YXRlPD4gSlNWYWx1ZSBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNCw3ICsxMDQsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlVmFs
dWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU0RlZGljYXRlZFdvcmtlckds
b2JhbFNjb3BlUHJvdG90eXBlVGFibGUgPSB7IDEsIDEsIHRydWUsIEpTRGVkaWNhdGVkV29ya2Vy
R2xvYmFsU2NvcGU6OmluZm8oKSwgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlw
ZVRhYmxlVmFsdWVzLCBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGVJ
bmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgJkpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIkRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6
c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVQcm90
b3R5cGUpIH07CiAKIHZvaWQgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHZvaWQgSlNEZWRp
Y2F0ZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVkaWNh
dGVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNEZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNEZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZTo6c19pbmZvID0geyAiRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZC
YXNlOjpzX2luZm8sICZKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKIAog
SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTo6SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RGVkaWNhdGVkV29ya2VyR2xvYmFs
U2NvcGU+JiYgaW1wbCkKICAgICA6IEpTV29ya2VyR2xvYmFsU2NvcGUodm0sIHN0cnVjdHVyZSwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmNwcAppbmRleCBlNWZjMzVjOGFlOWMzMWIwZDE4
NzI2NmZmMTk3YjkzMDAwMzYyNzJiLi40NjlhMTIxZjI0OTVlNmI0MjhhZWVmNjIwODhhZDA1ZmU1
NGNhNzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNFeHBvc2VkU3Rhci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuY3BwCkBAIC05MSw3ICs5MSw3IEBAIFNUQVRJQ19BU1NF
UlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUsIEpTRXhwb3Nl
ZFN0YXJQcm90b3R5CiAKIHVzaW5nIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvciA9IEpTRE9N
Q29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTRXhwb3NlZFN0YXI+OwogCi10ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IkV4cG9zZWRTdGFyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU0V4cG9zZWRTdGFyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4
cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTRXhwb3NlZFN0YXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRT
dGFyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAib3BlcmF0aW9uSnVzdEZvcldvcmtl
ckNvbnRleHRzIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2
ZUZ1bmN0aW9uPihqc0V4cG9zZWRTdGFyUHJvdG90eXBlRnVuY3Rpb25fb3BlcmF0aW9uSnVzdEZv
cldvcmtlckNvbnRleHRzKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJ
bmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9z
ZWRTdGFyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFN0YXJQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIkV4cG9zZWRTdGFyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRXhwb3NlZFN0YXJQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTQzLDcgKzE0Myw3IEBAIHZvaWQgSlNFeHBvc2VkU3RhclByb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6c19pbmZvID0geyAiRXhwb3Nl
ZFN0YXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTRXhwb3NlZFN0YXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNFeHBvc2VkU3Rhcjo6c19p
bmZvID0geyAiRXhwb3NlZFN0YXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkU3RhcikgfTsKIAogSlNFeHBvc2VkU3Rhcjo6
SlNFeHBvc2VkU3RhcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPEV4cG9zZWRTdGFyPiYmIGltcGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5k
V2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4
cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5jcHAKaW5kZXggZWI4N2Q2Yzg3ZmI1ZTA4ZDMwYTg4N2U3
NzMzNTFkYWU2ZjU4OGE3NC4uZmYxMTQ4NWM1ZTY4ZGM1N2JhYmYyYWVhNGM2NTY1NTkwNDMxN2Fi
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuY3BwCkBAIC0xNTEs
NyArMTUxLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJ
QlVURVMgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dET00KIH0KIEpTQ19BTk5PVEFURV9IT1NU
X0ZVTkNUSU9OKEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3JDb25zdHJ1
Y3QsIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNFeHBv
c2VkVG9Xb3JrZXJBbmRXaW5kb3dET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93RE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRv
d0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNFeHBvc2VkVG9Xb3Jr
ZXJBbmRXaW5kb3dET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTc2LDcg
KzE3Niw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU0V4cG9zZWRUb1dvcmtlckFu
ZFdpbmRvd1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRvU29tZXRoaW5nIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc0V4
cG9zZWRUb1dvcmtlckFuZFdpbmRvd1Byb3RvdHlwZUZ1bmN0aW9uX2RvU29tZXRoaW5nKSwgKGlu
dHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3ci
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93UHJvdG90eXBlOjpzX2luZm8gPSB7ICJFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3ciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3dQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTE4NSw3ICsxODUsNyBAQCB2b2lkIEpTRXhwb3NlZFRvV29ya2VyQW5k
V2luZG93UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU0V4cG9z
ZWRUb1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0V4cG9zZWRU
b1dvcmtlckFuZFdpbmRvdzo6c19pbmZvID0geyAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93Il9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93KSB9OwogCiBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRv
dzo6SlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3coU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRX
b3JrbGV0R2xvYmFsU2NvcGUuY3BwCmluZGV4IDdhNTZhNzliNmJhMWZmOWU1NmI0YTI3MWMyMjE4
ZDRkNGY2ODI2YTUuLjM1YjYzOGVmNjRkNDE0M2JhNzI0OTFmOTY1NjAzMDAwMGUxM2NkNDEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50
V29ya2xldEdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTczLDcgKzczLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVU
YWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWludFdvcmts
ZXRHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2JhbFNj
b3BlOjppbmZvKCksIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
UGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+
IEpTVmFsdWUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5
cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9i
YWxPYmplY3QpCiB7CkBAIC0xMDMsNyArMTAzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZh
bHVlIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07
CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlOjppbmZv
KCksIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5m
byBKU1BhaW50V29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWludFdv
cmtsZXRHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1BhaW50V29ya2xldEdsb2JhbFNj
b3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQYWludFdv
cmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1BhaW50V29y
a2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJQYWludFdvcmtsZXRHbG9iYWxT
Y29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5
cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEdsb2Jh
bFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2b2lk
IEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlBhaW50
V29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1BhaW50V29ya2xldEds
b2JhbFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGU6
OnNfaW5mbyA9IHsgIlBhaW50V29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAm
SlNQYWludFdvcmtsZXRHbG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUpIH07CiAKIEpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGU6OkpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgUmVmPFBhaW50V29ya2xldEdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmts
ZXRHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckds
b2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggOTk4NjVkMWUwYmZiYjQ1OWVhM2Qy
YjJmMTcwZTA0ODBmMGExZTgzNC4uZmVhZjE3OTFhOGI1ZTBjYzJkNzY3ZmMxMTJkZmZhNWU3MDFl
NmMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBAIC03
Myw3ICs3Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBK
U1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlID0geyAyLCAzLCB0cnVlLCBKU1NlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxl
VmFsdWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5kZXggfTsKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTAzLDcgKzEwMyw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3Rv
dHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVBy
b3RvdHlwZVRhYmxlVmFsdWVzLCBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRh
YmxlSW5kZXggfTsKLWNvbnN0IENsYXNzSW5mbyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZVBy
b3RvdHlwZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNf
aW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywg
JkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTExMiw3ICsxMTIsNyBAQCB2b2lkIEpTU2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklO
R19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZTo6c19pbmZvID0geyAiU2VydmljZVdvcmtlckdsb2JhbFNjb3Bl
IiwgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIlNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUpIH07CiAKIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpKU1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU1dvcmtlckdsb2JhbFNj
b3BlKHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxt
R2xvYmFsU2NvcGUuY3BwCmluZGV4IDg5MWEyMzJkYTllN2ViZGI5ZjMzMWNlOTIxN2RkZDBiYzM3
NTkzYWEuLmI1OTk0MjU3ZTI4MGQ0ZjQwZDI5NzAzMmE1YTlkYTljMGI4MjE5MWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxt
R2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuY3BwCkBAIC03NSw3ICs3NSw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZhbHVl
c1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNTaGFkb3dSZWFsbUdsb2JhbFNj
b3BlVGFibGUgPSB7IDIsIDMsIHRydWUsIEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZTo6aW5mbygp
LCBKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNTaGFkb3dSZWFsbUdsb2Jh
bFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xv
YmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTU2hhZG93UmVhbG1HbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTaGFkb3dSZWFsbUdsb2Jh
bFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1NoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtOTIs
NyArOTIsNyBAQCB0ZW1wbGF0ZTw+IHZvaWQgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlRE9NQ29u
c3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZNJgogICAgIHB1dERpcmVjdCh2bSwgdm0u
cHJvcGVydHlOYW1lcy0+cHJvdG90eXBlLCBnbG9iYWxPYmplY3QuZ2V0UHJvdG90eXBlRGlyZWN0
KHZtKSwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnREZWxldGUpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlOjpzX2luZm8gPSB7
ICJTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTU2hhZG93UmVhbG1H
bG9iYWxTY29wZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhZG93UmVh
bG1HbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYWRvd1JlYWxtR2xvYmFsU2Nv
cGU6OnNfaW5mbyA9IHsgIlNoYWRvd1JlYWxtR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8s
ICZKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUpIH07CiAKIEpTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZTo6SlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFJlZjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBw
ZXI8U2hhZG93UmVhbG1HbG9iYWxTY29wZT4odm0sIHN0cnVjdHVyZSwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCBhMDI0OTQwNjJk
ZDdkZDYyMzJkMWViYTQwMjU2YjMwZGEzNTBjYjBjLi43YTM1ZTQ5YjQ0MDJmODQzN2Q2ZmNiYzZi
YTBhYjVkMTA2ZjkzYmFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUu
Y3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3Bl
VGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZUluZGV4IH07Ci10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlNoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA0LDcgKzEwNCw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGVWYWx1ZXNbXSA9CiB9OwogCiBzdGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTU2hhcmVkV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSA9IHsgMSwgMSwgdHJ1ZSwgSlNTaGFyZWRXb3Jr
ZXJHbG9iYWxTY29wZTo6aW5mbygpLCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBl
VGFibGVWYWx1ZXMsIEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZUluZGV4
IH07Ci1jb25zdCBDbGFzc0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6
c19pbmZvID0geyAiU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAmSlNT
aGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAi
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGUiX3MsICZCYXNlOjpzX2luZm8sICZKU1NoYXJlZFdvcmtl
ckdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1NoYXJlZFdv
cmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0x
MTMsNyArMTEzLDcgQEAgdm9pZCBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3Bl
OjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZK
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlOjpzX2luZm8gPSB7ICJTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSJf
cywgJkJhc2U6OnNfaW5mbywgJkpTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGVUYWJsZSwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKSB9OwogCiBK
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlOjpKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlKFZNJiB2
bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFJlZjxTaGFyZWRXb3JrZXJHbG9iYWxTY29wZT4mJiBp
bXBsKQogICAgIDogSlNXb3JrZXJHbG9iYWxTY29wZSh2bSwgc3RydWN0dXJlLCBXVEZNb3ZlKGlt
cGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENFUmVhY3Rpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5jcHAKaW5kZXggMWI4ZjYxYTZmYTBiNWYwOTg4YjQx
ZDU4YjAxYTUyYzc2ODM0YjFlMi4uZDY0OWYxZDMzMDJmMmE4NGYzODQwYTI2Mjg0NWI3ZjVkN2Ey
MWExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENFUmVhY3Rpb25zLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuY3BwCkBAIC0xMTEsNyArMTExLDcgQEAgU1RB
VElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNQcm90b3R5
cGUsIEpTVGVzdENFUmVhY3Rpb24KIAogdXNpbmcgSlNUZXN0Q0VSZWFjdGlvbnNET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25z
PjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnNET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc0RPTUNv
bnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlv
bnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVh
Y3Rpb25zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RDRVJl
YWN0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNDMsNyArMTQz
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibWV0aG9kV2l0aENFUmVhY3Rpb25zTm90TmVlZGVk
Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9u
KSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9u
Pihqc1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZUZ1bmN0aW9uX21ldGhvZFdpdGhDRVJlYWN0aW9u
c05vdE5lZWRlZCksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RDRVJlYWN0aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RDRVJlYWN0aW9uc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0
aW9uc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdENFUmVhY3Rpb25zIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVhY3Rp
b25zUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rpb25zUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTIsNyArMTUyLDcgQEAgdm9pZCBKU1Rlc3RDRVJl
YWN0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9ucyIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnMp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q0VSZWFjdGlvbnM6OnNfaW5mbyA9IHsgIlRlc3RD
RVJlYWN0aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9ucykgfTsKIAogSlNUZXN0Q0VSZWFjdGlvbnM6OkpT
VGVzdENFUmVhY3Rpb25zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0LCBSZWY8VGVzdENFUmVhY3Rpb25zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdENFUmVhY3Rpb25zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmNwcAppbmRl
eCBkMDMzZWY4M2Y5MWMyOTQ5NzZjMWZjN2Q5ZGY1NDBlMzUxNGU4ZGQ1Li40MTBmNjE5MjYxNzY1
NmQyN2MzYWU5NjRmOTJhMTAyMzI0Y2Q5NDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVh
Y3Rpb25zU3RyaW5naWZpZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGUs
IEpTVGVzCiAKIHVzaW5nIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rv
ciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdENFUmVhY3Rpb25zU3Ry
aW5naWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9u
c1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0
cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90
eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0KQogewpAQCAtMTIyLDcgKzEyMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVW
YWx1ZSBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9
CiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0
dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8
UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGVG
dW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllclByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJl
YWN0aW9uc1N0cmluZ2lmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMSw3
ICsxMzEsNyBAQCB2b2lkIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXJQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZp
ZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDRVJlYWN0aW9u
c1N0cmluZ2lmaWVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5n
aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENFUmVh
Y3Rpb25zU3RyaW5naWZpZXIpIH07CiAKIEpTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI6OkpT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllcj4m
JiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2Vy
LmNwcAppbmRleCA4NzczZjQxNDkxNmI1YmYwZWZjYTVjYWJkMmY5NmE5Y2M5YzA2OWFlLi43MTZj
MDdlZGZhZDQ1MWZhMTlkZmYzZmM4OWJiNDk5OTZiMjlmNThkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFj
ZXIuY3BwCkBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpT
VGVzdENhbGxUcmFjZXJDb25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogCiBzdGF0aWNfYXNzZXJ0
KFRlc3RDYWxsVHJhY2VyOjp0ZXN0Q29uc3RWYWx1ZSA9PSBmYWxzZSwgInRlc3RDb25zdFZhbHVl
IGluIFRlc3RDYWxsVHJhY2VyIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7CiAKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXJET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdENhbGxUcmFjZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0
cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbFRyYWNlckRPTUNvbnN0
cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGNv
bnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGVUYWJsZVZhbHVlc1td
ID0KICAgICB7ICJ0ZXN0Q29uc3RWYWx1ZSIsIEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRE
ZWxldGUgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpSZWFkT25seSB8IEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkNvbnN0YW50SW50ZWdlciwgTm9JbnRyaW5zaWMsIHsgKGxvbmcgbG9uZykoZmFs
c2UpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0Q2FsbFRyYWNlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2FsbFRyYWNlclByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0Q2FsbFRyYWNlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsVHJhY2VyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE3Myw3
ICsxNzMsNyBAQCB2b2lkIEpTVGVzdENhbGxUcmFjZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFjZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxs
VHJhY2VyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RDYWxsVHJhY2VyKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxUcmFj
ZXI6OnNfaW5mbyA9IHsgIlRlc3RDYWxsVHJhY2VyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENhbGxUcmFjZXIpIH07CiAKIEpT
VGVzdENhbGxUcmFjZXI6OkpTVGVzdENhbGxUcmFjZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q2FsbFRyYWNlcj4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDYWxsVHJhY2VyPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2UuY3Bw
CmluZGV4IGNmMjdjNjYzOTc0NTdhNDQ2NTM5MDQ5ODUyNDJmMGVkMGQzNmM4NzguLjQ4YjRjMmY3
ODE3YTc0NzNjMGNhMzU1NGFkNmM0OGVmOGY2ZjIzZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsYmFja0ludGVyZmFjZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxi
YWNrSW50ZXJmYWNlLmNwcApAQCAtMTUzLDcgKzE1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RDYWxsYmFja0ludGVyZmFjZUNvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9
CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RBTlQxID09IDEsICJD
T05TVEFOVDEgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZy
b20gSURMIik7CiBzdGF0aWNfYXNzZXJ0KFRlc3RDYWxsYmFja0ludGVyZmFjZTo6Q09OU1RBTlQy
ID09IDIsICJDT05TVEFOVDIgaW4gVGVzdENhbGxiYWNrSW50ZXJmYWNlIGRvZXMgbm90IG1hdGNo
IHZhbHVlIGZyb20gSURMIik7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENh
bGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFja0lu
dGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0Q2FsbGJhY2tJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENhbGxiYWNrSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RDYWxsYmFja0ludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDYWxsYmFja0ludGVyZmFj
ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q2FsbGJhY2tJ
bnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpT
QnVpbHRpbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYTMy
YjJkOGI4OTU0YWExNmQyNGFlYWU5ZjgwYjQ0NDgxMTk2ZTBlZS4uODIxMTBkMzQ2Njg5YTUzZDUw
YzAyN2Q1MzcyZDkwNTNmMjJjMGM5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBAIC04NCw3ICs4NCw3IEBAIFNUQVRJQ19B
U1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0
cnVjdG9yUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVj
dG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3RvcjxKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWls
dGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dp
dGhKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpT
VmFsdWUgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRh
YmxlVmFsCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdENsYXNzV2l0aEpTQnVp
bHRpbkNvbnN0cnVjdG9yQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0Q2xhc3NXaXRo
SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclBy
b3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3RvclBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTIyLDcgKzEyMiw3IEBAIHZv
aWQgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04o
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IpIH07
CiAKIEpTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RDbGFzc1dpdGhK
U0J1aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvcj4m
JiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1
Y3Rvcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9u
YWxJbmNsdWRlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5jcHAKaW5kZXggMDQ2ZjczYzY0ZTg5OTgyYjQ4ZmIx
YjdjNTI2OTQzYWUzMTQwOTU5Zi4uZGFiNWNlMjEyOWViMmNmOGQwN2ZhNDU5MGVlMjMyZTM5Yzk1
OWQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmNwcApAQCAtMTc4
LDcgKzE3OCw3IEBAIHN0YXRpY19hc3NlcnQoVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OkNPTlNU
X0lNUEwgPT0gMiwgIkNPTlNUX0lNUEwgaW4gVGVzdENvbmRpCiBzdGF0aWNfYXNzZXJ0KFRlc3RD
b25kaXRpb25hbEluY2x1ZGVzOjpQQVJUSUFMX01JWElOX0NPTlNUQU5UX0ZST01fUEFSVElBTCA9
PSA1LCAiUEFSVElBTF9NSVhJTl9DT05TVEFOVF9GUk9NX1BBUlRJQUwgaW4gVGVzdENvbmRpdGlv
bmFsSW5jbHVkZXMgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKICNlbmRpZgogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRp
b25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMzAzLDcgKzMwMyw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RD
b25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxJ
bmNsdWRlcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlc1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
Q29uZGl0aW9uYWxJbmNsdWRlcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzUHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTQ1MCw3ICs0NTAsNyBAQCB2b2lkIEpTVGVzdENvbmRpdGlvbmFs
SW5jbHVkZXNQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RS
SU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dENvbmRpdGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVz
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRp
dGlvbmFsSW5jbHVkZXM6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbEluY2x1ZGVzIl9zLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dENvbmRpdGlvbmFsSW5jbHVkZXMpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXM6OkpT
VGVzdENvbmRpdGlvbmFsSW5jbHVkZXMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcz4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbEluY2x1ZGVzPihzdHJ1Y3R1cmUs
IGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRp
b25hbGx5UmVhZFdyaXRlLmNwcAppbmRleCBjNWM3YjZiYTk4MmQyNDlkODliYjczZTk2Mjk3MWQ5
Y2Q0ZjY0OGJmLi5kYTYxZDY5MzY3OTM5Nzg0MWEwMzA1MmQxMjRkZTExMTUyNzA4MjYwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29u
ZGl0aW9uYWxseVJlYWRXcml0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuY3BwCkBAIC0xMzksNyAr
MTM5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRpdGlvbmFsbHlS
ZWFkV3JpdGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlID0geyAyLCA3LCB0cnVlLCBKU1Rlc3RDb25k
aXRpb25hbGx5UmVhZFdyaXRlOjppbmZvKCksIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVU
YWJsZVZhbHVlcywgSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZVRhYmxlSW5kZXggfTsKLXRl
bXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0Q29u
ZGl0aW9uYWxseVJlYWRXcml0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBA
IC0xODEsNyArMTgxLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdENvbmRp
dGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJzZXR0aW5n
c0NvbmRpdGlvbmFsbHlSZWFkV3JpdGVBdHRyaWJ1dGVQcm9taXNlIiwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3RvbUFjY2Vzc29yKSwgTm9JbnRyaW5z
aWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihq
c1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRpbmdzQ29uZGl0aW9uYWxseVJlYWRXcml0
ZUF0dHJpYnV0ZVByb21pc2UpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xv
dDo6UHV0VmFsdWVGdW5jPihzZXRKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlX3NldHRpbmdz
Q29uZGl0aW9uYWxseVJlYWRXcml0ZUF0dHJpYnV0ZVByb21pc2UpIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZSJfcywg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdENvbmRp
dGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTIzMyw3ICsyMzMsNyBAQCB2b2lkIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlS
ZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIiwgJkJhc2U6
OnNfaW5mbywgJkpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGVUYWJsZSwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6OnNfaW5mbyA9IHsgIlRlc3RD
b25kaXRpb25hbGx5UmVhZFdyaXRlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0Q29uZGl0aW9u
YWxseVJlYWRXcml0ZVRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdENv
bmRpdGlvbmFsbHlSZWFkV3JpdGUpIH07CiAKIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGU6
OkpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRl
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAK
aW5kZXggNzNlNDQ0M2MxZTA2NzBkMTkwZjI0MmI5OTY3ODRmNDA5ZjdiZjc4ZS4uOGI5YzM0NWU0
NWUzN2JmZWU5ZmI0NWU1YTVjZDNmY2E1NjZhNjIxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5jcHAKQEAgLTUw
MSw3ICs1MDEsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RE
T01KSVRQcm90b3R5cGUsIEpTVGVzdERPTUpJVFByb3RvdHlwZQogCiB1c2luZyBKU1Rlc3RET01K
SVRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVz
dERPTUpJVD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RET01KSVRET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERPTUpJVERPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVERPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RE9NSklURE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTU2NCw3ICs1NjQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0RE9NSklUUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZ2V0RWxl
bWVudHNCeU5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01KSVRGdW5jdGlvbiksIE5v
SW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNU
ZXN0RE9NSklUUHJvdG90eXBlRnVuY3Rpb25fZ2V0RWxlbWVudHNCeU5hbWUpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PGNvbnN0IEpTQzo6RE9NSklUOjpTaWduYXR1cmUqPigmRE9NSklUU2lnbmF0
dXJlRm9yVGVzdERPTUpJVEdldEVsZW1lbnRzQnlOYW1lKSB9IH0sCiB9OwogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0RE9NSklUUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RE
T01KSVRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERPTUpJVFByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3RET01KSVRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTU3
Myw3ICs1NzMsNyBAQCB2b2lkIEpTVGVzdERPTUpJVFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7ICJUZXN0RE9NSklUIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RET01KSVQpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RE9NSklUOjpzX2luZm8gPSB7ICJU
ZXN0RE9NSklUIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdERPTUpJVCkgfTsKIAogSlNUZXN0RE9NSklUOjpKU1Rlc3RET01KSVQo
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0RE9NSklUPiYmIGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0dXJlLCBnbG9iYWxPYmpl
Y3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5jcHAKaW5kZXggZWE1
YTI1NGRhODFlYzRkNGViMmRkZjUyNWI2MmE4YjBjZjQzY2RkYS4uM2QzYzQzYzg1ODk2MGM5ZDdm
Zjg0MmM5NGNjZGFmMjZkNWNiNmIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmNwcApA
QCAtMTQ0LDcgKzE0NCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT05Qcm90b3R5cGUsIEpTVGVzdERlZmF1bHRUCiAKIHVzaW5nIEpTVGVz
dERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdERlZmF1bHRUb0pTT04+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZh
dWx0VG9KU09OIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09ORE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1Y3Rv
cikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRUb0pTT05ET01Db25zdHJ1
Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2Jh
bE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTkwLDcgKzE5MCw3IEBAIHN0YXRpYyBjb25z
dCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlVGFibGVWYWx1ZXNb
XSA9CiAgICAgeyAidG9KU09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OUHJvdG90eXBlRnVuY3Rpb25f
dG9KU09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dERlZmF1bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3REZWZhdWx0VG9KU09OUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1
bHRUb0pTT05Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
ZmF1bHRUb0pTT05Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTlByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjE2LDcgKzIxNiw3IEBAIHZvaWQg
SlNUZXN0RGVmYXVsdFRvSlNPTlByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0RGVmYXVsdFRvSlNPTjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04i
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdERlZmF1bHRUb0pTT04pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNP
Tjo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT04iX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTikgfTsK
IAogSlNUZXN0RGVmYXVsdFRvSlNPTjo6SlNUZXN0RGVmYXVsdFRvSlNPTihTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3REZWZhdWx0
VG9KU09OPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcAppbmRleCA5NTg1NzRi
YzZkODcwNjk5NDk3YTAxOWQ2Mjg0NTI1NzdiNmEzODMxLi5jZDM2NzVjNmM3OWIxOTczNGU5Zjhm
YTkzMDA0MmJmYWRhYTgzMmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4
cG9zZWRQcm90b3R5cAogCiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9z
ZWRET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVz
dERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZh
dWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2Vk
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZERPTUNvbnN0cnVjdG9yKSB9Owog
CiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2Vk
RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3Qg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMyw3ICsxMjMsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlF
eHBvc2VkUHJvdG90eXBlVGFibGVWYQogICAgIHsgInRvSlNPTiIsIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChp
bnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0RGVmYXVsdFRvSlNP
TkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAo
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZFBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGUpIH07CiAKIHZvaWQg
SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xNDksNyArMTQ5LDcgQEAgdm9pZCBKU1Rlc3REZWZhdWx0VG9K
U09ORmlsdGVyZWRCeUV4cG9zZWRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0geyAi
VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZCIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRl
cmVkQnlFeHBvc2VkKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05GaWx0
ZXJlZEJ5RXhwb3NlZDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhw
b3NlZCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQpIH07CiAKIEpTVGVzdERl
ZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDo6SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVk
QnlFeHBvc2VkKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZD4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQ+KHN0
cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5jcHAKaW5kZXggMzIz
ZWYwODJjMWJjN2YxNWY2ZTJkNmQxMmM4NWM1MjYwM2UyMWQ0ZS4uZGY5ZjJkOGRmNDZlZmJlMGNi
ZTJmOWExZDZhN2JiODIyZGQwZjc2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuY3BwCkBAIC04Miw3ICs4Miw3IEBAIFNU
QVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlUHJvdG90CiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVj
dEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0
YWJsZTxKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZT47CiAKLXRlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNl
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rv
cikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9K
U09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0
YW5jZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RGVmYXVs
dFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTA1LDcgKzEwNSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZVByb3RvdHlwZVRhYmxlCiAgICAgeyAi
Y29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRh
bmNlQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6
UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVs
dFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5o
ZXJpdGFuY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRvSlNP
TkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9K
U09OSW5kaXJlY3RJbmhlcml0YW5jZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0
YW5jZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE0LDcgKzEx
NCw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2VQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05J
bmRpcmVjdEluaGVyaXRhbmNlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0
SW5oZXJpdGFuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlOjpzX2lu
Zm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVs
dFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UpIH07CiAKIEpTVGVzdERlZmF1bHRUb0pTT05JbmRp
cmVjdEluaGVyaXRhbmNlOjpKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZShT
dHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVm
PFRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZT4mJiBpbXBsKQogICAgIDogSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQoc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmNwcAppbmRleCBk
ZTk3ZDIzZGRjNTgzYzA5YTM2NDc3YjVmZTdiMjAwZTA0YWRlNWZlLi4zNDk0NjU4ODY1ZDQxMzRh
NjVkYTBkZGY1ZTNlYjdmYTUwNDAxNjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdC5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdFByb3RvdHlwZSwgSlNUZXN0
RAogCiB1c2luZyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yID0gSlNE
T01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+
OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dERlZmF1bHRUb0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdERPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVy
aXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNCw3
ICsxMzQsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJ0b0pTT04iLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJp
bnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlRnVuY3Rpb25fdG9KU09OKSwgKGludHB0cl90KSAo
MCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
IHsKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9K
U09OSW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZh
dWx0VG9KU09OSW5oZXJpdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0Il9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0KSB9OwogCiBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdDo6SlNUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXQoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQ+JiYgaW1wbCkK
ICAgICA6IEpTVGVzdERlZmF1bHRUb0pTT04oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1v
dmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5h
bC5jcHAKaW5kZXggNzgzYzlkYjk0ZDM2M2UxYzExYTk4NmYzZjgzOGE4MDZlZjRmN2FkNi4uNTg0
MzE3Y2Y3ZGEyNjFmNDM2NTliZTA1Y2EyYWYyYTRiZWY5ZWIxNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmNwcApAQCAtMTExLDcgKzExMSw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05J
bmhlcml0RmluYWxQcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
PEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09O
SW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0RmluYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0RmluYWxET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQog
ewpAQCAtMTM3LDcgKzEzNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAidG9K
U09OIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0
aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0
aW9uPihqc1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBlRnVuY3Rpb25fdG9K
U09OKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0RmluYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0RGVmYXVs
dFRvSlNPTkluaGVyaXRGaW5hbFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbFBy
b3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJ
VEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RGVmYXVsdFRv
SlNPTkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0Rmlu
YWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6c19pbmZvID0geyAiVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RmluYWwiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbCkgfTsKIAogSlNU
ZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbDo6SlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVj
dCwgUmVmPFRlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsPiYmIGltcGwpCiAgICAgOiBKU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlLmNwcAppbmRleCA4ZTZmZTM5MWJlMTAwZjM2MmRmMzIwZmY5NjUwODQy
MTQ4NjlkNjU4Li44ZDgwOGQwYTQ5NjgzYzdkY2ViMzZhZjU1NDliY2VlNmJlZjE3MDllIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVs
ZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNB
dHRyaWJ1dGUuY3BwCkBAIC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQcm90CiAK
IHVzaW5nIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdERlbGVnYXRlVG9T
aGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhl
dGljQXR0cmlidXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVET01D
b25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpA
QCAtMTE5LDcgKzExOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlVGFiCiAgICAgeyAicHJvcGVy
dHk1Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkN1c3Rv
bUFjY2Vzc29yIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RE9NQXR0cmlidXRlKSwgTm9JbnRy
aW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5j
Pihqc1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0dHJpYnV0
ZTIpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PihzZXRKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlX3NoYXJlZEF0dHJp
YnV0ZTIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVk
U3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVUb1No
YXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJp
YnV0ZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVk
U3ludGhldGljQXR0cmlidXRlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RGVsZWdhdGVUb1No
YXJlZFN5bnRoZXRpY0F0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0
cmlidXRlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyOCw3
ICsxMjgsNyBAQCB2b2lkIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRl
VG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hh
cmVkU3ludGhldGljQXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNB
dHRyaWJ1dGU6OnNfaW5mbyA9IHsgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUpIH07CiAKIEpTVGVz
dERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGU6OkpTVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJp
YnV0ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3REb21haW5TZWN1cml0eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuY3BwCmluZGV4IDVjNTA0MGNlNjNlY2EyZmYwOTNi
YTkyMGU4ZjRkMzczMTM1MzkwMDIuLmQzY2NmNjAwY2Q1ZDhhYThmNDdjNmJlNGNiNGVhNDk2OGYw
NTk0YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3REb21haW5TZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmNwcApAQCAtMTE0LDcgKzExNCw3
IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxl
VmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3REb21haW5TZWN1
cml0eVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1Rlc3REb21haW5TZWN1cml0eTo6aW5mbygpLCBK
U1Rlc3REb21haW5TZWN1cml0eVRhYmxlVmFsdWVzLCBKU1Rlc3REb21haW5TZWN1cml0eVRhYmxl
SW5kZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5
RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REb21haW5TZWN1cml0eSIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RG9tYWlu
U2VjdXJpdHlET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdERvbWFpblNlY3VyaXR5RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3REb21haW5T
ZWN1cml0eSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3REb21haW5TZWN1cml0eURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+IEpTVmFsdWUgSlNUZXN0RG9tYWluU2VjdXJpdHlET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTQxLDcgKzE0MSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIm92
ZXJsb2FkZWRNZXRob2QiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlRnVuY3Rpb25fb3Zl
cmxvYWRlZE1ldGhvZCksIChpbnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFpblNl
Y3VyaXR5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdERvbWFpblNlY3Vy
aXR5Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdERvbWFpblNlY3VyaXR5UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdERvbWFp
blNlY3VyaXR5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNTAsNyAr
MTUwLDcgQEAgdm9pZCBKU1Rlc3REb21haW5TZWN1cml0eVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0RG9tYWluU2VjdXJpdHk6OnNfaW5mbyA9IHsgIlRl
c3REb21haW5TZWN1cml0eSIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0eVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5KSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdERvbWFpblNlY3VyaXR5OjpzX2luZm8gPSB7ICJUZXN0
RG9tYWluU2VjdXJpdHkiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3REb21haW5TZWN1cml0eVRh
YmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdERvbWFpblNlY3VyaXR5KSB9
OwogCiBKU1Rlc3REb21haW5TZWN1cml0eTo6SlNUZXN0RG9tYWluU2VjdXJpdHkoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RG9t
YWluU2VjdXJpdHk+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0RG9tYWluU2VjdXJp
dHk+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNl
dHRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEVuYWJsZWRCeVNldHRpbmcuY3BwCmluZGV4IDlmMjY4ODk3ODQ0MTQ0ZTBkMThkNTljMTJkMmZj
Zjk4ZjIwNmEyZmIuLjA1Y2EyOThiYjY0OWVlNmQ1NWQwMjFiNTRlZTc0YmU3YzAzMzI5ZTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
bmFibGVkQnlTZXR0aW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5jcHAKQEAgLTEzNSw3ICsxMzUsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0NvbnN0cnVj
dG9yVGFibGVWYWx1ZXNbXSA9CiAKIHN0YXRpY19hc3NlcnQoVGVzdEVuYWJsZWRCeVNldHRpbmc6
OmVuYWJsZWRCeVNldHRpbmdDb25zdGFudCA9PSAwLCAiZW5hYmxlZEJ5U2V0dGluZ0NvbnN0YW50
IGluIFRlc3RFbmFibGVkQnlTZXR0aW5nIGRvZXMgbm90IG1hdGNoIHZhbHVlIGZyb20gSURMIik7
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRCeVNldHRpbmciLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRC
eVNldHRpbmdET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEVuYWJsZWRCeVNldHRpbmdET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEVuYWJs
ZWRCeVNldHRpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0RW5hYmxlZEJ5U2V0dGluZ0RPTUNvbnN0cnVjdG9yOjpw
cm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xODMsNyArMTgzLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hU
YWJsZVZhbHVlIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0K
ICAgICB7ICJlbmFibGVkQnlTZXR0aW5nQ29uc3RhbnQiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpEb250RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxv
bmcpKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5n
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RW5hYmxlZEJ5
U2V0dGluZ1Byb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkQnlTZXR0
aW5nUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEJ5U2V0dGluZyJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFi
bGVkQnlTZXR0aW5nUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzNiw3ICsyMzYsNyBAQCB2
b2lkIEpTVGVzdEVuYWJsZWRCeVNldHRpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2
bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsgIlRlc3RFbmFi
bGVkQnlTZXR0aW5nIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdEVuYWJsZWRCeVNldHRpbmdUYWJs
ZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkQnlTZXR0aW5nKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OnNfaW5mbyA9IHsgIlRl
c3RFbmFibGVkQnlTZXR0aW5nIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0RW5hYmxlZEJ5U2V0
dGluZ1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRCeVNl
dHRpbmcpIH07CiAKIEpTVGVzdEVuYWJsZWRCeVNldHRpbmc6OkpTVGVzdEVuYWJsZWRCeVNldHRp
bmcoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3Qs
IFJlZjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RFbmFibGVkQnlTZXR0aW5nPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuY3BwCmluZGV4IDNhZjdkYjM0MzE5
NzFiZjY0NThiNWEzZTdmMjZiYjgyMTI3NTAzNzguLmUxOTUxMDY5ZTlmMWJjMDk0ODRkNGM0MGYz
MTA3NDcyMDk1Yjc2ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmNwcApA
QCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZSwgSlNUZXN0RW5hYgogCiB1c2luZyBKU1Rlc3RF
bmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0
cnVjdGFibGU8SlNUZXN0RW5hYmxlZEZvckNvbnRleHQ+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0
b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4
dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RW5hYmxlZEZvckNvbnRleHQiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
RW5hYmxlZEZvckNvbnRleHRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVl
IEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
RW5hYmxlZEZvckNvbnRleHRQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1
Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250
RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6
OkdldFZhbHVlRnVuYz4oanNUZXN0RW5hYmxlZEZvckNvbnRleHRDb25zdHJ1Y3RvciksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdEVuYWJsZWRGb3JDb250ZXh0Il9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEVuYWJsZWRGb3JD
b250ZXh0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEVuYWJsZWRGb3JDb250ZXh0UHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdm9pZCBK
U1Rlc3RFbmFibGVkRm9yQ29udGV4dFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVk
Rm9yQ29udGV4dCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0RW5hYmxlZEZvckNvbnRleHQpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHQ6OnNfaW5mbyA9IHsgIlRlc3RFbmFibGVkRm9yQ29udGV4dCJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RFbmFibGVkRm9yQ29udGV4dCkgfTsKIAogSlNUZXN0RW5hYmxlZEZvckNvbnRleHQ6OkpT
VGVzdEVuYWJsZWRGb3JDb250ZXh0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEVuYWJsZWRGb3JDb250ZXh0PiYmIGltcGwpCiAg
ICAgOiBKU0RPTVdyYXBwZXI8VGVzdEVuYWJsZWRGb3JDb250ZXh0PihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmNw
cAppbmRleCBjODhlZDIxY2NmOWEwOTZhMzM2YmI0MzBjNzA3YzMyZmQzZWFiOWI2Li5kZTg3Yzkx
OTg1YzdjZGViMTAyOWJlMzkzNTAyMzJmOTg5ZjkwNDlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50
Q29uc3RydWN0b3IuY3BwCkBAIC0xOTQsNyArMTk0LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNv
bnMKIH0KIEpTQ19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JE
T01Db25zdHJ1Y3RvckNvbnN0cnVjdCwgSlNUZXN0RXZlbnRDb25zdHJ1Y3RvckRPTUNvbnN0cnVj
dG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVu
dENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENvbnN0cnVj
dG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3JET01Db25z
dHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjI0LDcgKzIyNCw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBl
VGFibGVWYWx1ZXNbXSA9CiAjZW5kaWYKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVu
dENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3RvciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RXZlbnRDb25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RF
dmVudENvbnN0cnVjdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRDb25zdHJ1Y3Rv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RFdmVudENvbnN0cnVjdG9yUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEV2ZW50
Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIzMyw3
ICsyMzMsNyBAQCB2b2lkIEpTVGVzdEV2ZW50Q29uc3RydWN0b3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04o
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIlRlc3RFdmVudENvbnN0cnVjdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudENvbnN0cnVjdG9yKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEV2ZW50Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RFdmVudENv
bnN0cnVjdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdEV2ZW50Q29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEV2ZW50Q29uc3Ry
dWN0b3I6OkpTVGVzdEV2ZW50Q29uc3RydWN0b3IoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0RXZlbnRDb25zdHJ1Y3Rvcj4mJiBp
bXBsKQogICAgIDogSlNFdmVudChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFdmVudFRhcmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuY3BwCmluZGV4IDdiZmQxZTkyMDQxODg1ZTJhZjZjMmQ1
MGJjMDMyMGM0NmM5OTNlMjAuLjVhY2NmMGU2NTIxODhlOWM5YzQwODRlYzA2N2MwNjg3MjkwZjlk
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFdmVudFRhcmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmNwcApAQCAtOTMsNyArOTMsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZSwg
SlNUZXN0RXZlbnRUYXJnZQogCiB1c2luZyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0RXZlbnRUYXJnZXQ+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldERPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0RE9NQ29uc3Ry
dWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RFdmVudFRhcmdldERP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJn
ZXRET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEV2ZW50VGFy
Z2V0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNyw3ICsxMTcsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGVU
YWJsZVZhbHVlc1tdID0KICAgICB7ICJpdGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZUZ1
bmN0aW9uX2l0ZW0pLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0RXZlbnRUYXJnZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0RXZlbnRUYXJnZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0RXZlbnRU
YXJnZXRQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RFdmVudFRhcmdldCJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFdmVudFRh
cmdldFByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RFdmVudFRhcmdldFByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0RXZl
bnRUYXJnZXRQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RS
SU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0RXZlbnRUYXJnZXQiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV2ZW50VGFyZ2V0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEV2ZW50VGFyZ2V0OjpzX2luZm8gPSB7ICJUZXN0
RXZlbnRUYXJnZXQiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0RXZlbnRUYXJnZXQpIH07CiAKIEpTVGVzdEV2ZW50VGFyZ2V0OjpK
U1Rlc3RFdmVudFRhcmdldChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3RFdmVudFRhcmdldD4mJiBpbXBsKQogICAgIDogSlNFdmVu
dFRhcmdldChzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4
Y2VwdGlvbi5jcHAKaW5kZXggMTFkYzVlYWVmZjczZTVmM2YwZGYwODFiZGM2ZDE1OWNiMDE5MDcz
Zi4uOTdjZjhkMzViMTUyY2QxMDVlOWQyYjAyODRjMmMwOWJiMzRkYmE5MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4
Y2VwdGlvbi5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0Vf
U0hBUkFCTEUoSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlLCBKU1Rlc3RFeGNlcHRpb25Qcm8KIAog
dXNpbmcgSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3RFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0RXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEV4
Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdEV4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdEV4
Y2VwdGlvblByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgIm5hbWUiLCBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpDdXN0b21BY2Nlc3NvciB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRP
TUF0dHJpYnV0ZSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0
eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0RXhjZXB0aW9uX25hbWUpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0RXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEV4
Y2VwdGlvblByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RFeGNlcHRpb25Qcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2b2lkIEpTVGVzdEV4
Y2VwdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RFeGNlcHRpb24pIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0RXhjZXB0aW9uOjpzX2luZm8gPSB7ICJUZXN0RXhjZXB0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEV4Y2VwdGlvbikgfTsKIAogSlNUZXN0RXhjZXB0aW9uOjpKU1Rlc3RFeGNlcHRpb24o
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJl
ZjxUZXN0RXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEV4Y2VwdGlv
bj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRP
cGFxdWVSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCmluZGV4IGVlM2FmMWYxZjU5Mjg5Nzg3YTlk
ZTUwYWYxNzk4NDFlYTExZWJiNjQuLjhlZDZjNDhmMGM1YjAzNjUzOTJlZGVjNTBhOTUwZThlNDJl
OGEzYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuY3BwCkBA
IC04Niw3ICs4Niw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZSwgSlNUZXN0CiAKIHVzaW5nIEpTVGVzdEdl
bmVyYXRlQWRkT3BhcXVlUm9vdERPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290PjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RH
ZW5lcmF0ZUFkZE9wYXF1ZVJvb3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290RE9NQ29uc3Ry
dWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
b3RET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25z
dCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTExLDcgKzExMSw3IEBA
IHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQ
cm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJzb21lQXR0cmlidXRlIiwgc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
T01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVy
dHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdF9zb21lQXR0
cmlidXRlKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVl
RnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3RQcm90b3R5cGUpIH07
CiAKIHZvaWQgSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290UHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBKU1Rlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3RQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290KSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdDo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlQWRkT3Bh
cXVlUm9vdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QpIH07CiAKIEpTVGVzdEdlbmVyYXRl
QWRkT3BhcXVlUm9vdDo6SlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290KFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEdlbmVyYXRl
QWRkT3BhcXVlUm9vdD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3Q+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuY3BwCmluZGV4IDVmNTk1ODU4ZWRkYzlj
Yjg4ZWY3ZTE0MWY1MTcxNzQ1MDkzOWQwM2QuLmM4NDk1NGE4YzA2OGI0OTk4OWE3MjFlZWI2YjQ3
NmUyMjc3ZDU3YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5jcHAK
QEAgLTg2LDcgKzg2LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZVByb3RvdHlwZSwgSlNUZXN0R2UKIAogdXNpbmcgSlNUZXN0
R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENv
bnN0cnVjdGFibGU8SlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT47CiAKLXRlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVy
YXRlSXNSZWFjaGFibGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdEdlbmVyYXRlSXNS
ZWFjaGFibGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZURPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGVUYWJsZVZhbHVl
c1tdID0KICAgICB7ICJhU2VjcmV0QXR0cmlidXRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVfYVNlY3JldEF0dHJpYnV0ZSksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBl
OjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2VuZXJhdGVJc1JlYWNo
YWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RH
ZW5lcmF0ZUlzUmVhY2hhYmxlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEdlbmVyYXRlSXNS
ZWFjaGFibGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEzMCw3ICsx
MzAsNyBAQCB2b2lkIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGVQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04o
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNfaW5m
byA9IHsgIlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OnNfaW5mbyA9IHsg
IlRlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUpIH07CiAK
IEpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGU6OkpTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RH
ZW5lcmF0ZUlzUmVhY2hhYmxlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKaW5kZXggNGYxNGE2OWEyMGYwYTMwMTM5OTQw
N2RjMDBiYzgwNjVlZDJkYjkwZC4uOTQyMzQ3MzhlNDAwMjI5NTNjOWU5ODIxOGY2MDNiY2Q1M2Ni
MDkzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5jcHAKQEAgLTYyMSw3ICs2MjEsNyBAQCBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0R2xvYmFsT2JqZWN0Q29uc3RydWN0b3JU
YWJsZVZhbHVlc1tdID0KICNlbmRpZgogfTsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RHbG9iYWxP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdEdsb2JhbE9iamVjdERPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RHbG9iYWxPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07CiAK
IHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtNjUzLDcgKzY1Myw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RHbG9iYWxPYmplY3RQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAK
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGUg
PSB7IDEsIDEsIHRydWUsIEpTVGVzdEdsb2JhbE9iamVjdDo6aW5mbygpLCBKU1Rlc3RHbG9iYWxP
YmplY3RQcm90b3R5cGVUYWJsZVZhbHVlcywgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFi
bGVJbmRleCB9OwotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdEdsb2JhbE9iamVjdCIsICZCYXNlOjpzX2luZm8sICZKU1Rlc3RHbG9i
YWxPYmplY3RQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RHbG9iYWxPYmplY3RQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0R2xvYmFs
T2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0R2xvYmFsT2JqZWN0Il9zLCAmQmFzZTo6
c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpT
VGVzdEdsb2JhbE9iamVjdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAt
NjYxLDcgKzY2MSw3IEBAIHZvaWQgSlNUZXN0R2xvYmFsT2JqZWN0UHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RHbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsg
IlRlc3RHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0R2xvYmFsT2JqZWN0VGFi
bGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0R2xvYmFsT2JqZWN0KSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiVGVzdEdsb2Jh
bE9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdEdsb2JhbE9iamVjdFRhYmxlLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEdsb2JhbE9iamVjdCkgfTsKIAogSlNUZXN0
R2xvYmFsT2JqZWN0OjpKU1Rlc3RHbG9iYWxPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0R2xvYmFsT2JqZWN0PiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEdsb2JhbE9iamVjdD4oc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNl
dHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggYTc2NGM4ZjI3NDU1MjZhODlkMjM4OGFhMjViYWY0
OGVlMGNlOGMyNy4uZGQ3NjU5MGEyYzI4ZDI1NjllOGEwZDVhYmU2NmQ3ZjU1ZTJhNjRkOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAt
ODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3Rv
dHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVz
WwogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xv
dDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRT
ZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTgsNyArMTE4LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0
dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0SW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyKSB9OwogCiBKU1Rl
c3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlm
aWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9N
V3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxP
YmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDg4MmZmMDQ3YjhiZDI4MGM2Yzg2NTYx
MWRkMWY1NWVmOTM3NzZiMGIuLmFkZGM1NDhkNzljY2Y5ODc2YWY5NzNkOTQyNzMxNWIwOGFkY2Mx
YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwCiAK
IHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9y
ID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0SW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGVU
YWJsZVZhCiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQ
cm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb25Qcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4
LDcgQEAgdm9pZCBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RS
QU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKSB9OworY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6c19pbmZvID0geyAiVGVz
dEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjo6
SlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlm
aWVyLmNwcAppbmRleCAyYWM2ZDcxZDU2MzI3ZDlhNmNjZDgwNjIwNWE1MjVhM2ZjZmM2NDM1Li4x
OTk1YmY4MDAyNTliOWVkZmFhYTFhYjI0MjY3ZDhiMGZlZDBlYTI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTMsNyArOTMs
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RJbmRleGVkU2V0
dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUsCiAKIHVzaW5nIEpTVGVzdEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRl
PD4gSlNWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVU
YWJsZVZhbHVlCiAgICAgeyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChpbnRwdHJfdCkgKDIp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI3
LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9V
VF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbmRleGVkU2V0dGVy
V2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKSB9
OwogCiBKU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdEluZGV4ZWRTZXR0
ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCwgUmVmPFRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5j
cHAKaW5kZXggZWNiMDU0ODQwNmYxZGU0ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uZGZkMWQ0
ZmM3NmZkNmMzM2U0YTEzNzkyOTFlYWQ1YmY5NzQxOTRmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5j
cHAKQEAgLTI5Myw3ICsyOTMsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTExfQVRUUklCVVRFUyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3RvcgogfQogSlNDX0FO
Tk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3JDb25zdHJ1
Y3QsIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpjb25zdHJ1Y3QpOwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdEludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdEludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsK
IAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC00NTcsNyArNDU3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdEludGVyZmFjZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogI2VuZGlmCiB9
OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0SW50ZXJmYWNlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdEludGVyZmFjZVByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RJbnRlcmZhY2VQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTQ3OSw3ICs0NzksNyBAQCB2b2lkIEpT
VGVzdEludGVyZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2Up
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SW50ZXJmYWNlOjpzX2luZm8gPSB7ICJUZXN0SW50
ZXJmYWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdEludGVyZmFjZSkgfTsKIAogSlNUZXN0SW50ZXJmYWNlOjpKU1Rlc3RJbnRl
cmZhY2UoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QsIFJlZjxUZXN0SW50ZXJmYWNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdElu
dGVyZmFjZT4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBAIC0xMTMy
LDExICsxMTMyLDExIEBAIHVzaW5nIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSA9IEpT
RE9NSXRlcmF0b3JQcm90b3R5cGU8SlNUZXN0SW50ZXJmYWNlLCBUCiBKU0NfQU5OT1RBVEVfSE9T
VF9GVU5DVElPTihUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGVOZXh0LCBUZXN0SW50ZXJm
YWNlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNs
YXNzSW5mbyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJm
YWNlIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlKSB9OwotY29uc3QgSlNDOjpDbGFz
c0luZm8gVGVzdEludGVyZmFjZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0
ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0
SW50ZXJmYWNlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlIEl0ZXJhdG9y
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0
SW50ZXJmYWNlSXRlcmF0b3I6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZhY2UgSXRlcmF0b3IiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVz
dEludGVyZmFjZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5m
byBUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJbnRlcmZh
Y2UgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZSkgfTsKK2NvbnN0IEpTQzo6
Q2xhc3NJbmZvIFRlc3RJbnRlcmZhY2VJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEludGVyZmFjZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SW50ZXJmYWNlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAK
IHN0YXRpYyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVu
Y3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSosIEpTVGVzdElu
dGVyZmFjZSogdGhpc09iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNl
TGVhZGluZ1VuZGVyc2NvcmUuY3BwCmluZGV4IGE4MzNjODQ0ZGEwMDIzZGQ1MWViNzc3Yzk4NWU1
NjJiZjUxYThjYjIuLjU1NmIwNjJkM2U3N2IyYmNhODhhZjU5OTUwNzlhNDM3YjQxZjk5YmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmNwcApA
QCAtODYsNyArODYsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZVByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rlc3RJ
bnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rv
ck5vdENvbnN0cnVjdGFibGU8SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZURP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVET01Db25zdHJ1Y3RvcikgfTsKIAogdGVt
cGxhdGU8PiBKU1ZhbHVlIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQcm90b3R5
cGVUYWJsZVZhbHVlcwogICAgIHsgInJlYWRvbmx5Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpET01BdHRyaWJ1dGUpLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlX3JlYWRvbmx5KSwgKGludHB0
cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAog
fTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdElu
dGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2Nv
cmVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmVQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyMCw3ICsxMjAsNyBAQCB2
b2lkIEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZTo6
c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJbnRlcmZhY2VM
ZWFkaW5nVW5kZXJzY29yZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RJbnRlcmZhY2VMZWFk
aW5nVW5kZXJzY29yZTo6c19pbmZvID0geyAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3Jl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlKSB9OwogCiBKU1Rlc3RJbnRlcmZhY2VM
ZWFkaW5nVW5kZXJzY29yZTo6SlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxU
ZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAKaW5kZXggNWY0ZmE2OWZhOGQxYjAxMTkx
ZDdhNDg0MjFiZWM5MzFhODk1NmFmMi4uNTMxMjk1NmI3YmFkMDRiZTMxMDkyZmFmZGEzYjdiNWYx
MzE2MTViZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19B
U1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlLCBKU1Rl
c3RJdGVyYWJsZVByb3RvCiAKIHVzaW5nIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3IgPSBK
U0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RJdGVyYWJsZT47CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEl0ZXJhYmxlRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RJdGVyYWJsZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0SXRlcmFibGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImZvckVhY2gi
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6c19p
bmZvID0geyAiVGVzdEl0ZXJhYmxlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdEl0ZXJhYmxlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdEl0ZXJhYmxlUHJvdG90
eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzMsNyArMTMzLDcgQEAgdm9pZCBK
U1Rlc3RJdGVyYWJsZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SXRlcmFibGUpIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SXRlcmFibGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJs
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RJdGVyYWJsZSkgfTsKIAogSlNUZXN0SXRlcmFibGU6OkpTVGVzdEl0ZXJhYmxlKFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8
VGVzdEl0ZXJhYmxlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdEl0ZXJhYmxlPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKQEAgLTIyNywxMSArMjI3LDEx
IEBAIHVzaW5nIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclBy
b3RvdHlwZTxKU1Rlc3RJdGVyYWJsZSwgVGVzCiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihU
ZXN0SXRlcmFibGVJdGVyYXRvclByb3RvdHlwZU5leHQsIFRlc3RJdGVyYWJsZUl0ZXJhdG9yUHJv
dG90eXBlOjpuZXh0KTsKIAogdGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0
ZXJhYmxlSXRlcmF0b3JCYXNlOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJ
dGVyYWJsZUl0ZXJhdG9yQmFzZSkgfTsKLWNvbnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3RJdGVyYWJs
ZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJsZUl0
ZXJhdG9yKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNl
OjpzX2luZm8gPSB7ICJUZXN0SXRlcmFibGUgSXRlcmF0b3IiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0b3JC
YXNlKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3I6OnNfaW5m
byA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0SXRlcmFibGVJdGVyYXRvcikgfTsKIAog
dGVtcGxhdGU8PgotY29uc3QgSlNDOjpDbGFzc0luZm8gVGVzdEl0ZXJhYmxlSXRlcmF0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RJdGVyYWJsZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdEl0ZXJhYmxlSXRlcmF0
b3JQcm90b3R5cGUpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0SXRlcmFibGVJdGVyYXRv
clByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdEl0ZXJhYmxlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3RJdGVyYWJs
ZUl0ZXJhdG9yUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgaW5saW5lIEVuY29kZWRKU1ZhbHVlIGpz
VGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZW50cmllc0NhbGxlcihKU0dsb2JhbE9iamVj
dCosIENhbGxGcmFtZSosIEpTVGVzdEl0ZXJhYmxlKiB0aGlzT2JqZWN0KQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggNzFmNjFjMmE2MGZhOTg2MmMx
Mzg3Y2U2YmJlMTZmNjk0MjNkMzZlOS4uMGIyMmFhMzRiMjgzMzU4NmEzZjlhNjcwMTZlOGQyNGFh
NmU3MjY0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuY3BwCkBA
IC04OSw3ICs4OSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dEpTQnVpbHRpbkNvbnN0cnVjdG9yUHJvdG90eXBlLCBKU1Rlc3RKCiAKIHVzaW5nIEpTVGVzdEpT
QnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3IgPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rv
cjxKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvcj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25z
dHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNv
bnN0cnVjdG9yRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1
Y3RvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1w
bGF0ZTw+IEpTVmFsdWUgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JET01Db25zdHJ1Y3Rvcjo6
cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBIYXNo
VGFibGVWYWx1ZSBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogICAgIHsgInRlc3RDdXN0b21GdW5jdGlvbiIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0SlNCdWlsdGluQ29uc3RydWN0
b3JQcm90b3R5cGVGdW5jdGlvbl90ZXN0Q3VzdG9tRnVuY3Rpb24pLCAoaW50cHRyX3QpICgwKSB9
IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGlu
Q29uc3RydWN0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0SlNCdWlsdGlu
Q29uc3RydWN0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
ciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RK
U0J1aWx0aW5Db25zdHJ1Y3RvclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpA
QCAtMTMyLDcgKzEzMiw3IEBAIHZvaWQgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3JQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0SlNCdWlsdGlu
Q29uc3RydWN0b3IpIH07CiAKIEpTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yOjpKU1Rlc3RKU0J1
aWx0aW5Db25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKaW5kZXgg
YmI2ODhmY2I0YThmNzIzN2VlOTc5NmFkMTkzYTk4Njc0NGFkZGQ1MC4uOGM3NDYwMmYzNWM2NDY4
ZWUyOWU1ZDhkZjRjMGYyNDQ0NzM0NzE4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZh
Y3RvcnlGdW5jdGlvbi5jcHAKQEAgLTg4LDcgKzg4LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VC
U1BBQ0VfU0hBUkFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlLCBKU1Rl
c3QKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNE
T01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9u
PjsKIHVzaW5nIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlv
biA9IEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uPEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bj47CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25ET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0
TGVnYWN5RmFjdG9yeUZ1bmN0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsK
QEAgLTE0MCw3ICsxNDAsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TExfQVRUUklCVVRFUyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZQogfQogSlNDX0FOTk9U
QVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9y
eUZ1bmN0aW9uQ29uc3RydWN0LCBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25MZWdhY3lGYWN0
b3J5RnVuY3Rpb246OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0g
eyAiQXVkaW8iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbkxlZ2FjeUZhY3RvcnlGdW5jdGlvbikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bkxlZ2FjeUZhY3RvcnlGdW5jdGlvbjo6c19pbmZvID0geyAiQXVkaW8iX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFj
dG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uTGVnYWN5RmFjdG9yeUZ1bmN0aW9uOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZVRhYmxlVmFsdWVzW10g
PQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rp
b25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lGYWN0b3J5RnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRl
c3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90
eXBlKSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvblByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTczLDcgKzE3Myw3IEBAIHZvaWQgSlNUZXN0TGVn
YWN5RmFjdG9yeUZ1bmN0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAg
SlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb246OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lG
YWN0b3J5RnVuY3Rpb24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uKSB9OwogCiBKU1Rlc3RM
ZWdhY3lGYWN0b3J5RnVuY3Rpb246OkpTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbihTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RM
ZWdhY3lGYWN0b3J5RnVuY3Rpb24+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TGVn
YWN5RmFjdG9yeUZ1bmN0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBs
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuY3BwCmluZGV4
IDFjODM0OTBiNjdhMTFjYzg4YjNhNWViODJiOTE3MjhiNWRmODM1MTIuLmZhNzYwOTE2MjE0ZjZh
YjY4MjM5ODI3ZWJlYTUyYjZkMDRmY2M3Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eU5vSW50ZXJmYWNlT2JqZWN0LmNwcApAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBI
YXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZVRhYmxl
VmFsdWVzW10KICAgICB7ICJDT05TVEFOVDIiLCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250
RGVsZXRlIHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6UmVhZE9ubHkgfCBKU0M6OlByb3BlcnR5
QXR0cmlidXRlOjpDb25zdGFudEludGVnZXIsIE5vSW50cmluc2ljLCB7IChsb25nIGxvbmcpKDIp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVj
dFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0IiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdExlZ2Fj
eU5vSW50ZXJmYWNlT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBl
KSB9OwogCiB2b2lkIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0UHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBKU1Rlc3RMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RMZWdh
Y3lOb0ludGVyZmFjZU9iamVjdCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRl
c3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdCkg
fTsKIAogSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Q6OkpTVGVzdExlZ2FjeU5vSW50ZXJm
YWNlT2JqZWN0KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PiYmIGltcGwpCiAgICAgOiBK
U0RPTVdyYXBwZXI8VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0PihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zLmNwcAppbmRleCBlMmIxZjgwNDk2OTAxZTZlODcyYTA2YmNkYmVhMDBkNDk4OTlh
NGEyLi41MzEyNDA1MzlmODc5NGUxMmIyOTBmMWQzNDVhMzcwZWE2MmI4NTZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdElucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCkBAIC05Myw3ICs5Myw3IEBA
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnNQcm90b3R5cGUsIEpTVGVzCiAKIHVzaW5nIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnNET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNET01D
b25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRp
YyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAibmFtZWRJdGVtIiwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGlu
dHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zUHJvdG90eXBlRnVuY3Rpb25fbmFtZWRJdGVtKSwgKGludHB0cl90KSAoMSkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNUZXN0TGVnYWN5T3ZlcnJpZGVC
dWlsdEluc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdEluczo6c19pbmZvID0geyAiVGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucykgfTsKIAogSlNUZXN0TGVnYWN5
T3ZlcnJpZGVCdWlsdEluczo6SlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucyhTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE1hcExpa2UuY3BwCmluZGV4IGQ1ZWExNGMxMjk2MzUwY2FmNWNlODE3OWJhYjliMzRh
NTUxZGIzMTUuLmUxYjZlOTAzNGU4M2YzYzQwZGVlNWEyNDk3NDBjYzQ4YjM0ZTczZjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBM
aWtlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TWFwTGlrZS5jcHAKQEAgLTEwMiw3ICsxMDIsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJT
UEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90eXBlLCBKU1Rlc3RNYXBMaWtlUHJvdG90
eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3RNYXBMaWtlPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlr
ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZSJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RNYXBMaWtlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3RNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEzNiw3ICsx
MzYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVByb3RvdHlw
ZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6
OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2
ZUZ1bmN0aW9uPihqc1Rlc3RNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGludHB0
cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RNYXBMaWtlUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBM
aWtlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE1hcExpa2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFwTGlrZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQg
SlNUZXN0TWFwTGlrZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2UpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZTo6c19pbmZvID0geyAiVGVzdE1hcExpa2UiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TWFwTGlrZSkgfTsKIAogSlNUZXN0TWFwTGlrZTo6SlNUZXN0TWFwTGlrZShTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RNYXBM
aWtlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2U+KHN0cnVjdHVyZSwg
Z2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJh
dGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCmluZGV4IDIwODBlN2U2ZGUxNjM5
MDk5ZGZiOGE1YTNhZDJlMmJmZDcwZWM5YTcuLmM3MzdhOWRmZWNhNDFjOTkyOTFjMGFiNjQ1Yjk5
YjVkM2IyZmJmMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKQEAgLTEwNiw3ICsxMDYsNyBAQCBTVEFUSUNfQVNTRVJU
X0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zUHJvdG90eQogCiB1c2luZyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RN
YXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9y
OjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc1Byb3RvdHlwZVRhYmxlVgogICAgIHsgImRlbGV0ZSIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJvcGVy
dHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19j
YXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zUHJvdG90eXBlRnVuY3Rpb25fZGVsZXRlKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtKQogewpAQCAtMTUwLDcgKzE1MCw3IEBAIHZvaWQgSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlk
ZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVzdE1h
cExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9uczo6c19pbmZvID0geyAiVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucykgfTsKIAogSlNUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczo6SlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9ucyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgUmVmPFRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zPiYmIGltcGwp
CiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAppbmRl
eCAyNDcwMmVmMTU4ZmRmY2U4MWRiYjRmY2ExNThhZTYzNjg3YThlNGYxLi5jYWMzMzY4YTViN2M1
YWExNjU3OGY1NTU1NDYyODRmMzFjYzhmY2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcApAQCAtODYsNyArODYs
NyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90bwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RD
b25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcj47CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5v
SWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJE
T01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6
OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90
eXBlVGFibAogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJOb0lkZW50aWZpZXJDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8
UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAg
SlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRT
ZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
KSB9OwogCiBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNE
T01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJOb0lkZW50aWZpZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwCmluZGV4IDFjZTIzMzYxYjM3OGQ3YjE3NzJh
OTk3ZGY3ZWJmYTk5NjA4NTg3NjYuLmJmOWE1YWIwYjQwZjk2OWQwOTc5MzMxNGRjMzlmMjljMzBm
ZTZiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcApAQCAtODYsNyArODYsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbgogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVj
dGFibGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJv
d2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b24iX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTExMCw3ICsxMTAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cAogICAgIHsgImNvbnN0cnVj
dG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRF
bnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6
R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
bkNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1
dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24iX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6
OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEpTVGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hD
cmVhdGlvbihWTSYgdgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07
Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbikgfTsKIAog
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9i
amVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCmluZGV4IDhmMjRiYTE2YjZiM2I1
YWMyMDNkMmY2NDE2NDUwNGUyNjIwZjU1YzkuLjNhZTJjOTMzNWFmZWEyNWQ0ZmYwZmFhNzM3OGRj
NmVmZTE4ZGY1ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclBybwogCiB1c2luZyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRo
SWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFi
bGU8SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0
ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
ZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
V2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9N
Q29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZp
ZXJQcm90b3R5cGVUYQogICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50
cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlRnVuY3Rpb25faW5kZXhlZFNldHRlciksIChp
bnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiB7CkBAIC0xMzAsNyArMTMwLDcgQEAgdm9pZCBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRBbmRJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRl
bnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI6
OkpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyKFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1Y3R1cmUsIGdsb2Jh
bE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRl
ck5vSWRlbnRpZmllci5jcHAKaW5kZXggZjRjZTBlNDFlNWUzYTAyNmJjYzViM2UwNDcwZWYxNDMx
Yzg3YTRlYy4uNTg3Yzk1YmVmMDMxMDUzNzIwYjMxMjM4NjFjOTkyNjJhYTEzNTkwNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
RGVsZXRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5jcHAKQEAgLTg1LDcg
Kzg1LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1QKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3Ry
dWN0YWJsZTxKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxl
dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lk
ZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5h
bWVkRGVsZXRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5h
bWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAgICB7ICJjb25z
dHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpE
b250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNs
b3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyQ29uc3RydWN0
b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVu
dGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmll
clByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXJQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lk
IEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50
aWZpZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
OjpzX2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVs
ZXRlck5vSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOjpK
U1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWREZWxldGVyTm9JZGVudGlm
aWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlck5vSWRlbnRp
Zmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxl
dGVyVGhyb3dpbmdFeGNlcHRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRleCA3
OTFjZGEyMWVmNTMzZDFkNWM2YzE0MDQ5MDVjMjg4ZmZkOTJmNWFlLi4xZDIxMTMyMWUyZTU1OWIy
NWIzZjI2NjVhZmQ1YjEyMjYzMDFkMTgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKQEAgLTg1LDcgKzg1LDcgQEAgU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdF
eGNlcHRpb25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNl
cHRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uPjsKIAotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbkRPTUNv
bnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9u
UHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChp
bnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFt
ZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGlj
X2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERl
bGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRlclRocm93aW5n
RXhjZXB0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyAr
MTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRf
VFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyVGhy
b3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24pIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvbikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb246OkpTVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RP
TUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRlclRocm93aW5n
RXhjZXB0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlclRo
cm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuY3BwCmlu
ZGV4IDNhOThkNTlkMzhiNzFiMDE2NWMxYjJhZWYyM2JlZjgwOWFkZWM3NDYuLjg1MWVkOWNiODkz
MmNjODM1NGY1OWZjOTFlNTI0YjQ3Y2M0MTc4ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmNwcApAQCAtOTIsNyArOTIsNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRp
ZmllclByb3RvdHlwZSwgSgogCiB1c2luZyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmll
ckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0
TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElk
ZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5h
bWVkRGVsZXRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlcwogICAgIHsgIm5h
bWVkRGVsZXRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRl
OjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRp
dmVGdW5jdGlvbj4oanNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5j
dGlvbl9uYW1lZERlbGV0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aElk
ZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRo
SWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZSkgfTsK
IAogdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNo
Q3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0TmFtZWRE
ZWxldGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAg
ICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxl
dGVyV2l0aElkZW50aWZpZXIpIH07CiAKIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
OjpKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZERlbGV0ZXJXaXRo
SWRlbnRpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0ZXJX
aXRoSWRlbnRpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmNw
cAppbmRleCAyZWFjMTZmNDk5NmNkYWQ3NmNmYzFjYWYwN2FmOGEyNmIyMDdmZTE5Li4xMzM4NmIy
ZjMxNzg5OTRhYTdkYTExOGRlNzRlOTFkNjQyMGQ3M2VmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4
ZWRHZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKQEAgLTg2LDcgKzg2LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0TmFtZWREZWxldGVy
V2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVy
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlckRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0
ZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdl
dHRlckRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTAsNyArMTEwLDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4o
anNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXJDb25zdHJ1Y3RvciksIChpbnRwdHJf
dCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclBy
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZv
ID0geyAiVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkRGVsZXRl
cldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkRGVsZXRl
cldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBA
IC0xMTksNyArMTE5LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
clByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFH
X1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRE
ZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRo
SW5kZXhlZEdldHRlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIpIH07Citjb25z
dCBDbGFzc0luZm8gSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZERlbGV0ZXJX
aXRoSW5kZXhlZEdldHRlcikgfTsKIAogSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0
ZXI6OkpTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3RydWN0
dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkRGVsZXRl
cldpdGhJbmRleGVkR2V0dGVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92
ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmNwcAppbmRleCBj
YzEwMjBjM2RjY2ZhMmRiZGU2MGNkNjc5NTQyYzdjZWQ3ZWMzYzA1Li5mNjBiNGY2Y2Y4YWE0ODlk
MThkOWYyOGRkM2NiYjhmMjU1MjNkMjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVy
Q2FsbFdpdGguY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNF
X1NIQVJBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGUsIEpTVGVzdE5hCiAK
IHVzaW5nIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29u
c3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+OwogCi10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxXaXRoIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZEdldHRlckNhbGxXaXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhET01Db25zdHJ1
Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhE
T01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBK
U0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0
YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90
eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGhDb25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0
UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRHZXR0ZXJDYWxsV2l0aCIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aFByb3RvdHlwZSkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJvdG90eXBlOjpzX2luZm8g
PSB7ICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoUHJv
dG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZp
bmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5h
bWVkR2V0dGVyQ2FsbFdpdGhQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRl
ckNhbGxXaXRoIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlckNhbGxX
aXRoIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVyQ2Fs
bFdpdGg6OkpTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGgoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0
aD4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlckNhbGxXaXRoPihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRl
bnRpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuY3BwCmluZGV4IGExOWRmOWRlZWQ4ODk2ODExYWQ1
ZjJkMmQzNTliZmI3N2VjY2IxZmEuLjg0YjY2MDk5M2Q4ZTNjMzM0NWM2YzI0YTE0OTBkYzBiMjZj
MjJhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmNw
cApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShK
U1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSwgSlNUZQogCiB1c2luZyBKU1Rl
c3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rv
ck5vdENvbnN0cnVjdGFibGU8SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXI+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNv
bnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJO
b0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkK
IHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGVUYWJsZVZhbHVlc1tdCiAgICAgeyAiY29u
c3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlT
bG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyQ29uc3RydWN0
b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5j
PigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50
aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZEdldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgSlNUZXN0
TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZp
ZXIpIH07CiAKIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyOjpKU1Rlc3ROYW1lZEdldHRl
ck5vSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4mJiBpbXBsKQogICAg
IDogSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcj4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllci5jcHAKaW5kZXggOGIzNDhhYzRlMmU3YjZkZTgzNGNkNzUxOTk3
ODRjZTcxODY2MzZmYi4uNTcwNzE0NDJlNzg1OTI3OTY3ODg2ZDI3ZTc2ZWNiNmI4YjY5NWFkNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmNwcApA
QCAtOTAsNyArOTAsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlLCBKUwogCiB1c2luZyBKU1Rlc3RO
YW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyPjsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllckRPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllciJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RO
YW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4g
SlNWYWx1ZSBKU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKIHsKQEAgLTExNSw3ICsxMTUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFs
dWVzWwogICAgIHsgImdldHRlck5hbWUiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9w
ZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGlj
X2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQ
cm90b3R5cGVGdW5jdGlvbl9nZXR0ZXJOYW1lKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZEdldHRl
cldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
R2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZEdldHRl
cldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGUp
IH07CiAKIHZvaWQgSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI0LDcgKzEyNCw3IEBAIHZvaWQgSlNUZXN0TmFt
ZWRHZXR0ZXJXaXRoSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19pbmZvID0geyAiVGVz
dE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6c19p
bmZvID0geyAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIiX3MsICZCYXNlOjpzX2luZm8s
IG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRHZXR0ZXJX
aXRoSWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcjo6SlNU
ZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlm
aWVyPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyV2l0aElkZW50
aWZpZXI+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyTm9JZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5jcHAKaW5kZXggZWEyZWRlZTlhYjg0
NWIwNTNhYWNmMDhmZWI1NzcxNzI5MWQxNmJkOS4uNGNiZjY2ZTNkOGI1MmQwNTMzZGFjYzBlYTkx
ZmMyNDg1ZDY2MzQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50
aWZpZXIuY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NI
QVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJvdG90eXBlLCBKU1RlCiAKIHVz
aW5nIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllcj47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmll
ciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6
OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1l
ZFNldHRlck5vSWRlbnRpZmllckRPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZVRhYmxlVmFsdWVzW10KICAg
ICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQ
cm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXJD
b25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRW
YWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVu
dGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6c19pbmZvID0g
eyAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlm
aWVyUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyUHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgsNyArMTE4LDcgQEAgdm9p
ZCBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNfaW5mbyA9
IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZp
ZXIpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OnNf
aW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlck5v
SWRlbnRpZmllcikgfTsKIAogSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI6OkpTVGVzdE5h
bWVkU2V0dGVyTm9JZGVudGlmaWVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9i
amVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPiYmIGlt
cGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5n
RXhjZXB0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmNwcAppbmRleCA4Mjk0MmRiNTI5NzE3
YzIwMGE1YWM1MmIyNmUxNDI3YTMzOGU3MWY0Li5iNDk1MjM5ZTNhYzg3ZjAyYjViZmQ2ZjIyOGYy
N2M4NjQ3MWIwZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24uY3BwCkBAIC04NSw3ICs4NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NV
QlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5
cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25ET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlVGFibGVWYWx1CiAgICAg
eyAiY29uc3RydWN0b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RG9udEVudW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJv
cGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b25Db25zdHJ1Y3RvciksIChpbnRwdHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQ
dXRWYWx1ZUZ1bmM+KDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvblByb3Rv
dHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0
aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlv
biJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKQEAgLTExOCw3ICsxMTgsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb246OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0
aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRp
b246OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5h
bWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24pIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dp
bmdFeGNlcHRpb246OkpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24oU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFt
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwg
V1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVu
dGlmaWVyLmNwcAppbmRleCBjN2Q3MmE3Y2E4MjU4MGFhZjY2M2E5MTk2NWEyZjhkMjAxM2RmOTE0
Li43ODFhYjA1NWI0Y2UzMDA1ZGYyMWMzOWUwZmU4YmE5ZWU5NzM3NmJhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSWRlbnRpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuY3BwCkBAIC05Miw3ICs5Miw3
IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXJQcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3Rh
YmxlPEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
cldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aElkZW50aWZpZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0
KQogewpAQCAtMTE3LDcgKzExNyw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbCiAgICAgeyAi
bmFtZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGVGdW5j
dGlvbl9uYW1lZFNldHRlciksIChpbnRwdHJfdCkgKDIpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRp
ZmllclByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
ZGVudGlmaWVyUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRp
ZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKIHsKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aElkZW50aWZpZXJQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9f
U1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRl
cldpdGhJZGVudGlmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyKSB9OworY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZp
ZXIpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI6OkpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXIoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllcj4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyPihzdHJ1
Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmNwcAppbmRleCA3ZDM0NWZmNDYyYjky
ZjFkZjBlNjlmNDM3NGNmMjIwNDFlMWFhNDQzLi42ZjdhNWI2MmI4OWFhNDNkOTg3OTgzMmY2MWU2
Yzg4NDY1ZWM0ODUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXIuY3BwCkBAIC05NSw3ICs5NSw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NV
QlNQQUNFX1NIQVJBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5
cGUsCiAKIHVzaW5nIEpTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1
Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXI+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsg
IlRlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlVGFibGVWYWx1CiAgICAg
eyAiaW5kZXhlZFNldHRlciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxS
YXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3Rv
dHlwZUZ1bmN0aW9uX2luZGV4ZWRTZXR0ZXIpLCAoaW50cHRyX3QpICgxKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
U2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMzAsNyArMTMw
LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRl
eGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyKSB9
OwogCiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
cj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRl
ci5jcHAKaW5kZXggNDc5NjY4MDM2NGMyZTYzMjg1MzRmMDlkNDQxMTZhYTQ1ZjQ2YjFmNS4uZGM2
YzY2MmNlMDRkNWJmZmIxMTQxMmFlYmE3MzY0NGUwNWJmZTM4MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVy
LmNwcApAQCAtOTUsNyArOTUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJM
RShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyUAogCiB1c2luZyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3Ig
PSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yKSB9Owor
dGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlckFuZFNldHRlckRPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJX
aXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyRE9NQ29uc3RydWN0b3I6OnBy
b3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3Qm
IGdsb2JhbE9iamVjdCkKIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRh
YmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3Rv
dHlwZQogICAgIHsgImluZGV4ZWRTZXR0ZXIiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRH
ZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGVGdW5jdGlvbl9pbmRleGVkU2V0dGVyKSwgKGludHB0cl90
KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXJQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTMwLDcgKzEzMCw3IEBAIHZvaWQgSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
SW5kZXhlZEdldHRlckFuZFNldHRlclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtCiAg
ICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENs
YXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlciJfcywgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRl
cldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyKSB9OwogCiBKU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyOjpKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBSZWY8VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXI+JiYg
aW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
ckFuZFNldHRlcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJp
ZGVCdWlsdElucy5jcHAKaW5kZXggZTAxYzcwNTQxNmE4MzM4ZTI2NjlhYjE3NDU1YzFlY2Y2YWEw
NDU1Ny4uMzhiODU4MjE2NjRkNTYzYjFmMmYwODUwZTNmZGJhMzk3YzI0MTg3YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zLmNwcApAQCAtODUsNyArODUsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFD
RV9TSEFSQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUAog
CiB1c2luZyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29u
c3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPjsKIAotdGVtcGxhdGU8PiBjb25zdCBDbGFz
c0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0
cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWls
dElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNW
YWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3Ry
dWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9i
YWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwOSw3ICsxMDksNyBAQCBzdGF0aWMgY29u
c3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWls
dEluc1Byb3RvdHlwZQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0
cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0
YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
c1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJp
ZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWls
dEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTgs
NyArMTE4LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0KICAgICBKU0NfVE9fU1RSSU5HX1RB
R19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMpIH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBsKQogICAgIDogSlNET01X
cmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
cy5jcHAKaW5kZXggZjg1OWRlZGI2YmQxNDI5ZmFkYWVkM2Q0ZDNkOGQ5ZTE0ZGIxODdjNy4uYTZk
YzY2YThjODMxNmY3MWMxNzVkZmJmMTAzNDMzOTA0MzJjYTE3MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllcy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxl
VmFsdWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzVGFi
bAogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZSA9IHsgMiwgMywgdHJ1ZSwgSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzOjppbmZvKCksIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlVmFsdWVzLCBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZUluZGV4IH07Ci10
ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyIsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eVVuZm9yZ2VhYmxlUHJvcGVydGllcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0RPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzUsNyArMTM1LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc1Byb3QKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihK
U0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJf
dClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQ29uc3RydWN0b3IpLCAoaW50cHRyX3Qp
IHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXNQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1Byb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVgogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElP
TigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzOjpzX2luZm8gPSB7ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc1RhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
cykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZv
cmdlYWJsZVByb3BlcnRpZXMiX3MsICZCYXNlOjpzX2luZm8sICZKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMp
IH07CiAKIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllczo6
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzKFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcz4mJiBpbXBsKQogICAgIDog
SlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnMuY3BwCmluZGV4IDZmYWQ3NWI3MzRlOWY5MTJmOTMyZTk4MzY5MWY3MDEwM2NkYmI2Y2Eu
LmJmYmNkZTYzMzBlZjY3NDE4YWU2YmNlNTczNjY1Y2NiZTM0OTU5ZTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVC
dWlsdElucy5jcHAKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTAog
fTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGUgPSB7IDIs
IDMsIHRydWUsIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OmluZm8oKSwgSlNUZXN0TmFtZWRTZXR0ZXJXaXRo
TGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxl
VmFsdWVzLCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNB
bmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zVGFibGVJbmRleCB9OwotdGVtcGxhdGU8PiBjb25zdCBD
bGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
QW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdElucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
QW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc0RPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
ICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5
T3ZlcnJpZGVCdWlsdElucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zRE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFs
dWUgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTAog
ICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlB
dHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0
PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zQ29uc3RydWN0b3Ip
LCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigw
KSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
c0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnNQcm90b3R5cGUpIH07Citj
b25zdCBDbGFzc0luZm8gSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0
aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlk
ZUJ1aWx0SW5zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xNDQsNyAr
MTQ0LDcgQEAgdm9pZCBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zUHIKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnM6OnNfaW5mbyA9IHsgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zIiwgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE5h
bWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnNUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM6OnNfaW5mbyA9IHsgIlRl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdEluc1RhYmxlLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVu
Zm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMpIH07CiAKIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnM6OkpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucz4mJiBpbXBsKQog
ICAgIDogSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVBy
b3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVj
dCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlQ29uc3QuY3BwCmluZGV4IDZj
MmY5ZWU0YjY0NjhlNzBkODViY2NiZThjMTVjMWExM2I5OTIxNmIuLjQ1MmRkYzU0MzI4YWVmYTFj
YWUxMDliYjM3ZGNmMDM0NjY1NDczNWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VDb25zdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZUNvbnN0LmNw
cApAQCAtNTYsNyArNTYsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0TmFt
ZXNwYWNlQ29uc3RDb25zdHJ1Y3RvclRhYmxlVmFsdWVzW10gPQogc3RhdGljX2Fzc2VydChUZXN0
TmFtZXNwYWNlQ29uc3Q6OlRFU1RfRkxBRyA9PSBmYWxzZSwgIlRFU1RfRkxBRyBpbiBUZXN0TmFt
ZXNwYWNlQ29uc3QgZG9lcyBub3QgbWF0Y2ggdmFsdWUgZnJvbSBJREwiKTsKIHN0YXRpY19hc3Nl
cnQoVGVzdE5hbWVzcGFjZUNvbnN0OjpURVNUX0JJVF9NQVNLID09IDB4MDAwMGZjMDAsICJURVNU
X0JJVF9NQVNLIGluIFRlc3ROYW1lc3BhY2VDb25zdCBkb2VzIG5vdCBtYXRjaCB2YWx1ZSBmcm9t
IElETCIpOwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VDb25z
dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVz
cGFjZUNvbnN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBK
U1Rlc3ROYW1lc3BhY2VDb25zdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0TmFtZXNw
YWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxh
dGU8PiBKU1ZhbHVlIEpTVGVzdE5hbWVzcGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OnByb3RvdHlw
ZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCkKIHsKQEAgLTcxLDcgKzcxLDcgQEAgdGVtcGxhdGU8PiB2b2lkIEpTVGVzdE5hbWVz
cGFjZUNvbnN0RE9NQ29uc3RydWN0b3I6OmluaXRpYWxpemVQcm9wZXJ0aWVzKFZNJiB2bSwKICAg
ICBVTlVTRURfUEFSQU0oZ2xvYmFsT2JqZWN0KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5hbWVzcGFjZUNvbnN0OjpzX2luZm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVz
cGFjZUNvbnN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZUNvbnN0OjpzX2lu
Zm8gPSB7ICJUZXN0TmFtZXNwYWNlQ29uc3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlQ29uc3QpIH07CiAKIEpT
VGVzdE5hbWVzcGFjZUNvbnN0OjpKU1Rlc3ROYW1lc3BhY2VDb25zdChTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKICAgICA6IEpTRE9NT2JqZWN0
KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VPYmplY3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVj
dC5jcHAKaW5kZXggMDc2ZDYzNDI2NmE1YTJiM2Q0MmFkZTczN2Q2MWE3NDc1MDdjMGVkMi4uZGU5
MGU5YTA2NjI4MzBkZjFjYzYyMjkzNmI1NjgxMWMwZDczODc4NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVzcGFjZU9iamVjdC5jcHAKQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE5hbWVzcGFjZU9iamVjdENvbnN0cnVjdG9yVGFibGVWYWx1ZXNbXSA9CiAj
ZW5kaWYKIH07CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9i
amVjdERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0SW50ZXJmYWNlTmFtZSIsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0TmFt
ZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5m
byBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdElu
dGVyZmFjZU5hbWUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0TmFtZXNwYWNlT2JqZWN0RE9NQ29uc3RydWN0b3IpIH07CiAKIHRl
bXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTMxLDcgKzEzMSw3IEBAIHRlbXBsYXRlPD4gdm9pZCBKU1Rl
c3ROYW1lc3BhY2VPYmplY3RET01Db25zdHJ1Y3Rvcjo6aW5pdGlhbGl6ZVByb3BlcnRpZXMoVk0m
IHZtCiAjZW5kaWYKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5hbWVzcGFjZU9iamVjdDo6
c19pbmZvID0geyAiVGVzdEludGVyZmFjZU5hbWUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkgfTsKK2Nv
bnN0IENsYXNzSW5mbyBKU1Rlc3ROYW1lc3BhY2VPYmplY3Q6OnNfaW5mbyA9IHsgIlRlc3RJbnRl
cmZhY2VOYW1lIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE5hbWVzcGFjZU9iamVjdCkgfTsKIAogSlNUZXN0TmFtZXNwYWNlT2Jq
ZWN0OjpKU1Rlc3ROYW1lc3BhY2VPYmplY3QoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xv
YmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiAgICAgOiBKU0RPTU9iamVjdChzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCkgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKaW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0
MTNmY2MxZTQ2M2MxNWJiYy4uYjkwNGRmNmIzMDc3YWIyZGRhNzdkMjlmZjQ1ZjVjZDRmZTFmNjI1
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROb2RlLmNwcApAQCAtMTM0LDcgKzEzNCw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJVVEVTIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6
Y29uCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9GVU5DVElPTihKU1Rlc3ROb2RlRE9NQ29uc3RydWN0
b3JDb25zdHJ1Y3QsIEpTVGVzdE5vZGVET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2luZm8g
PSB7ICJUZXN0Tm9kZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0Tm9kZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0Tm9k
ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3ROb2RlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rl
c3ROb2RlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
Y29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE3MSw3ICsxNzEs
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0Tm9kZVByb3RvdHlwZVRhYmxl
VmFsdWVzW10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQ
cm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3Rh
dGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdE5vZGVQcm90b3R5cGVGdW5jdGlvbl9m
b3JFYWNoKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVz
dE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3ROb2RlIiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3ROb2RlUHJvdG90eXBlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE5vZGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RO
b2RlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE5vZGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0Tm9kZVByb3RvdHlwZTo6
ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMjM1LDcgKzIzNSw3IEBAIHZvaWQgSlNUZXN0
Tm9kZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdf
VEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0Tm9k
ZTo6c19pbmZvID0geyAiVGVzdE5vZGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE5vZGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0Tm9kZTo6c19pbmZvID0geyAiVGVzdE5vZGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0Tm9kZSkgfTsKIAogSlNUZXN0Tm9k
ZTo6SlNUZXN0Tm9kZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3ROb2RlPiYmIGltcGwpCiAgICAgOiBKU05vZGUoc3RydWN0dXJl
LCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCkBAIC00MzMsMTEgKzQzMywxMSBAQCB1c2lu
ZyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlID0gSlNET01JdGVyYXRvclByb3RvdHlwZTxKU1Rl
c3ROb2RlLCBUZXN0Tm9kZUl0ZQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oVGVzdE5vZGVJ
dGVyYXRvclByb3RvdHlwZU5leHQsIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6Om5leHQpOwog
CiB0ZW1wbGF0ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yQmFzZTo6
c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3JCYXNlKSB9OwotY29u
c3QgSlNDOjpDbGFzc0luZm8gVGVzdE5vZGVJdGVyYXRvcjo6c19pbmZvID0geyAiVGVzdE5vZGUg
SXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFRlc3ROb2RlSXRlcmF0b3IpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9k
ZUl0ZXJhdG9yQmFzZTo6c19pbmZvID0geyAiVGVzdE5vZGUgSXRlcmF0b3IiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVy
YXRvckJhc2UpIH07Citjb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZXN0Tm9kZUl0ZXJhdG9yKSB9OwogCiB0ZW1wbGF0
ZTw+Ci1jb25zdCBKU0M6OkNsYXNzSW5mbyBUZXN0Tm9kZUl0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0Tm9kZSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVzdE5vZGVJdGVyYXRvclByb3RvdHlwZSkgfTsKK2Nv
bnN0IEpTQzo6Q2xhc3NJbmZvIFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3ROb2RlIEl0ZXJhdG9yIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFRlc3ROb2RlSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRp
YyBpbmxpbmUgRW5jb2RlZEpTVmFsdWUganNUZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJp
ZXNDYWxsZXIoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqLCBKU1Rlc3ROb2RlKiB0aGlzT2Jq
ZWN0KQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0T2JqLmNwcAppbmRleCBiNDQ3Mzk1ZWUzN2M2NDIwYTI4NDExYjI2YzdjNTBkYjI2
Nzc5YWRjLi41OTY1YzliNjRlYWVmZWJjZDFhNzY4NWY5OTQ5MjY2MDdmYWJlNGY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2Jq
LmNwcApAQCAtMjA2Myw3ICsyMDYzLDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OmNvbnMKIH0KIEpT
Q19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yQ29uc3RydWN0
LCBKU1Rlc3RPYmpET01Db25zdHJ1Y3Rvcjo6Y29uc3RydWN0KTsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdE9iakRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8g
SlNUZXN0T2JqRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T2Jq
RE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RPYmpET01Db25z
dHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUds
b2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAtMjQyOSw3ICsyNDI5LDcgQEAgc3RhdGlj
IGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE9ialByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQog
ICAgIHsgInJlYWRvbmx5IiwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udERlbGV0ZSB8IEpT
Qzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwgSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6
Q29uc3RhbnRJbnRlZ2VyLCBOb0ludHJpbnNpYywgeyAobG9uZyBsb25nKSgwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU1Rlc3RPYmpQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T2JqUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0T2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9ialByb3RvdHlwZSkgfTsKIAogdm9p
ZCBKU1Rlc3RPYmpQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTI1Mzks
NyArMjUzOSw3IEBAIHZvaWQgSlNUZXN0T2JqUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNv
bnN0IENsYXNzSW5mbyBKU1Rlc3RPYmo6OnNfaW5mbyA9IHsgIlRlc3RPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCAmSlNUZXN0T2JqVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0T2JqKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9iajo6c19pbmZvID0geyAiVGVzdE9i
amVjdCJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdE9ialRhYmxlLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE9iaikgfTsKIAogSlNUZXN0T2JqOjpKU1Rlc3RPYmooU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
T2JqPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE9iaj4oc3RydWN0dXJlLCBnbG9i
YWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRp
dGlvbmFsLmNwcAppbmRleCAyZTA3MGRjOTIzNTA3YTRlNzk5MWJlYTJhNjhmNTY0ZWQyYzA5Y2Fl
Li44NThhYTRjOWVlODViYjhhMGVjOWVjYWI2MjE5NWNiNWRhODA3OTBlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29u
ZGl0aW9uYWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBTVEFU
SUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25h
bFByb3RvdHlwZSwgSlNUZXN0TwogCiB1c2luZyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERP
TUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWw+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RP
cGVyYXRpb25Db25kaXRpb25hbERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0
aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3IpIH07
Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbERP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
T3BlcmF0aW9uQ29uZGl0aW9uYWxET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZv
clN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCkKIHsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUg
SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICNlbmRp
ZgogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90
eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0T3Bl
cmF0aW9uQ29uZGl0aW9uYWxQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTE0NCw3ICsxNDQsNyBAQCB2b2lkIEpTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsUHJvdG90eXBl
OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9U
UkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRp
b25hbDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPcGVyYXRpb25D
b25kaXRpb25hbCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25h
bDo6c19pbmZvID0geyAiVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsIl9zLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE9wZXJhdGlvbkNv
bmRpdGlvbmFsKSB9OwogCiBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbDo6SlNUZXN0T3BlcmF0
aW9uQ29uZGl0aW9uYWwoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QsIFJlZjxUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+JiYgaW1wbCkKICAgICA6
IEpTRE9NV3JhcHBlcjxUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnMuY3BwCmluZGV4IDQ5MjEwNDY1OTMyM2UxNzczMGU3ODgxNjFlYmY1N2Q2MGI5NWM3
ZjIuLjg1OWI5OWNlMTcyY2Y1NDJkMjdjOTU3OWI3MDVmNDcyMTc3NjdhMjUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAKQEAgLTIxOCw3ICsyMTgsNyBA
QCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzRAogfQogSlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04o
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RP
dmVybG9hZGVkQ29uc3RydWN0b3JzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25z
dHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNET01Db25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxw
dHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0y
NDIsNyArMjQyLDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJjb25zdHJ1Y3Rv
ciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51
bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxQcm9wZXJ0eVNsb3Q6Okdl
dFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc0NvbnN0cnVjdG9yKSwgKGlu
dHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9
LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNQcm90b3R5cGUpIH07CiAKIHZv
aWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMjUxLDcgKzI1MSw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdG9yc1Byb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJ
TkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1
Y3RvcnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycykgfTsKIAogSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yczo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyhTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnM+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UuY3BwCmluZGV4IGQ3ZjEzNzQ2N2QyNWEwOWYyNjJmNzFiNWUwM2M3ZGRhMjg4
MzY5ZGYuLjZmYzJmNGI1MzZiN2ZmZDg2YWEyMDMzNjMwNTZjZTUwZTZjZWVkMDAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1
ZW5jZS5jcHAKQEAgLTE1NSw3ICsxNTUsNyBAQCB0ZW1wbGF0ZTw+IEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTExfQVRUUklCVVRFUyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzVwogfQog
SlNDX0FOTk9UQVRFX0hPU1RfRlVOQ1RJT04oSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZUNvbnN0cnVjdG9yQ29uc3RydWN0LCBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnNXaXRoU2VxdWVuY2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
c1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZURPTUNvbnN0cnVjdG9yOjpwcm90
b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bG9iYWxPYmplY3QpCiB7CkBAIC0xNzksNyArMTc5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGVU
YWIKICAgICB7ICJjb25zdHJ1Y3RvciIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpEb250RW51bSksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxQcm9wZXJ0eVNsb3Q6OkdldFZhbHVlRnVuYz4oanNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0aWNfY2FzdDxQdXRQ
cm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIiwgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2VQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTg4LDcgKzE4OCw3IEBAIHZvaWQgSlNUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yc1dpdGhTZXF1ZW5jZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBD
bGFzc0luZm8gSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZv
ID0geyAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTo6c19pbmZvID0geyAiVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dp
dGhTZXF1ZW5jZSkgfTsKIAogSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZTo6SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZShTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2U+KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcApp
bmRleCBkNTM3YWFiOGI0ZTRkZGZkMGIxZDZhMThjODA1ZmEwYjcxYzA5NTQwLi41MzgzODJhZTYy
Mzk2ZGNhODE3MzQ4ODJjMjkxMmFlNWVkYWQ0MTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50
ZXJmYWNlLmNwcApAQCAtODQsNyArODQsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUsIEpTVGVzdFBsdWdpbgogCiB1
c2luZyBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFBsdWdpbkludGVyZmFjZT47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFj
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UGx1Z2luSW50ZXJmYWNlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFBs
dWdpbkludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0UGx1Z2luSW50ZXJmYWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEwOCw3ICsxMDgsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UGx1Z2lu
SW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0b3IiLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pLCBO
b0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1
ZUZ1bmM+KGpzVGVzdFBsdWdpbkludGVyZmFjZUNvbnN0cnVjdG9yKSwgKGludHB0cl90KSBzdGF0
aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oMCkgfSB9LAogfTsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZVByb3RvdHlwZTo6c19pbmZvID0geyAi
VGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90b3R5cGUpIH07CiAK
IHZvaWQgSlNUZXN0UGx1Z2luSW50ZXJmYWNlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCiB7CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBKU1Rlc3RQbHVnaW5JbnRlcmZhY2VQcm90
b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRI
T1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVy
ZmFjZTo6c19pbmZvID0geyAiVGVzdFBsdWdpbkludGVyZmFjZSIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UGx1Z2luSW50ZXJmYWNl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFBsdWdpbkludGVyZmFjZTo6c19pbmZvID0geyAi
VGVzdFBsdWdpbkludGVyZmFjZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RQbHVnaW5JbnRlcmZhY2UpIH07CiAKIEpTVGVzdFBs
dWdpbkludGVyZmFjZTo6SlNUZXN0UGx1Z2luSW50ZXJmYWNlKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFBsdWdpbkludGVyZmFj
ZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RQbHVnaW5JbnRlcmZhY2U+KHN0cnVj
dHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50LmNwcAppbmRleCAwN2Q5YzcxZmI3NTM3NWE1YzUxNmMzMWJmYTc5
MjAwODExM2ZlNzQ1Li4zMDY3MmQyZGQ0MTUzYWQ0YjgzZGJkNTFiZTM5OWZlNGI0ZWFkNzFlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcApAQCAtMTk1LDcg
KzE5NSw3IEBAIHRlbXBsYXRlPD4gRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTF9BVFRSSUJV
VEVTIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPCiB9CiBKU0NfQU5OT1RBVEVfSE9TVF9G
VU5DVElPTihKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3RvckNvbnN0cnVj
dCwgSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVu
dERPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Iiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RQcm9taXNlUmVqZWN0aW9uRXZlbnRET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudERPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rp
b25FdmVudERPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50RE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTIyMCw3ICsyMjAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAicmVhc29uIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OlJlYWRPbmx5IHwg
SlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6Q3VzdG9tQWNjZXNzb3IgfCBKU0M6OlByb3BlcnR5QXR0
cmlidXRlOjpET01BdHRyaWJ1dGUpLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UHJvcGVydHlTbG90OjpHZXRWYWx1ZUZ1bmM+KGpzVGVzdFByb21pc2VSZWplY3Rpb25FdmVu
dF9yZWFzb24pLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFByb3BlcnR5U2xvdDo6UHV0VmFs
dWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50UHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudFByb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnRQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTIyOSw3ICsyMjksNyBAQCB2b2lkIEpTVGVzdFByb21pc2VS
ZWplY3Rpb25FdmVudFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQpIH07Citjb25zdCBDbGFzc0luZm8g
SlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50OjpzX2luZm8gPSB7ICJUZXN0UHJvbWlzZVJlamVj
dGlvbkV2ZW50Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEpTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudCkgfTsKIAogSlNUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50OjpKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50PiYmIGltcGwpCiAgICAgOiBKU0V2ZW50KHN0cnVjdHVyZSwgZ2xvYmFs
T2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcApp
bmRleCA0Zjk2MzA1OTVmZDE3ZTIyYWZkNDAxZTVhMDg1YjNjN2ZmOTExYzhjLi42MDQ2Y2JhYzc4
OTVmNzZjZTkwZjE4OTdmODllMGRmNmY0OWVhOTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlN
YXBMaWtlLmNwcApAQCAtOTksNyArOTksNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9T
SEFSQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5cGUsIEpTVGVzdFJlYWRPbgogCiB1
c2luZyBKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFJlYWRPbmx5TWFwTGlrZT47CiAKLXRlbXBsYXRlPD4g
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seU1hcExpa2VET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFJlYWRPbmx5TWFwTGlr
ZURPTUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0UmVhZE9ubHlNYXBMaWtlIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJl
YWRPbmx5TWFwTGlrZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNU
ZXN0UmVhZE9ubHlNYXBMaWtlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAg
LTEzMCw3ICsxMzAsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0UmVhZE9u
bHlNYXBMaWtlUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiZm9yRWFjaCIsIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50
cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0
UmVhZE9ubHlNYXBMaWtlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJfdCkgKDEp
IH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5TWFwTGlrZVBy
b3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExpa2VQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtl
UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlYWRPbmx5TWFwTGlrZVByb3RvdHlwZTo6Zmlu
aXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgSlNUZXN0UmVh
ZE9ubHlNYXBMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RSZWFkT25seU1hcExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFJlYWRPbmx5TWFwTGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seU1hcExp
a2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seU1hcExpa2UiX3MsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlNYXBMaWtl
KSB9OwogCiBKU1Rlc3RSZWFkT25seU1hcExpa2U6OkpTVGVzdFJlYWRPbmx5TWFwTGlrZShTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRl
c3RSZWFkT25seU1hcExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9u
bHlNYXBMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFk
T25seVNldExpa2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKaW5kZXggMzRmZTg1N2QyM2U5YTZhNWFkOGZlMjFj
ZTBmMWRhZjlkNTlmYmY4OS4uMTVlNjEzODg0ODQ1MjAwY2I3MjY4YzFhOGUzZTE2MmJhYTgwNzMw
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5jcHAKQEAgLTk4LDcgKzk4LDcgQEAg
U1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0UmVhZE9ubHlTZXRMaWtl
UHJvdG90eXBlLCBKU1Rlc3RSZWFkT24KIAogdXNpbmcgSlNUZXN0UmVhZE9ubHlTZXRMaWtlRE9N
Q29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RSZWFk
T25seVNldExpa2U+OwogCi10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25s
eVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlYWRPbmx5U2V0TGlrZSIs
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0UmVhZE9ubHlTZXRMaWtlRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENs
YXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdFJlYWRPbmx5U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZWFkT25seVNldExpa2VET01Db25zdHJ1Y3Rvcikg
fTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0TGlrZURPTUNvbnN0cnVj
dG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMjgsNyArMTI4LDcgQEAgc3RhdGljIGNvbnN0
IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlwZVRhYmxlVmFsdWVz
W10gPQogICAgIHsgImZvckVhY2giLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiks
IE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4o
anNUZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlRnVuY3Rpb25fZm9yRWFjaCksIChpbnRwdHJf
dCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlYWRPbmx5U2V0
TGlrZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2VQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlT
ZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFJlYWRPbmx5U2V0TGlrZVByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTM4LDcgKzEzOCw3IEBAIHZvaWQgSlNU
ZXN0UmVhZE9ubHlTZXRMaWtlUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAg
SlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU1Rlc3RSZWFkT25seVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExp
a2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFJlYWRPbmx5U2V0TGlrZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZWFkT25s
eVNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RSZWFkT25seVNldExpa2UiX3MsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0UmVhZE9ubHlT
ZXRMaWtlKSB9OwogCiBKU1Rlc3RSZWFkT25seVNldExpa2U6OkpTVGVzdFJlYWRPbmx5U2V0TGlr
ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwg
UmVmPFRlc3RSZWFkT25seVNldExpa2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0
UmVhZE9ubHlTZXRMaWtlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKaW5kZXggMDdmNWY5
MTExMGU5NjI1MzFmNWFhYjNlMWVmOTcyNjc4OTMwZTA5OS4uOWVkMGQ3YTk1NmNlZDc0YWYzMTgz
M2MwZTk0N2FmNWZjN2EwZjhhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVt
b3J5Q29zdC5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0Vf
U0hBUkFCTEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlLCBKU1Rlc3QKIAog
dXNpbmcgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdCJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3RET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1ZhbHVlIEpTVGVzdFJlcG9y
dEV4dHJhTWVtb3J5Q29zdERPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0x
MDcsNyArMTA3LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFJlcG9ydEV4
dHJhTWVtb3J5Q29zdFByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9y
Iiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVt
KSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0
VmFsdWVGdW5jPihqc1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RDb25zdHJ1Y3RvciksIChpbnRw
dHJfdCkgc3RhdGljX2Nhc3Q8UHV0UHJvcGVydHlTbG90OjpQdXRWYWx1ZUZ1bmM+KDApIH0gfSwK
IH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3RQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRy
YU1lbW9yeUNvc3RQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNv
c3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVz
dFJlcG9ydEV4dHJhTWVtb3J5Q29zdFByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
ewpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0UHJv
dG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lU
SE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRy
YU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RSZXBvcnRFeHRy
YU1lbW9yeUNvc3Q6OnNfaW5mbyA9IHsgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QiX3MsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
UmVwb3J0RXh0cmFNZW1vcnlDb3N0KSB9OwogCiBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q6
OkpTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdChTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3Q+
JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0Pihz
dHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKaW5kZXggYmNhMGJl
NTU1YWU2ZWEyZTk0OTk2NThmNTUyNzI2M2YzZTlmZDVhMi4uNDExNjZlMjE1ZjNmM2U0N2UzNTNh
ZjM4MWRlMmZmMWUyMmE0YjYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAKQEAgLTEwOSw3ICsxMDksNyBAQCBTVEFUSUNf
QVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJ
bnRlcmZhY2VQcm90b3R5cAogCiB1c2luZyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2VET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxlPEpT
VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZT47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVj
dG9yOjpzX2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIiwgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRl
PD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZURPTUNvbnN0cnVjdG9yKSB9
OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2bSwgY29u
c3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTE0MCw3ICsxNDAsNyBA
QCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlUHJvdG90eXBlVGFibGVWYQogICAgIHsgImZ1bmN0aW9uUmV0dXJuaW5nIiwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9J
bnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9mdW5jdGlv
blJldHVybmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsg
IlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxp
emVkU2NyaXB0VmFsdWVJbnRlcmZhY2VQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxp
emVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTQ5LDcgKzE0OSw3
IEBAIHZvaWQgSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlUHJvdG90eXBlOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFO
U0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSkgfTsKK2NvbnN0IENsYXNzSW5m
byBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnNfaW5mbyA9IHsgIlRlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVl
SW50ZXJmYWNlKSB9OwogCiBKU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OkpT
VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwg
SlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTZXJpYWxpemVkU2NyaXB0
VmFsdWVJbnRlcmZhY2U+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlSW50ZXJmYWNlPihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShp
bXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTZXRMaWtlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTZXRMaWtlLmNwcAppbmRleCBlN2Q0NzZiY2MzNDNiNTgyN2E0NzRiMTk5OWJk
MDM1N2E3MjNlMjJlLi5iMzc1MTdlMDg2OTFmNzgzMDM1NTU3ZjliZjcyMDVhYjQ3ODQ3YTRlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U2V0TGlrZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNldExpa2UuY3BwCkBAIC0xMDEsNyArMTAxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09f
U1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSwgSlNUZXN0U2V0TGlrZVBy
b3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U2V0TGlrZT47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNl
dExpa2UiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFNldExpa2VET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExp
a2UiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUg
SlNUZXN0U2V0TGlrZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzQs
NyArMTM0LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VQcm90
b3R5cGVUYWJsZVZhbHVlc1tdID0KICAgICB7ICJkZWxldGUiLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0gfCBKU0M6OlByb3BlcnR5QXR0cmli
dXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdO
YXRpdmVGdW5jdGlvbj4oanNUZXN0U2V0TGlrZVByb3RvdHlwZUZ1bmN0aW9uX2RlbGV0ZSksIChp
bnRwdHJfdCkgKDEpIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJv
dG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVByb3RvdHlwZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0
U2V0TGlrZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTZXRMaWtlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTVGVzdFNldExpa2VQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTE0NCw3ICsxNDQsNyBAQCB2
b2lkIEpTVGVzdFNldExpa2VQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtlIiwgJkJhc2U6OnNfaW5m
bywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTZXRMaWtlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2U6OnNfaW5mbyA9IHsgIlRlc3RTZXRMaWtl
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFNldExpa2UpIH07CiAKIEpTVGVzdFNldExpa2U6OkpTVGVzdFNldExpa2UoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
U2V0TGlrZT4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlPihzdHJ1Y3R1
cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5P
cGVyYXRpb25zLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmNwcAppbmRleCA0MDI0MzlhYjBj
ZDk0N2FlMmI3MjA5NzQ5MDc4MGZmMTNiOGE5NzE4Li4zNTJjODYzZjNhMWEwMjk1NTExMmI5NjYx
MWE5M2M3NzczYTI2ZWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VX
aXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgU1RBVElDX0FT
U0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9uc1Byb3RvdHkKIAogdXNpbmcgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9uc0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8SlNU
ZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucz47CiAKLXRlbXBsYXRlPD4gY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1
Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiLCAm
QmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVz
dFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc0RPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9uc0RPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMzgsNyAr
MTM4LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGVUYWJsZVYKICAgICB7ICJjbGVhciIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSB8IEpTQzo6UHJv
cGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRp
Y19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zUHJvdG90eXBlRnVuY3Rpb25fY2xlYXIpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9Owog
Ci1jb25zdCBDbGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1By
b3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMi
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnNQcm90b3R5cGUpIH07Citjb25zdCBD
bGFzc0luZm8gSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uc1Byb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RT
ZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0pCiB7CkBAIC0xNDgsNyArMTQ4LDcgQEAgdm9pZCBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlND
X1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5m
byBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9ucykgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zOjpzX2luZm8gPSB7ICJUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zKSB9OwogCiBKU1Rlc3RT
ZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOjpKU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zKFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xv
YmFsT2JqZWN0LCBSZWY8VGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnM+JiYgaW1w
bCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9u
cz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmlu
Z2lmaWVyLmNwcAppbmRleCBlYTI5MTM0ZjMyYTVlMmVkNDJiZWYxZTIzZWYyN2VmNzhmOWY1OTg0
Li5mZDk4Yjc0NGQ0YzZkMmYyMzY4Mzc0ZjE2ZjUyZDUxMjc3Y2MzNjU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
dHJpbmdpZmllci5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BB
Q0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJQcm90b3R5cGUsIEpTVGVzdFN0cmluZ2lmaWUK
IAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0
b3JOb3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyPjsKIAotdGVtcGxhdGU8PiBjb25z
dCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdFN0cmluZ2lmaWVyIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9yKSB9OwordGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiVGVzdFN0cmluZ2lmaWVyIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxs
cHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckRPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAg
ICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJp
YnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3
TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJp
bmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3Ry
aW5naWZpZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5n
aWZpZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJQcm90
b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllciJfcywgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclByb3Rv
dHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclByb3RvdHlwZTo6ZmluaXNoQ3JlYXRp
b24oVk0mIHZtKQogewpAQCAtMTIzLDcgKzEyMyw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJQ
cm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19X
SVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lm
aWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRy
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyKSB9OworY29u
c3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZp
ZXIiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0U3RyaW5naWZpZXIpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyOjpKU1Rlc3RTdHJp
bmdpZmllcihTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9i
amVjdCwgUmVmPFRlc3RTdHJpbmdpZmllcj4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRl
c3RTdHJpbmdpZmllcj4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmNw
cAppbmRleCAwYmM2YzgyOWI2NzVhZmY3OTMxZTBmMmVmYWRlNDViMWNhMmVlODRhLi5jMWNlM2M0
Y2E2YjZlNjg0YzA5NjNmMjBkNGM3ODZjY2M5MDg0MmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5jcHAKQEAgLTg5LDcgKzg5LDcg
QEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZpZXJB
bm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGUKIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJBbm9u
eW1vdXNPcGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1
Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPjsKIAotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb25ET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbkRPTUNvbnN0cnVjdG9yKSB9OwordGVt
cGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRp
b25ET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3Bl
cmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uRE9NQ29uc3RydWN0b3Ip
IH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJh
dGlvbkRPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNv
bnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTQsNyArMTE0LDcg
QEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uUHJvdG90eXBlVGFibGVWYWwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2lj
LCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5n
aWZpZXJBbm9ueW1vdXNPcGVyYXRpb25Qcm90b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRw
dHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFu
b255bW91c09wZXJhdGlvblByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5v
bnltb3VzT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvblByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
blByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlKSB9OwogCiB2b2lk
IEpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmll
ckFub255bW91c09wZXJhdGlvblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAg
IEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRl
c3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIs
IG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNP
cGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiJf
cywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbikgfTsKIAogSlNUZXN0U3RyaW5naWZp
ZXJBbm9ueW1vdXNPcGVyYXRpb246OkpTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9u
KFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBS
ZWY8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPiYmIGltcGwpCiAgICAgOiBKU0RP
TVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uPihzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uLmNwcAppbmRleCA3YzFlMjY5YjkzZmQyNWZjODE1Y2YzMGVmMDI3
ZWRjNDZkZDM4Njc4Li40NDM2NTEzNzEyOWNmOGQyZGM3MTFjNTNlN2Q5MTJkMzU4MTdmZmNhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uY3BwCkBA
IC05MCw3ICs5MCw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGUsIEpTCiAKIHVzaW5nIEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3RvciA9IEpTRE9NQ29uc3RydWN0b3JO
b3RDb25zdHJ1Y3RhYmxlPEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24+OwogCi10ZW1w
bGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIiwg
JkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rl
c3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+
IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uRE9NQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFz
ZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBK
U1ZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25ET01Db25zdHJ1Y3Rvcjo6cHJv
dG90eXBlRm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYg
Z2xvYmFsT2JqZWN0KQogewpAQCAtMTE2LDcgKzExNiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFi
bGVWYWx1ZSBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlVGFibGVWYWx1
ZXNbCiAgICAgeyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0
eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nh
c3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90
b3R5cGVGdW5jdGlvbl90b1N0cmluZyksIChpbnRwdHJfdCkgKDApIH0gfSwKIH07CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbiIsICZCYXNlOjpzX2luZm8sIG51
bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJOYW1l
ZE9wZXJhdGlvblByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmll
ck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJOYW1l
ZE9wZXJhdGlvbiJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uUHJvdG90eXBlKSB9Owog
CiB2b2lkIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpTVGVzdFN0cmluZ2lm
aWVyTmFtZWRPcGVyYXRpb25Qcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKICAgICBK
U0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3QgQ2xhc3NJ
bmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5mbyA9IHsgIlRlc3RTdHJp
bmdpZmllck5hbWVkT3BlcmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OnNfaW5mbyA9
IHsgIlRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIl9zLCAmQmFzZTo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRP
cGVyYXRpb24pIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb246OkpTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24oU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFs
T2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbj4m
JiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9u
PihzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdCwgV1RGTW92ZShpbXBsKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9w
ZXJhdGlvbkltcGxlbWVudGVkQXMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKaW5k
ZXggNTUzMzY3OWM4NjYyNjEwZjI4MWQyZmViMTBlNTUxZGYxM2FmMzBjYi4uOWFiYTY0NmI3ZmE4
MmY1M2FiNDllZTA3ODAwYWM0ODc0OTMyMWZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVt
ZW50ZWRBcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5jcHAKQEAgLTkwLDcgKzkw
LDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzUHJvdG8KIAogdXNpbmcgSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25JbXBsZW1lbnRlZEFzRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVjdG9yTm90
Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXM+Owog
Ci10ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbklt
cGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uSW1wbGVtZW50ZWRBcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFz
RE9NQ29uc3RydWN0b3IpIH07Cit0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcyJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9w
ZXJhdGlvbkltcGxlbWVudGVkQXNET01Db25zdHJ1Y3RvcikgfTsKIAogdGVtcGxhdGU8PiBKU1Zh
bHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc0RPTUNvbnN0cnVjdG9y
Ojpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2Jq
ZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3Rv
dHlwZVRhYmwKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlBy
b3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0
aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzUHJvdG90eXBlRnVuY3Rpb25fdG9TdHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0s
CiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRl
ZEFzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZSkg
fTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXNQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEyNSw3ICsxMjUsNyBAQCB2b2lkIEpT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBc1Byb3RvdHlwZTo6ZmluaXNoQ3Jl
YXRpb24oVk0mIHZtKQogICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigp
OwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFz
IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMpIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzOjpzX2luZm8gPSB7ICJU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIl9zLCAmQmFzZTo6c19pbmZvLCBu
dWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uSW1wbGVtZW50ZWRBcykgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzOjpKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMoU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFJlZjxUZXN0
U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzPiYmIGltcGwpCiAgICAgOiBKU0RPTVdy
YXBwZXI8VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcz4oc3RydWN0dXJlLCBn
bG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRv
U3RyaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCmluZGV4IGMwNjVkNzJhN2Zi
MTBiOWY2NmUwYjc5ZTg3NDYxZWJjYzY4YTk1NjcuLmNiZGY4YWFmZWM4YzQ0MWMxOTdiODlhMWJj
YjQxZWYwOGQ2MjQzNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuY3BwCkBAIC04OSw3ICs4OSw3IEBAIFNUQVRJQ19B
U1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZ1Byb3RvCiAKIHVzaW5nIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRU
b1N0cmluZ0RPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGU8
SlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nPjsKIAotdGVtcGxhdGU8PiBj
b25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nRE9N
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9T
dHJpbmciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ0RPTUNvbnN0cnVjdG9y
KSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25OYW1lZFRvU3RyaW5nRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbk5hbWVkVG9TdHJpbmciX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRv
U3RyaW5nRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9y
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2Jq
ZWN0KQogewpAQCAtMTE0LDcgKzExNCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBK
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGVUYWJsCiAgICAg
eyAidG9TdHJpbmciLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0
ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0
aXZlRnVuY3Rpb24+KGpzVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3Rv
dHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGludHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlw
ZTo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZC
YXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZ1Byb3RvdHlwZTo6
c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJh
c2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RT
dHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nUHJvdG90eXBlOjpmaW5pc2hDcmVh
dGlvbihWTSYgdm0pCiB7CkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBKU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbk5hbWVkVG9TdHJpbmdQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkK
ICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0KIAotY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19pbmZv
ID0geyAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyIsICZCYXNlOjpzX2lu
Zm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZp
ZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmlu
Z2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVy
T3BlcmF0aW9uTmFtZWRUb1N0cmluZyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0
ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9T
dHJpbmcpIH07CiAKIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZzo6SlNU
ZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nKFN0cnVjdHVyZSogc3RydWN0dXJl
LCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFN0cmluZ2lmaWVyT3Bl
cmF0aW9uTmFtZWRUb1N0cmluZz4mJiBpbXBsKQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJp
bmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmc+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBX
VEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGUuY3BwCmluZGV4IDliZGM0ZTMwMjk3MGE2MjI5NzBjZTVmZGM2MGMwMjIwMDJj
YTAzMGYuLjNjYWVkODgyNzQ0NzEyNDUyNzE4OTMwYThmYTQxMzllNzQ2NjgwZmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
ZmllclJlYWRPbmx5QXR0cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5jcHAKQEAg
LTkxLDcgKzkxLDcgQEAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZSwKIAogdXNpbmcgSlNUZXN0U3Ry
aW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVjdG9yID0gSlNET01Db25zdHJ1Y3Rv
ck5vdENvbnN0cnVjdGFibGU8SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZT47CiAK
LXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRy
aWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlB
dHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcikg
fTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlB
dHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZURPTUNvbnN0cnVj
dG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0
dHJpYnV0ZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC0xMTcsNyArMTE3
LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9u
bHlBdHRyaWJ1dGVQcm90b3R5cGVUYWJsZVZhbHUKICAgICB7ICJ0b1N0cmluZyIsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihKU0M6OlByb3BlcnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmlu
c2ljLCB7IChpbnRwdHJfdClzdGF0aWNfY2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0U3Ry
aW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZUZ1bmN0aW9uX3RvU3RyaW5nKSwgKGlu
dHB0cl90KSAoMCkgfSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVy
UmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlUHJvdG90eXBl
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlIl9z
LCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24o
Vk0mIHZtKQogewpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZVByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogICAgIEpTQ19U
T19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOwogfQogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6c19pbmZvID0geyAiVGVzdFN0cmlu
Z2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRy
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTo6
c19pbmZvID0geyAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUiX3MsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5n
aWZpZXJSZWFkT25seUF0dHJpYnV0ZSkgfTsKIAogSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0
dHJpYnV0ZTo6SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdp
ZmllclJlYWRPbmx5QXR0cmlidXRlPiYmIGltcGwpCiAgICAgOiBKU0RPTVdyYXBwZXI8VGVzdFN0
cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKGltcGwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0
ZUF0dHJpYnV0ZS5jcHAKaW5kZXggZWZiYzRlNjM1YWY4ZDk2MjJjNTBjM2IyMDdjOWU5YmU1YWVh
NDBhYS4uODQwYzVlNmUyZmZmMTFhYzgzYTQzNDNlMjVmMjQ5OTA3MjhkMDA3ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuY3BwCkBA
IC05Miw3ICs5Miw3IEBAIFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKEpTVGVz
dFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlCiAKIHVzaW5nIEpTVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNvbnN0cnVj
dG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT47
CiAKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRl
QXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1
Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlRE9NQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmll
clJlYWRXcml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZURP
TUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0U3RyaW5naWZpZXJS
ZWFkV3JpdGVBdHRyaWJ1dGVET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBlRm9yU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQogewpAQCAt
MTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1Rlc3RTdHJpbmdp
ZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlwZVRhYmxlVmFsCiAgICAgeyAidG9TdHJpbmci
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24p
LCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+
KGpzVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlUHJvdG90eXBlRnVuY3Rpb25fdG9T
dHJpbmcpLCAoaW50cHRyX3QpICgwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8gSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RT
dHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRy
aWJ1dGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlRlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZSJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlw
ZSkgfTsKIAogdm9pZCBKU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZVByb3RvdHlw
ZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQogewpAQCAtMTI3LDcgKzEyNyw3IEBAIHZvaWQgSlNU
ZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKIH0K
IAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpz
X2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUiLCAmQmFzZTo6c19p
bmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFN0cmluZ2lm
aWVyUmVhZFdyaXRlQXR0cmlidXRlOjpzX2luZm8gPSB7ICJUZXN0U3RyaW5naWZpZXJSZWFkV3Jp
dGVBdHRyaWJ1dGUiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUpIH07CiAKIEpT
VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlOjpKU1Rlc3RTdHJpbmdpZmllclJlYWRX
cml0ZUF0dHJpYnV0ZShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCwgUmVmPFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4mJiBpbXBs
KQogICAgIDogSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZT4o
c3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2Vk
V3JhcHBlci5jcHAKaW5kZXggZGRiOTY1ZGQ2ZmU2NTQ5MTNkOTJkZjlmODIzYzFhM2JjY2ZiOTdl
Mi4uZmZhMGNlNzdjYzI5ZjE0NjI5NTEzMmU3NzcwZmRiNDIwYTU0NTNmNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBw
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUYWdnZWRXcmFwcGVyLmNwcApAQCAtODMsNyArODMsNyBAQCBTVEFUSUNfQVNTRVJUX0lTT19T
VUJTUEFDRV9TSEFSQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlLCBKU1Rlc3RUYWdn
ZWRXcgogCiB1c2luZyBKU1Rlc3RUYWdnZWRXcmFwcGVyRE9NQ29uc3RydWN0b3IgPSBKU0RPTUNv
bnN0cnVjdG9yTm90Q29uc3RydWN0YWJsZTxKU1Rlc3RUYWdnZWRXcmFwcGVyPjsKIAotdGVtcGxh
dGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VGFnZ2VkV3JhcHBlckRPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNUZXN0VGFnZ2VkV3JhcHBlckRP
TUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRX
cmFwcGVyRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1Rlc3RUYWdn
ZWRXcmFwcGVyRE9NQ29uc3RydWN0b3I6OnByb3RvdHlwZUZvclN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKIHsKQEAgLTEwNyw3ICsx
MDcsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0VGFnZ2VkV3JhcHBlclBy
b3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNvbnN0cnVjdG9yIiwgc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSwgTm9JbnRyaW5zaWMs
IHsgKGludHB0cl90KXN0YXRpY19jYXN0PFByb3BlcnR5U2xvdDo6R2V0VmFsdWVGdW5jPihqc1Rl
c3RUYWdnZWRXcmFwcGVyQ29uc3RydWN0b3IpLCAoaW50cHRyX3QpIHN0YXRpY19jYXN0PFB1dFBy
b3BlcnR5U2xvdDo6UHV0VmFsdWVGdW5jPigwKSB9IH0sCiB9OwogCi1jb25zdCBDbGFzc0luZm8g
SlNUZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdyYXBw
ZXIiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTVGVzdFRhZ2dlZFdyYXBwZXJQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0
VGFnZ2VkV3JhcHBlclByb3RvdHlwZTo6c19pbmZvID0geyAiVGVzdFRhZ2dlZFdyYXBwZXIiX3Ms
ICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNU
ZXN0VGFnZ2VkV3JhcHBlclByb3RvdHlwZSkgfTsKIAogdm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVy
UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiB7CkBAIC0xMTYsNyArMTE2LDcgQEAg
dm9pZCBKU1Rlc3RUYWdnZWRXcmFwcGVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3Jh
cHBlciIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNUZXN0VGFnZ2VkV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Rlc3RUYWdnZWRX
cmFwcGVyOjpzX2luZm8gPSB7ICJUZXN0VGFnZ2VkV3JhcHBlciJfcywgJkJhc2U6OnNfaW5mbywg
bnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUYWdnZWRXcmFwcGVy
KSB9OwogCiBKU1Rlc3RUYWdnZWRXcmFwcGVyOjpKU1Rlc3RUYWdnZWRXcmFwcGVyKFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBSZWY8VGVzdFRh
Z2dlZFdyYXBwZXI+JiYgaW1wbCkKICAgICA6IEpTRE9NV3JhcHBlcjxUZXN0VGFnZ2VkV3JhcHBl
ciwgU2lnbmVkUHRyVHJhaXRzPFRlc3RUYWdnZWRXcmFwcGVyLCBUZXN0VGFnZ2VkV3JhcHBlclB0
clRhZz4+KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKGltcGwpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBl
ZGVmcy5jcHAKaW5kZXggYzJiY2VlYTEyZjY3YWY1NjU3ZGU1ZTllOGVhYWI3YWQ1Y2NjMmFjMC4u
YmMxOWI4M2Q4NjYzZDhlNGZhMmFhZjFhNmJhZDQ3MmRkNDgxYTFjYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRl
ZnMuY3BwCkBAIC0xODcsNyArMTg3LDcgQEAgdGVtcGxhdGU8PiBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMX0FUVFJJQlVURVMgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcjoKIH0KIEpT
Q19BTk5PVEFURV9IT1NUX0ZVTkNUSU9OKEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3JDb25z
dHJ1Y3QsIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OmNvbnN0cnVjdCk7CiAKLXRlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RUeXBlZGVmcyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBs
YXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzRE9NQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVsbHB0ciwg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU1Rlc3RUeXBlZGVmc0RPTUNvbnN0cnVjdG9yKSB9OwogCiB0
ZW1wbGF0ZTw+IEpTVmFsdWUgSlNUZXN0VHlwZWRlZnNET01Db25zdHJ1Y3Rvcjo6cHJvdG90eXBl
Rm9yU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0KQogewpAQCAtMjMyLDcgKzIzMiw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1
ZSBKU1Rlc3RUeXBlZGVmc1Byb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogICAgIHsgImNhbGxXaXRo
U2VxdWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6
UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwgTm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0
YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihqc1Rlc3RUeXBlZGVmc1Byb3RvdHlwZUZ1bmN0
aW9uX2NhbGxXaXRoU2VxdWVuY2VUaGF0UmVxdWlyZXNJbmNsdWRlKSwgKGludHB0cl90KSAoMSkg
fSB9LAogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJUZXN0VHlwZWRlZnMiLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTVGVzdFR5cGVkZWZzUHJvdG90eXBlOjpzX2luZm8gPSB7ICJUZXN0VHlwZWRlZnMi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNUZXN0VHlwZWRlZnNQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNUZXN0VHlwZWRlZnNQcm90b3R5
cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTI0MSw3ICsyNDEsNyBAQCB2b2lkIEpT
VGVzdFR5cGVkZWZzUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RP
X1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBK
U1Rlc3RUeXBlZGVmczo6c19pbmZvID0geyAiVGVzdFR5cGVkZWZzIiwgJkJhc2U6OnNfaW5mbywg
JkpTVGVzdFR5cGVkZWZzVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0
VHlwZWRlZnMpIH07Citjb25zdCBDbGFzc0luZm8gSlNUZXN0VHlwZWRlZnM6OnNfaW5mbyA9IHsg
IlRlc3RUeXBlZGVmcyJfcywgJkJhc2U6OnNfaW5mbywgJkpTVGVzdFR5cGVkZWZzVGFibGUsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0VHlwZWRlZnMpIH07CiAKIEpTVGVzdFR5
cGVkZWZzOjpKU1Rlc3RUeXBlZGVmcyhTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9iYWxP
YmplY3QmIGdsb2JhbE9iamVjdCwgUmVmPFRlc3RUeXBlZGVmcz4mJiBpbXBsKQogICAgIDogSlNE
T01XcmFwcGVyPFRlc3RUeXBlZGVmcz4oc3RydWN0dXJlLCBnbG9iYWxPYmplY3QsIFdURk1vdmUo
aW1wbCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5jcHAKaW5kZXggM2Q5NDdhMzE5YTUwYjI0
MGMxZTZkZTFlODczNWZhM2ZmZDI5YzExMi4uZWMwMTI3MTRmMGM5Nzg0Mzg2ODRmNGVhMDlkNmNm
OTgxYzViZDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtOTksNyArOTks
NyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxl
VmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBKU1dvcmtlckdsb2JhbFNj
b3BlVGFibGUgPSB7IDYsIDE1LCB0cnVlLCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpT
V29ya2VyR2xvYmFsU2NvcGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxlSW5k
ZXggfTsKLXRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVET01D
b25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmQmFzZTo6c19pbmZv
LCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2Nv
cGVET01Db25zdHJ1Y3RvcikgfTsKK3RlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTV29ya2Vy
R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUi
X3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUo
SlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yKSB9OwogCiB0ZW1wbGF0ZTw+IEpTVmFs
dWUgSlNXb3JrZXJHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7
CkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZVZhbHVlIEpTV29ya2Vy
R2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZVZhbHVlc1tdID0KIH07CiAKIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVl
LCBKU1dvcmtlckdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5
cGVUYWJsZVZhbHVlcywgSlNXb3JrZXJHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsK
LWNvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJXb3JrZXJHbG9iYWxTY29wZSIsICZCYXNlOjpzX2luZm8sICZKU1dvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrZXJHbG9i
YWxTY29wZVByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3Bl
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5m
bywgJkpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGVUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlUHJvdG90eXBlKSB9OwogCiB2b2lkIEpTV29y
a2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAgLTEz
OCw3ICsxMzgsNyBAQCB2b2lkIEpTV29ya2VyR2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKICAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04o
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsg
Ildvcmtlckdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2VyR2xvYmFsU2NvcGVU
YWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlKSB9
OworY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGU6OnNfaW5mbyA9IHsgIldvcmtl
ckdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6c19pbmZvLCAmSlNXb3JrZXJHbG9iYWxTY29wZVRhYmxl
LCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGUpIH07CiAK
IEpTV29ya2VyR2xvYmFsU2NvcGU6OkpTV29ya2VyR2xvYmFsU2NvcGUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgUmVmPFdvcmtlckdsb2JhbFNjb3BlPiYmIGltcGwpCiAgICAgOiBKU0V2
ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2xldEds
b2JhbFNjb3BlLmNwcAppbmRleCBlZGYxZjE2ZmMxYTAwNzdjMDM3OTQxYTFiZmQyMmRiY2UyNDc1
MzM0Li5mNWY4NWFmNDgxZDFkYzI5Yjc5ODljYzc3NmI2OWViZmE0YWFhNzE0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFs
U2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1dvcmtsZXRHbG9iYWxTY29wZS5jcHAKQEAgLTY4LDcgKzY4LDcgQEAgc3RhdGljIGNvbnN0IEhh
c2hUYWJsZVZhbHVlIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVWYWx1ZXNbXSA9CiB9OwogCiBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGUgPSB7IDEsIDEs
IHRydWUsIEpTV29ya2xldEdsb2JhbFNjb3BlOjppbmZvKCksIEpTV29ya2xldEdsb2JhbFNjb3Bl
VGFibGVWYWx1ZXMsIEpTV29ya2xldEdsb2JhbFNjb3BlVGFibGVJbmRleCB9OwotdGVtcGxhdGU8
PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVET01Db25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtsZXRHbG9iYWxTY29wZURPTUNvbnN0cnVj
dG9yKSB9OwordGVtcGxhdGU8PiBjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVE
T01Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiV29ya2xldEdsb2JhbFNjb3BlIl9zLCAmQmFzZTo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2xldEds
b2JhbFNjb3BlRE9NQ29uc3RydWN0b3IpIH07CiAKIHRlbXBsYXRlPD4gSlNWYWx1ZSBKU1dvcmts
ZXRHbG9iYWxTY29wZURPTUNvbnN0cnVjdG9yOjpwcm90b3R5cGVGb3JTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCiB7CkBAIC05OCw3
ICs5OCw3IEBAIHN0YXRpYyBjb25zdCBIYXNoVGFibGVWYWx1ZSBKU1dvcmtsZXRHbG9iYWxTY29w
ZVByb3RvdHlwZVRhYmxlVmFsdWVzW10gPQogfTsKIAogc3RhdGljIGNvbnN0IEhhc2hUYWJsZSBK
U1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlID0geyAxLCAxLCB0cnVlLCBKU1dvcmts
ZXRHbG9iYWxTY29wZTo6aW5mbygpLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxl
VmFsdWVzLCBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZVRhYmxlSW5kZXggfTsKLWNvbnN0
IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZVByb3RvdHlwZTo6c19pbmZvID0geyAiV29y
a2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2JhbFNjb3BlUHJv
dG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFs
U2NvcGVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5m
bywgJkpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlVGFibGUsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGUpIH07CiAKIHZvaWQgSlNX
b3JrbGV0R2xvYmFsU2NvcGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKQEAg
LTEwNyw3ICsxMDcsNyBAQCB2b2lkIEpTV29ya2xldEdsb2JhbFNjb3BlUHJvdG90eXBlOjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0pCiAgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lU
SU9OKCk7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtsZXRHbG9iYWxTY29wZTo6c19pbmZv
ID0geyAiV29ya2xldEdsb2JhbFNjb3BlIiwgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2Jh
bFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFs
U2NvcGUpIH07Citjb25zdCBDbGFzc0luZm8gSlNXb3JrbGV0R2xvYmFsU2NvcGU6OnNfaW5mbyA9
IHsgIldvcmtsZXRHbG9iYWxTY29wZSJfcywgJkJhc2U6OnNfaW5mbywgJkpTV29ya2xldEdsb2Jh
bFNjb3BlVGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNXb3JrbGV0R2xvYmFs
U2NvcGUpIH07CiAKIEpTV29ya2xldEdsb2JhbFNjb3BlOjpKU1dvcmtsZXRHbG9iYWxTY29wZShW
TSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8V29ya2xldEdsb2JhbFNjb3BlPiYmIGlt
cGwpCiAgICAgOiBKU0V2ZW50VGFyZ2V0KHZtLCBzdHJ1Y3R1cmUsIFdURk1vdmUoaW1wbCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5t
bSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCmluZGV4
IGRiMzU4MGI4YjUxZWJlY2YzZTk4M2JiMjAwM2FkMjM1MDc0ZWNiMTkuLjliNjMyMmY0NjM0YjU5
NGQ0Mzk0ZmVlOTQwZDRmYTk0NjIyZDQwMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tCkBAIC0zMyw3ICszMyw3IEBACiBuYW1lc3BhY2Ug
SlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpDUnVudGlt
ZU9iamVjdDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVPYmplY3QiLCAmUnVudGltZU9iamVjdDo6
c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1l
T2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7
ICJPYmpDUnVudGltZU9iamVjdCJfcywgJlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgbnVsbHB0ciwg
bnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU9iamVjdCkgfTsKIAogT2Jq
Q1J1bnRpbWVPYmplY3Q6Ok9iakNSdW50aW1lT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1
Y3R1cmUsIFJlZlB0cjxPYmpjSW5zdGFuY2U+JiYgaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2Jq
ZWN0KHZtLCBzdHJ1Y3R1cmUsIGluc3RhbmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfaW5zdGFuY2UubW0KaW5kZXggNWIxYTgzNTNkOTAyZTFmOGQ3MzYyOGM2OTBiM2Y3NGIy
MGYxY2ZlNC4uNmFmNmVhMmI5MzAwNGU3OWEyNDZhNDMyYjVkZTU0YTIzMGU0NDZhYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCkBAIC0yMDUsNyArMjA1
LDcgQEAgcHJpdmF0ZToKICAgICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gT2JqQ1J1bnRpbWVN
ZXRob2Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRob2Q6OnNf
aW5mbywgbnVsbHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU1l
dGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU1ldGhvZDo6c19pbmZvID0geyAi
T2JqQ1J1bnRpbWVNZXRob2QiX3MsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIG51bGxwdHIsIG51
bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07CiAKIEpTQzo6
SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmdldE1ldGhvZChKU0dsb2JhbE9iamVjdCogbGV4aWNhbEds
b2JhbE9iamVjdCwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbSBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5tbQppbmRleCBiNDZjNTZmZDAxMDUwODY5NTdkY2Uz
MmRkNWY2NjY1NjljNGNhNmQzLi4xNWNiNmEwOGU1YzM1YzE3MjJjZGQzN2NhMzhhYzVjYTk0NGZh
MTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCkBAIC0y
MTUsNyArMjE1LDcgQEAgdW5zaWduZWQgaW50IE9iamNBcnJheTo6Z2V0TGVuZ3RoKCkgY29uc3QK
ICAgICByZXR1cm4gW19hcnJheSBjb3VudF07CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpjRmFs
bGJhY2tPYmplY3RJbXA6OnNfaW5mbyA9IHsgIk9iamNGYWxsYmFja09iamVjdCIsICZCYXNlOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqY0ZhbGxiYWNr
T2JqZWN0SW1wKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamNGYWxsYmFja09iamVjdEltcDo6c19p
bmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Il9zLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBu
dWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsKIAog
T2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpPYmpjRmFsbGJhY2tPYmplY3RJbXAoSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIE9iamNJbnN0YW5jZSogaSwg
Y29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChn
bG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X2FycmF5LmNwcAppbmRleCBhOWVhNjQyOGM1ZDExN2Y2ZmUyOGJkMGNjMTEyNDgzMjQxNmYxOWM1
Li5jMDVlM2E0MGU4MDU2NjVkYzBmZGVkMDJjMzA1MThlZDk2Mjg2MGMzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCkBAIC0zNyw3ICszNyw3IEBAIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRp
bWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25zdCBD
bGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiX3MsICZCYXNl
OjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFy
cmF5KSB9OwogCiBzdGF0aWMgSlNDX0RFQ0xBUkVfQ1VTVE9NX0dFVFRFUihhcnJheUxlbmd0aEdl
dHRlcik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhv
ZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCmluZGV4IDY1
OGY3M2NhZThhOTEwZDAwZmNjNWRjNjIwZTIzNzIxYzNiNzk2ZDAuLmUxOGVjMmM4OGUxODcwZjlk
NmU4ZTM2NDgxZDE3ZTVlOWRlMDFjMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9ydW50aW1lX21ldGhvZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVf
bWV0aG9kLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogdXNpbmcgbmFt
ZXNwYWNlIEJpbmRpbmdzOwogCi1XRUJDT1JFX0VYUE9SVCBjb25zdCBDbGFzc0luZm8gUnVudGlt
ZU1ldGhvZDo6c19pbmZvID0geyAiUnVudGltZU1ldGhvZCIsICZJbnRlcm5hbEZ1bmN0aW9uOjpz
X2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU1ldGhv
ZCkgfTsKK1dFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpzX2lu
Zm8gPSB7ICJSdW50aW1lTWV0aG9kIl9zLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCBudWxs
cHRyLCBudWxscHRyLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07CiAKIHN0
YXRpYyBKU0NfREVDTEFSRV9IT1NUX0ZVTkNUSU9OKGNhbGxSdW50aW1lTWV0aG9kKTsKIHN0YXRp
YyBKU0NfREVDTEFSRV9DVVNUT01fR0VUVEVSKG1ldGhvZExlbmd0aEdldHRlcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAppbmRleCA5ZDNmM2M1YzY5MDQ3YjJlNDAw
ZmMyNzJiNWE3N2U4ZWQzMzJiOWI3Li5iMjRmMmFlZjE5NGJhZDI1YjNhNjFlYjg4ZTc0MTQ3ZGNl
OTMxMGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKQEAgLTM2
LDcgKzM2LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBuYW1lc3BhY2UgSlNDIHsKIG5h
bWVzcGFjZSBCaW5kaW5ncyB7CiAKLVdFQkNPUkVfRVhQT1JUIGNvbnN0IENsYXNzSW5mbyBSdW50
aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJSdW50aW1lT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgbnVs
bHB0ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9OworV0VC
Q09SRV9FWFBPUlQgY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1
bnRpbWVPYmplY3QiX3MsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIsIENSRUFURV9N
RVRIT0RfVEFCTEUoUnVudGltZU9iamVjdCkgfTsKIAogc3RhdGljIEpTQ19ERUNMQVJFX0hPU1Rf
RlVOQ1RJT04oY29udmVydFJ1bnRpbWVPYmplY3RUb1ByaW1pdGl2ZSk7CiBzdGF0aWMgSlNDX0RF
Q0xBUkVfSE9TVF9GVU5DVElPTihjYWxsUnVudGltZU9iamVjdCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9DdXN0b21QYWludEltYWdlLmNwcAppbmRleCBmNGI5OGJhNjJlMTE5YTA3NzEzMTJkM2I4OGM0
OTE5MzY4MzZlZTM3Li5hYmQyZDc1NDIzMDI5Mjg0MzIxNTQ5NDQwMTM1YjgwMDY2YjRiNTI4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0N1c3RvbVBhaW50SW1hZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvQ3VzdG9tUGFpbnRJbWFnZS5jcHAKQEAgLTE1Niw3ICsxNTYs
NyBAQCBJbWFnZURyYXdSZXN1bHQgQ3VzdG9tUGFpbnRJbWFnZTo6ZG9DdXN0b21QYWludChHcmFw
aGljc0NvbnRleHQmIGRlc3RDb250ZXh0LCBjbwogCiAgICAgYXV0byYgbGV4aWNhbEdsb2JhbE9i
amVjdCA9IGdsb2JhbE9iamVjdDsKICAgICBKU0M6OkFyZ0xpc3Qgbm9BcmdzOwotICAgIEpTQzo6
SlNWYWx1ZSB0aGlzT2JqZWN0ID0geyBKU0M6OmNvbnN0cnVjdCgmbGV4aWNhbEdsb2JhbE9iamVj
dCwgcGFpbnRDb25zdHJ1Y3Rvciwgbm9BcmdzLCAiRmFpbGVkIHRvIGNvbnN0cnVjdCBwYWludCBj
bGFzcyIpIH07CisgICAgSlNDOjpKU1ZhbHVlIHRoaXNPYmplY3QgPSB7IEpTQzo6Y29uc3RydWN0
KCZsZXhpY2FsR2xvYmFsT2JqZWN0LCBwYWludENvbnN0cnVjdG9yLCBub0FyZ3MsICJGYWlsZWQg
dG8gY29uc3RydWN0IHBhaW50IGNsYXNzIl9zKSB9OwogCiAgICAgaWYgKFVOTElLRUxZKHNjb3Bl
LmV4Y2VwdGlvbigpKSkgewogICAgICAgICByZXBvcnRFeGNlcHRpb24oJmxleGljYWxHbG9iYWxP
YmplY3QsIHNjb3BlLmV4Y2VwdGlvbigpKTsK
</data>
<flag name="commit-queue"
          id="483608"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>