<?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>135421</bug_id>
          
          <creation_ts>2014-07-30 10:52:18 -0700</creation_ts>
          <short_desc>Static hash tables no longer need to be coupled with a VM.</short_desc>
          <delta_ts>2014-07-30 23:43:31 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>kling</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1025741</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 10:52:18 -0700</bug_when>
    <thetext>createTable(VM&amp;) does nothing with the VM. We can remove the argument and get rid of some code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025772</commentid>
    <comment_count>1</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 13:38:23 -0700</bug_when>
    <thetext>Oh man, this is snowballing..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025774</commentid>
    <comment_count>2</comment_count>
      <attachid>235759</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 13:50:28 -0700</bug_when>
    <thetext>Created attachment 235759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025775</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 13:52:03 -0700</bug_when>
    <thetext>Attachment 235759 did not pass style-queue:


ERROR: Source/WebCore/bindings/js/JSStorageCustom.cpp:67:  Multi line control clauses should use braces.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/runtime/JSTypedArrays.cpp:38:  preprocessor directives (e.g., #ifdef, #define, #import) should never be indented.  [whitespace/indent] [4]
ERROR: Source/JavaScriptCore/runtime/JSDataViewPrototype.cpp:79:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
Total errors found: 3 in 145 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025777</commentid>
    <comment_count>4</comment_count>
      <attachid>235759</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-07-30 13:58:52 -0700</bug_when>
    <thetext>Comment on attachment 235759
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025782</commentid>
    <comment_count>5</comment_count>
      <attachid>235760</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 14:10:23 -0700</bug_when>
    <thetext>Created attachment 235760
Patch for landing

With build system fixes for other ports..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025783</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 14:13:13 -0700</bug_when>
    <thetext>Attachment 235760 did not pass style-queue:


ERROR: Source/WebCore/bindings/js/JSStorageCustom.cpp:67:  Multi line control clauses should use braces.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/runtime/JSTypedArrays.cpp:38:  preprocessor directives (e.g., #ifdef, #define, #import) should never be indented.  [whitespace/indent] [4]
ERROR: Source/JavaScriptCore/runtime/JSDataViewPrototype.cpp:79:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
Total errors found: 3 in 147 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025786</commentid>
    <comment_count>7</comment_count>
      <attachid>235762</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 14:28:49 -0700</bug_when>
    <thetext>Created attachment 235762
Patch for landing

With win buildfix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025788</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 14:31:28 -0700</bug_when>
    <thetext>Attachment 235762 did not pass style-queue:


ERROR: Source/WebCore/bindings/js/JSStorageCustom.cpp:67:  Multi line control clauses should use braces.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/runtime/JSTypedArrays.cpp:38:  preprocessor directives (e.g., #ifdef, #define, #import) should never be indented.  [whitespace/indent] [4]
ERROR: Source/JavaScriptCore/runtime/JSDataViewPrototype.cpp:79:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
Total errors found: 3 in 148 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025798</commentid>
    <comment_count>9</comment_count>
      <attachid>235759</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-30 14:41:20 -0700</bug_when>
    <thetext>Comment on attachment 235759
Patch

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

&gt; Source/WebCore/ChangeLog:40
&gt; +        * bindings/js/DOMObjectHashTableMap.cpp: Removed.

Looks like we need to remove this from the other build systems, not just Xcode project files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025816</commentid>
    <comment_count>10</comment_count>
      <attachid>235762</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-30 15:52:59 -0700</bug_when>
    <thetext>Comment on attachment 235762
Patch for landing

Rejecting attachment 235762 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 235762, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
cess/Plugins/Netscape/JSNPMethod.cpp
Hunk #1 FAILED at 43.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit2/WebProcess/Plugins/Netscape/JSNPMethod.cpp.rej
patching file Source/WebKit2/WebProcess/Plugins/Netscape/JSNPObject.cpp
Hunk #1 FAILED at 55.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit2/WebProcess/Plugins/Netscape/JSNPObject.cpp.rej

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.appspot.com/results/5635845524553728</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025844</commentid>
    <comment_count>11</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-07-30 18:00:27 -0700</bug_when>
    <thetext>Committed r171824: &lt;http://trac.webkit.org/changeset/171824&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025872</commentid>
    <comment_count>12</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-07-30 19:08:27 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Committed r171824: &lt;http://trac.webkit.org/changeset/171824&gt;

FYI: It broke the Apple Windows build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1025921</commentid>
    <comment_count>13</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-07-30 23:43:31 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; Committed r171824: &lt;http://trac.webkit.org/changeset/171824&gt;
&gt; 
&gt; FYI: It broke the Apple Windows build.

The build is still broken, please fix it ASAP.

     1&gt;jsc.obj : error LNK2001: unresolved external symbol &quot;struct JSC::HashTable const JSC::globalObjectTable&quot; (?globalObjectTable@JSC@@3UHashTable@1@B)
     1&gt;C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\bin32\jsc.exe : fatal error LNK1120: 1 unresolved externals</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235759</attachid>
            <date>2014-07-30 13:50:28 -0700</date>
            <delta_ts>2014-07-30 14:41:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135421.diff</filename>
            <type>text/plain</type>
            <size>195978</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVdyYXBwZXJPYmplY3QubW0KaW5k
ZXggODk3ZTk2Zi4uMjEyZjFhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0FQSVdyYXBwZXJPYmplY3QubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0FQSVdyYXBwZXJPYmplY3QubW0KQEAgLTY4LDcgKzY4LDcgQEAgYm9vbCBKU0FQSVdyYXBwZXJP
YmplY3RIYW5kbGVPd25lcjo6aXNSZWFjaGFibGVGcm9tT3BhcXVlUm9vdHMoSlNDOjpIYW5kbGU8
SlNDOjoKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0lu
Zm8gSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQ
SVdyYXBwZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxs
YmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tP
YmplY3QpIH07CiAKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJ
V3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAKaW5kZXggYjVh
ZWVlNC4uNjVlNjZkYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja0NvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
Q2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJh
Y2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQ2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9Owog
CiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3RvcihKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNDbGFzc1JlZiBqc0Ns
YXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJhY2spCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAppbmRleCBh
ZmRhYzYzLi4wNDdmY2QwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrRnVuY3Rpb24uY3BwCkBAIC00Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2Fs
bGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2Fs
bGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2FsbGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KSB9OwogCiBKU0NhbGxiYWNrRnVuY3Rpb246OkpTQ2FsbGJhY2tGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdENhbGxBc0Z1bmN0aW9uQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmNwcAppbmRleCA1M2U1MWU3Li4yOWE2
MDI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5j
cHAKQEAgLTM0LDggKzM0LDggQEAKIG5hbWVzcGFjZSBKU0MgewogCiAvLyBEZWZpbmUgdGhlIHR3
byB0eXBlcyBvZiBKU0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29u
c3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+OjpzX2lu
Zm8gPSB7ICJDYWxsYmFja09iamVjdCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5m
byBKU0NhbGxiYWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tH
bG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
Q2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFj
a09iamVjdDxKU0Rlc3RydWN0aWJsZU9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNrT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0
KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9i
YWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2JhbE9iamVjdCIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIAogdGVtcGxh
dGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNr
T2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IGZhbHNlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXgg
YzYyYjczMS4uZWYxOTIyMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9P
YmpDQ2FsbGJhY2tGdW5jdGlvbi5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09i
akNDYWxsYmFja0Z1bmN0aW9uLm1tCkBAIC01MDEsNyArNTAxLDcgQEAgc3RhdGljIEpTT2JqZWN0
UmVmIG9iakNDYWxsYmFja0Z1bmN0aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNh
bGxlckNvbnQKICAgICByZXR1cm4gKEpTT2JqZWN0UmVmKXJlc3VsdDsKIH0KIAotY29uc3QgSlND
OjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNDYWxs
YmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rp
b246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE9iakNDYWxsYmFja0Z1bmN0aW9uKSB9OwogCiBPYmpDQ2FsbGJhY2tG
dW5jdGlvbjo6T2JqQ0NhbGxiYWNrRnVuY3Rpb24oSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3RDYWxsQXNGdW5jdGlvbkNhbGxiYWNrIGZ1bmN0
aW9uQ2FsbGJhY2ssIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0b3JDYWxsYmFjayBjb25zdHJ1Y3RD
YWxsYmFjaywgUGFzc093blB0cjxPYmpDQ2FsbGJhY2tGdW5jdGlvbkltcGw+IGltcGwpCiAgICAg
OiBCYXNlKHZtLCBnbG9iYWxPYmplY3QtPm9iamNDYWxsYmFja0Z1bmN0aW9uU3RydWN0dXJlKCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2MjM4NjcwLi4xYmNiODBmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMDUgQEAKKzIwMTQtMDctMzAgIEFuZHJlYXMgS2xp
bmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIFN0YXRpYyBoYXNoIHRhYmxlcyBubyBs
b25nZXIgbmVlZCB0byBiZSBjb3VwbGVkIHdpdGggYSBWTS4KKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEzNTQyMT4KKworICAgICAgICBOb3cgdGhhdCB0aGUgc3RhdGljIGhhc2ggdGFi
bGVzIGFyZSB1c2luZyBjaGFyKiogaW5zdGVhZCBvZiBTdHJpbmdJbXBsKiosCisgICAgICAgIGl0
J3Mgbm8gbG9uZ2VyIG5lY2Vzc2FyeSB0byBtYWtlIHRoZW0gcGVyLVZNLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggcmVtb3ZlcyB0aGUgaG9vayBpbiBDbGFzc0luZm8gZm9yIHByb3ZpZGluZyB5b3Vy
IG93biBzdGF0aWMKKyAgICAgICAgaGFzaCB0YWJsZSBnZXR0ZXIuIEV2ZXJ5b25lIG5vdyB1c2Vz
IENsYXNzSW5mbzo6c3RhdGljUHJvcEhhc2hUYWJsZS4KKyAgICAgICAgTW9zdCBvZiB0aGlzIHBh
dGNoIGlzIHR3ZWFraW5nIENsYXNzSW5mbyBjb25zdHJ1Y3Rpb24gc2l0ZXMgdG8gcGFzcyBvbmUK
KyAgICAgICAgbGVzcyBudWxsIHBvaW50ZXIuCisKKyAgICAgICAgQWxzbyBzaW1wbGlmaWVkIExv
b2t1cC5oIHRvIHN0b3AgcmVxdWlyaW5nIEV4ZWNTdGF0ZS9WTSB0byBhY2Nlc3MgdGhlCisgICAg
ICAgIHN0YXRpYyBoYXNoIHRhYmxlcy4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIEFQSS9KU0FQSVdyYXBwZXJPYmplY3QubW06CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tG
dW5jdGlvbi5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwOgorICAgICAg
ICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAgICAgICAgKiBieXRlY29kZS9Vbmxp
bmtlZENvZGVCbG9jay5jcHA6CisgICAgICAgICogY3JlYXRlX2hhc2hfdGFibGU6CisgICAgICAg
ICogZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0pTSW5q
ZWN0ZWRTY3JpcHRIb3N0LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlw
dEhvc3RQcm90b3R5cGUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxs
RnJhbWUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwOgorICAgICAgICAqIGludGVycHJldGVyL0NhbGxGcmFtZS5oOgorICAgICAgICAo
SlNDOjpFeGVjU3RhdGU6OmFycmF5Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6RXhlY1N0YXRlOjpkYXRhVmlld1RhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6RXhlY1N0YXRlOjpkYXRlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3Rh
dGU6OmRhdGVDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjplcnJvclByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpnbG9iYWxPYmplY3RUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0
ZTo6anNvblRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1iZXJD
b25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1i
ZXJQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6b2Jq
ZWN0Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6
cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNT
dGF0ZTo6cmVnRXhwVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6OnJl
Z0V4cENvbnN0cnVjdG9yVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6
OnJlZ0V4cFByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRl
OjpzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVj
U3RhdGU6OnByb21pc2VDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKiBqc2Mu
Y3BwOgorICAgICAgICAqIHBhcnNlci9MZXhlci5oOgorICAgICAgICAoSlNDOjpLZXl3b3Jkczo6
aXNLZXl3b3JkKToKKyAgICAgICAgKEpTQzo6S2V5d29yZHM6OmdldEtleXdvcmQpOgorICAgICAg
ICAqIHJ1bnRpbWUvQXJndW1lbnRzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FyZ3VtZW50c0l0
ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJndW1lbnRzSXRlcmF0
b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlCdWZmZXJOZXV0ZXJpbmdX
YXRjaHBvaW50LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpBcnJheUNvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAg
ICAgICAqIHJ1bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpBcnJheVByb3RvdHlwZTo6Z2V0T3duUHJv
cGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jv
b2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpCb29sZWFuUHJvdG90eXBlOjpnZXRP
d25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAg
IChKU0M6OkNsYXNzSW5mbzo6aGFzU3RhdGljUHJvcGVydGllcyk6CisgICAgICAgIChKU0M6OkNs
YXNzSW5mbzo6cHJvcEhhc2hUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9Db25z
b2xlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5j
cHA6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
OjpEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGlt
ZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHA6
CisgICAgICAgIChKU0M6OkRhdGVQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAg
ICAgICogcnVudGltZS9FcnJvci5jcHA6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpFcnJvclByb3RvdHlw
ZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0V4Y2VwdGlvbkhlbHBl
cnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0dldHRlclNldHRlci5jcHA6CisgICAg
ICAgICogcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pT
QVBJVmFsdWVXcmFwcGVyLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQWN0aXZhdGlvbi5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FyZ3VtZW50c0l0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU0FycmF5QnVmZmVyVmlldy5jcHA6CisgICAgICAgICogcnVudGltZS9KU0FycmF5SXRlcmF0
b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQ29uc29sZS5jcHA6CisgICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAq
IHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVj
dC5jcHA6CisgICAgICAgIChKU0M6OkpTR2xvYmFsT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3Qp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXAuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU05hbWVTY29wZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT05PYmpl
Y3QuY3BwOgorICAgICAgICAoSlNDOjpKU09OT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpnZXRDbGFzc1By
b3BlcnR5TmFtZXMpOgorICAgICAgICAoSlNDOjpKU09iamVjdDo6cHV0KToKKyAgICAgICAgKEpT
Qzo6SlNPYmplY3Q6OmRlbGV0ZVByb3BlcnR5KToKKyAgICAgICAgKEpTQzo6SlNPYmplY3Q6OmZp
bmRQcm9wZXJ0eUhhc2hFbnRyeSk6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpyZWlmeVN0YXRp
Y0Z1bmN0aW9uc0ZvckRlbGV0ZSk6CisgICAgICAgICogcnVudGltZS9KU09iamVjdC5oOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNQcm9taXNlQ29uc3RydWN0b3I6Omdl
dE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU1Byb21pc2VQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICog
cnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJveHkuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZXRJdGVyYXRv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNUeXBl
ZEFycmF5UHJvdG90eXBlcy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlzLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNXZWFrTWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2l0aFNjb3BlLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL0xvb2t1cC5jcHA6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6
Y3JlYXRlVGFibGUpOgorICAgICAgICAqIHJ1bnRpbWUvTG9va3VwLmg6CisgICAgICAgIChKU0M6
Okhhc2hUYWJsZTo6aW5pdGlhbGl6ZUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SGFzaFRhYmxl
OjplbnRyeSk6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6YmVnaW4pOgorICAgICAgICAoSlND
OjpIYXNoVGFibGU6OmVuZCk6CisgICAgICAgIChKU0M6OmdldFN0YXRpY1Byb3BlcnR5U2xvdCk6
CisgICAgICAgIChKU0M6OmdldFN0YXRpY0Z1bmN0aW9uU2xvdCk6CisgICAgICAgIChKU0M6Omdl
dFN0YXRpY1ZhbHVlU2xvdCk6CisgICAgICAgIChKU0M6Omxvb2t1cFB1dCk6CisgICAgICAgICog
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9NYXBEYXRhLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hdGhPYmplY3QuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05h
bWVJbnN0YW5jZS5jcHA6CisgICAgICAgICogcnVudGltZS9OYW1lUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6TmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAg
KiBydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TnVtYmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOdW1iZXJDb25zdHJ1Y3Rvcjo6
Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6
CisgICAgICAgICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpO
dW1iZXJQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6Ok9iamVjdENvbnN0cnVjdG9yOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6UmVnRXhwQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6Cisg
ICAgICAgICogcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6UmVnRXhwT2JqZWN0OjpnZXRPd25Q
cm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6UmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAg
ICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3BhcnNlQXJyYXlWYWx1ZU1hcC5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJp
Y3RFdmFsQWN0aXZhdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ0NvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNs
b3QpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmU6OlN0cnVjdHVyZSk6CisgICAgICAgIChKU0M6OlN0
cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlvbik6CisgICAgICAgIChKU0M6OkNsYXNzSW5mbzo6aGFz
U3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMpOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Vk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorICAgICAgICAoSlNDOjpWTTo6flZNKToK
KyAgICAgICAgKiBydW50aW1lL1ZNLmg6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha01hcERhdGEuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvV2Vha01hcFByb3RvdHlwZS5jcHA6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6
CisKIDIwMTQtMDctMjkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW1dpbl0gTW9kaWZ5IHZlcnNpb24gbnVtYmVyaW5nIHNjaGVtZSB0byBzdXBwb3J0IDUt
dHVwbGUgdmVyc2lvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZENvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suY3BwCmluZGV4IDVjMmNjNWYuLmY1YTc5YjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcApA
QCAtNDIsMTIgKzQyLDEyIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25F
eGVjdXRhYmxlIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9u
RXhlY3V0YWJsZSkgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVu
bGlua2VkQ29kZUJsb2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29kZUJs
b2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Ci1j
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxp
bmtlZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJs
b2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5m
byA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07Citjb25zdCBD
bGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2Vk
RnVuY3Rpb25FeGVjdXRhYmxlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6
c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkQ29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29k
ZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Citj
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtl
ZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2NrKSB9
OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5mbyA9IHsg
IlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07CiAKIHN0YXRpYyBVbmxpbmtl
ZEZ1bmN0aW9uQ29kZUJsb2NrKiBnZW5lcmF0ZUZ1bmN0aW9uQ29kZUJsb2NrKFZNJiB2bSwgVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNvZGUmIHNv
dXJjZSwgQ29kZVNwZWNpYWxpemF0aW9uS2luZCBraW5kLCBEZWJ1Z2dlck1vZGUgZGVidWdnZXJN
b2RlLCBQcm9maWxlck1vZGUgcHJvZmlsZXJNb2RlLCBVbmxpbmtlZEZ1bmN0aW9uS2luZCBmdW5j
dGlvbktpbmQsIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzLCBQYXJzZXJFcnJvciYgZXJyb3IpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUKaW5kZXggODhlODQ0Ny4uN2Fm
NTYzOCAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2NyZWF0ZV9oYXNoX3RhYmxl
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9jcmVhdGVfaGFzaF90YWJsZQpAQCAtMzIwLDcg
KzMyMCw3IEBAIHN1YiBvdXRwdXQoKSB7CiAgICAgICAgICRpKys7CiAgICAgfQogICAgIHByaW50
ICJ9O1xuXG4iOwotICAgIHByaW50ICJleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSAkbmFt
ZSA9XG4iOworICAgIHByaW50ICJKU19FWFBPUlRfUFJJVkFURSBleHRlcm4gY29uc3Qgc3RydWN0
IEhhc2hUYWJsZSAkbmFtZSA9XG4iOwogICAgIHByaW50ICIgICAgXHsgJHBhY2tlZFNpemUsICRj
b21wYWN0SGFzaFNpemVNYXNrLCAkaGFzU2V0dGVyLCAkbmFtZUVudHJpZXMsIDAsICRuYW1lSW5k
ZXggXH07XG4iOwogICAgIHByaW50ICJ9IC8vIG5hbWVzcGFjZVxuIjsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcAppbmRleCA3NmZmMzNi
Li45NTdjYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVi
dWdnZXJTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVn
Z2VyU2NvcGUuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRGVidWdnZXJTY29wZSk7CiAKLWNvbnN0
IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7ICJEZWJ1Z2dlclNjb3BlIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShEZWJ1Z2dlclNjb3BlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIERlYnVnZ2VyU2NvcGU6OnNfaW5mbyA9IHsgIkRlYnVnZ2VyU2NvcGUi
LCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07
CiAKIERlYnVnZ2VyU2NvcGU6OkRlYnVnZ2VyU2NvcGUoVk0mIHZtKQogICAgIDogSlNOb25GaW5h
bE9iamVjdCh2bSwgdm0uZGVidWdnZXJTY29wZVN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5j
cHAKaW5kZXggMGU5NTU1Zi4uYjU4NjAxYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTQ1LDcgKzQ1
LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRT
Y3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2NyaXB0SG9zdCkgfTsKIAogSlNJbmplY3RlZFNj
cmlwdEhvc3Q6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFBhc3NSZWZQdHI8SW5qZWN0ZWRTY3JpcHRIb3N0PiBpbXBsKQogICAgIDogSlNEZXN0cnVj
dGlibGVPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5j
cHAKaW5kZXggYjA3OTcwYS4uYWI5MTVlYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlw
ZS5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVGdW5jdGlvbklzSFRNTEEKIAogc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5
cGVBdHRyaWJ1dGVFdmFsdWF0ZShFeGVjU3RhdGUqKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5q
ZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3Qi
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3JpcHRIb3N0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFzZTo6c19pbmZv
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAK
aW5kZXggMDhmZDYxOC4uNDllMWI3MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcApAQCAtMzgsNyArMzgs
NyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlw
dENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxG
cmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1lKSB9OwogCiBKU0phdmFT
Y3JpcHRDYWxsRnJhbWU6OkpTSmF2YVNjcmlwdENhbGxGcmFtZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBQYXNzUmVmUHRyPEphdmFTY3JpcHRDYWxsRnJhbWU+IGltcGwpCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGUuY3BwCmluZGV4IGY3ZmMyMWUuLjQwOWM2OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxG
cmFtZVByb3RvdHlwZS5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNKYXZhU2NyaXB0Q2FsbEZyYW1lQ29uc3RhbnRXSVRIX1NDT1BFKEV4
ZWMKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxG
cmFtZUNvbnN0YW50Q0xPU1VSRV9TQ09QRShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxGcmFtZUNvbnN0YW50Q0FUQ0hfU0NP
UEUoRXhlY1N0YXRlKik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZv
LCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZSkgfTsKIAogI2RlZmlu
ZSBKU0NfTkFUSVZFX05PTl9JTkRFWF9BQ0NFU1NPUihqc05hbWUsIGNwcE5hbWUsIGF0dHJpYnV0
ZXMpIFwKICAgICB7IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnBy
ZXRlci9DYWxsRnJhbWUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9DYWxs
RnJhbWUuaAppbmRleCA2M2Q2YTQ4Li44MDEzMWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ludGVycHJldGVyL0NhbGxGcmFtZS5oCkBAIC04NywyNyArODcsNiBAQCBuYW1lc3BhY2Ug
SlNDICB7CiAgICAgICAgIEludGVycHJldGVyKiBpbnRlcnByZXRlcigpIHsgcmV0dXJuIHZtKCku
aW50ZXJwcmV0ZXI7IH0KICAgICAgICAgSGVhcCogaGVhcCgpIHsgcmV0dXJuICZ2bSgpLmhlYXA7
IH0KIAotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBhcnJheUNvbnN0cnVjdG9yVGFi
bGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYXJyYXlDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGFycmF5UHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0uYXJyYXlQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlJiBib29sZWFuUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYm9vbGVh
blByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGFW
aWV3VGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0YVZpZXdUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBkYXRlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0
ZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGVDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLmRhdGVDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAg
ICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGVycm9yUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7
IHJldHVybiAqdm0uZXJyb3JQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlJiBnbG9iYWxPYmplY3RUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5nbG9iYWxP
YmplY3RUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBqc29uVGFibGUo
Vk0mIHZtKSB7IHJldHVybiAqdm0uanNvblRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUmIG51bWJlckNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ubnVt
YmVyQ29uc3RydWN0b3JUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBu
dW1iZXJQcm90b3R5cGVUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5udW1iZXJQcm90b3R5cGVU
YWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBvYmplY3RDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLm9iamVjdENvbnN0cnVjdG9yVGFibGU7IH0KLSAg
ICAgICAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cFRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZt
LnJlZ0V4cFRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cENv
bnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ucmVnRXhwQ29uc3RydWN0b3JUYWJs
ZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiByZWdFeHBQcm90b3R5cGVUYWJs
ZShWTSYgdm0pIHsgcmV0dXJuICp2bS5yZWdFeHBQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKFZNJiB2bSkgeyBy
ZXR1cm4gKnZtLnN0cmluZ0NvbnN0cnVjdG9yVGFibGU7IH0KLSNpZiBFTkFCTEUoUFJPTUlTRVMp
Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHByb21pc2VQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcm9taXNlUHJvdG90eXBlVGFibGU7IH0KLSAgICAgICAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZSYgcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0ucHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7IH0KLSNlbmRpZgogCiAgICAgICAgIHN0
YXRpYyBDYWxsRnJhbWUqIGNyZWF0ZShSZWdpc3RlciogY2FsbEZyYW1lQmFzZSkgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8Q2FsbEZyYW1lKj4oY2FsbEZyYW1lQmFzZSk7IH0KICAgICAgICAgUmVnaXN0
ZXIqIHJlZ2lzdGVycygpIHsgcmV0dXJuIHRoaXM7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXgg
MjA0YjhiMi4uMTE4NWVjZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTk0LDYgKzk0LDEwIEBA
CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogdXNpbmcgbmFtZXNwYWNlIFdURjsKIAorbmFtZXNwYWNl
IEpTQyB7CitleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSBnbG9iYWxPYmplY3RUYWJsZTsK
K30KKwogbmFtZXNwYWNlIHsKIAogTk9fUkVUVVJOX1dJVEhfVkFMVUUgc3RhdGljIHZvaWQganNj
RXhpdChpbnQgc3RhdHVzKQpAQCAtNDA1LDExICs0MDksMTEgQEAgcHJpdmF0ZToKICAgICBWZWN0
b3I8aW50PiBtX3ZlY3RvcjsKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8g
PSB7ICJFbGVtZW50IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
bGVtZW50KSB9OwotY29uc3QgQ2xhc3NJbmZvIE1hc3F1ZXJhZGVyOjpzX2luZm8gPSB7ICJNYXNx
dWVyYWRlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFzcXVl
cmFkZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZCYXNl
OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkgfTsKLWNvbnN0IENsYXNz
SW5mbyBJbXB1cmVHZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVyZUdldHRlciIsICZCYXNlOjpzX2lu
Zm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW1wdXJlR2V0dGVyKSB9OwotY29uc3QgQ2xh
c3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25zdCBD
bGFzc0luZm8gRWxlbWVudDo6c19pbmZvID0geyAiRWxlbWVudCIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXNxdWVy
YWRlcjo6c19pbmZvID0geyAiTWFzcXVlcmFkZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE1hc3F1ZXJhZGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIFJvb3Q6OnNfaW5m
byA9IHsgIlJvb3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3Qp
IH07Citjb25zdCBDbGFzc0luZm8gSW1wdXJlR2V0dGVyOjpzX2luZm8gPSB7ICJJbXB1cmVHZXR0
ZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEltcHVyZUdldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJh
eSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogCiBFbGVtZW50SGFuZGxlT3duZXIqIEVsZW1lbnQ6OmhhbmRsZU93bmVyKCkKIHsKQEAgLTY0
Niw3ICs2NTAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEds
b2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAi
Z2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmplY3RUYWJsZSwgQ1JF
QVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiBjb25zdCBHbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSBHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxv
d3NBY2Nlc3NGcm9tLCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZv
LCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwg
MCwgJnNob3VsZEludGVycnVwdFNjcmlwdEJlZm9yZVRpbWVvdXQgfTsKIAogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL0xleGVyLmgKaW5kZXggMDcyNDFhZS4uM2ZkZDY2MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvTGV4ZXIuaApAQCAtMzcsMTIgKzM3LDEyIEBAIGNsYXNzIEtleXdvcmRz
IHsKIHB1YmxpYzoKICAgICBib29sIGlzS2V5d29yZChjb25zdCBJZGVudGlmaWVyJiBpZGVudCkg
Y29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShtX3ZtLCBp
ZGVudCk7CisgICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShpZGVudCk7CiAgICAg
fQogICAgIAogICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBnZXRLZXl3b3JkKGNvbnN0IElkZW50
aWZpZXImIGlkZW50KSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxl
LmVudHJ5KG1fdm0sIGlkZW50KTsKKyAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxlLmVudHJ5
KGlkZW50KTsKICAgICB9CiAgICAgCiAgICAgfktleXdvcmRzKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bcmd1bWVudHMuY3BwCmluZGV4IGIyMzJkOTkuLmI0MDZiYjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzLmNwcApAQCAtMzgsNyArMzgs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJn
dW1lbnRzIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcmd1bWVudHMp
IH07CiAKIHZvaWQgQXJndW1lbnRzOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZp
c2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Bcmd1bWVudHNJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCmluZGV4IGFlNjIx
YzcuLmRmN2MxMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
Z3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0
b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19p
bmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgQXJndW1l
bnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwCmlu
ZGV4IDE1MTQ2MzAuLmQ3OWNjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bcmd1bWVudHNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcg
KzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6
c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJh
dG9yKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJn
dW1lbnRzSXRlcmF0b3JQcm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hw
b2ludC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUJ1ZmZlck5ldXRl
cmluZ1dhdGNocG9pbnQuY3BwCmluZGV4IGE2NWE1NDIuLmNhMThiZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2lu
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlCdWZmZXJOZXV0
ZXJpbmdXYXRjaHBvaW50LmNwcApAQCAtMzEsNyArMzEsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAK
IGNvbnN0IENsYXNzSW5mbyBBcnJheUJ1ZmZlck5ldXRlcmluZ1dhdGNocG9pbnQ6OnNfaW5mbyA9
IHsKLSAgICAiQXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwgMCwKKyAgICAi
QXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwKICAgICBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2ludCkKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDQ0
MjkzMC4uY2ZiNjRlZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAK
IFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBcnJheUNvbnN0cnVjdG9y
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEFycmF5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0YXRlOjphcnJheUNvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9N
RVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBBcnJheUNv
bnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gYXJyYXlDb25zdHJ1Y3RvclRhYmxlCkBAIC02OCw3ICs2
OCw3IEBAIHZvaWQgQXJyYXlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcnJh
eVByb3RvdHlwZSogYXJyYXlQcm90b3R5cGUpCiAKIGJvb2wgQXJyYXlDb25zdHJ1Y3Rvcjo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBn
ZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgRXhlY1N0YXRlOjph
cnJheUNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxBcnJheUNvbnN0cnVjdG9y
Kj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVu
Y3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIGFycmF5Q29uc3RydWN0b3JUYWJsZSwg
anNDYXN0PEFycmF5Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwog
fQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzQ1MWRiNi4uMjkx
YzVmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVy
YXRvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFycmF5SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5SXRlcmF0b3JDb25zdHJ1Y3RvcikgfTsKIAogdm9p
ZCBBcnJheUl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclBy
b3RvdHlwZS5jcHAKaW5kZXggZWNjNTdjYi4uYzg4MDBlMyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAg
LTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJh
eUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJB
cnJheSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJy
YXlJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgYXJyYXlJdGVyYXRvclByb3RvdHlwZUl0ZXJhdGUoRXhlY1N0YXRlKik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCBk
OGU0OGJhLi5jMzg2YWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlQcm90b3R5cGUuY3BwCkBAIC04Nyw3ICs4Nyw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBp
c051bWVyaWNDb21wYXJlRnVuY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIGZ1bmN0aW9u
LCBDCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheVByb3RvdHlwZSAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheVByb3Rv
dHlwZTo6c19pbmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6
YXJyYXlQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheVByb3RvdHlwZSl9
OworY29uc3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7IkFycmF5IiwgJkpT
QXJyYXk6OnNfaW5mbywgJmFycmF5UHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJyYXlQcm90b3R5cGUpfTsKIAogLyogU291cmNlIGZvciBBcnJheVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGFycmF5UHJvdG90eXBlVGFibGUgMTYKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEFy
cmF5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiAKIGJvb2wgQXJyYXlQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEpTQXJyYXk+KGV4ZWMsIEV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEFycmF5UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsK
KyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTQXJyYXk+KGV4ZWMsIGFycmF5UHJv
dG90eXBlVGFibGUsIGpzQ2FzdDxBcnJheVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFt
ZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheSBG
dW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYjMxNmJl
MS4uMGEyNTA3NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9v
bGVhbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVj
dG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xl
YW5Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShCb29sZWFuQ29uc3RydWN0b3IpIH07CiAKIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6Qm9vbGVhbkNv
bnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRlcm5hbEZ1
bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Jvb2xlYW5PYmplY3QuY3BwCmluZGV4IDg5ZmI4M2EuLjI4Y2FkNmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoQm9vbGVhbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFuT2JqZWN0Ojpz
X2luZm8gPSB7ICJCb29sZWFuIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVh
bk9iamVjdDo6c19pbmZvID0geyAiQm9vbGVhbiIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0
OjpCb29sZWFuT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dy
YXBwZXJPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5jcHAKaW5kZXggNTYxODJiYS4uYmU3MzdhZSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKQEAgLTM5LDcgKzM5LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Ym9vbGVhblByb3RvRnVuY1ZhbHVlT2YoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIs
ICZCb29sZWFuT2JqZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRh
YmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIsICZCb29sZWFuT2Jq
ZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
Qm9vbGVhblByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gYm9vbGVhblByb3RvdHlwZVRhYmxlCkBAIC02NSw3ICs2NSw3IEBAIHZvaWQg
Qm9vbGVhblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCop
CiAKIGJvb2wgQm9vbGVhblByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBv
YmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVy
dHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8Qm9vbGVh
bk9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpib29sZWFuUHJvdG90eXBlVGFibGUoZXhlYy0+dm0o
KSksIGpzQ2FzdDxCb29sZWFuUHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90
KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJvb2xlYW5PYmplY3Q+KGV4ZWMs
IGJvb2xlYW5Qcm90b3R5cGVUYWJsZSwganNDYXN0PEJvb2xlYW5Qcm90b3R5cGUqPihvYmplY3Qp
LCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAppbmRleCBmN2NhYmU1Li40ZmQ0MzA5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaApAQCAtMTU0LDI1ICsxNTQs
NiBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICAvLyBudWxscHRyaWYgdGhlcmUgaXMgbm9uZS4K
ICAgICBjb25zdCBDbGFzc0luZm8qIHBhcmVudENsYXNzOwogCi0gICAgLy8gU3RhdGljIGhhc2gt
dGFibGUgb2YgcHJvcGVydGllcy4KLSAgICAvLyBGb3IgY2xhc3NlcyB0aGF0IGNhbiBiZSB1c2Vk
IGZyb20gbXVsdGlwbGUgdGhyZWFkcywgaXQgaXMgYWNjZXNzZWQgdmlhIGEgZ2V0dGVyIGZ1bmN0
aW9uCi0gICAgLy8gdGhhdCB3b3VsZCB0eXBpY2FsbHkgcmV0dXJuIGEgcG9pbnRlciB0byBhIHRo
cmVhZC1zcGVjaWZpYyB2YWx1ZS4KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
RXhlY1N0YXRlKiBleGVjKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hU
YWJsZUdldHRlckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFi
bGVHZXR0ZXJGdW5jdGlvbihleGVjLT52bSgpKTsKLQotICAgICAgICByZXR1cm4gc3RhdGljUHJv
cEhhc2hUYWJsZTsKLSAgICB9Ci0KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
Vk0mIHZtKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hUYWJsZUdldHRl
ckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJG
dW5jdGlvbih2bSk7Ci0KLSAgICAgICAgcmV0dXJuIHN0YXRpY1Byb3BIYXNoVGFibGU7Ci0gICAg
fQotCiAgICAgYm9vbCBpc1N1YkNsYXNzT2YoY29uc3QgQ2xhc3NJbmZvKiBvdGhlcikgY29uc3QK
ICAgICB7CiAgICAgICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9
IGNpLT5wYXJlbnRDbGFzcykgewpAQCAtMTg1LDE3ICsxNjYsMTUgQEAgc3RydWN0IENsYXNzSW5m
byB7CiAgICAgYm9vbCBoYXNTdGF0aWNQcm9wZXJ0aWVzKCkgY29uc3QKICAgICB7CiAgICAgICAg
IGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9IGNpLT5wYXJlbnRDbGFz
cykgewotICAgICAgICAgICAgaWYgKGNpLT5zdGF0aWNQcm9wSGFzaFRhYmxlIHx8IGNpLT5jbGFz
c1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikKKyAgICAgICAgICAgIGlmIChjaS0+c3RhdGlj
UHJvcEhhc2hUYWJsZSkKICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgYm9vbCBoYXNTdGF0aWNTZXR0ZXJP
clJlYWRvbmx5UHJvcGVydGllcyhWTSYpIGNvbnN0OworICAgIGJvb2wgaGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSBjb25zdDsKIAogICAgIGNvbnN0IEhhc2hUYWJsZSogc3Rh
dGljUHJvcEhhc2hUYWJsZTsKLSAgICB0eXBlZGVmIGNvbnN0IEhhc2hUYWJsZSYgKCpDbGFzc1By
b3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikoVk0mKTsKLSAgICBjb25zdCBDbGFzc1Byb3BIYXNo
VGFibGVHZXR0ZXJGdW5jdGlvbiBjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbjsKIAog
ICAgIE1ldGhvZFRhYmxlIG1ldGhvZFRhYmxlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db25zb2xlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5cGUuY3BwCmluZGV4IGEyYTFlYzYuLmU5NzUxZWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gQ29uc29sZVByb3RvdHlwZTo6c19pbmZvID0geyAiQ29uc29sZVByb3RvdHlwZSIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBDb25zb2xlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJDb25zb2xl
UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDb25zb2xl
UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
b2xlUHJvdG9GdW5jRGVidWcoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zb2xlUHJvdG9GdW5jRXJyb3IoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcAppbmRl
eCA5MmIwMjE5Li4wZjllMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0N1c3RvbUdldHRlclNldHRlci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShDdXN0b21H
ZXR0ZXJTZXR0ZXIpOwogCi1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVyOjpzX2lu
Zm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEN1c3RvbUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlclNldHRlciIsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB2b2lkIGNhbGxDdXN0b21TZXR0ZXIoRXhl
Y1N0YXRlKiBleGVjLCBKU1ZhbHVlIGN1c3RvbUdldHRlclNldHRlciwgSlNPYmplY3QqIGJhc2Us
IEpTVmFsdWUgdGhpc1ZhbHVlLCBKU1ZhbHVlIHZhbHVlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDc2YTMxYi4uNzQ4
ZTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuY3BwCkBAIC02Niw3ICs2Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGRhdGVVVEMoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5h
bEZ1bmN0aW9uOjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENS
RUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIERh
dGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCAmZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIERhdGVDb25zdHJ1Y3Rvci5sdXQuaAogQGJl
Z2luIGRhdGVDb25zdHJ1Y3RvclRhYmxlCkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBEYXRlQ29u
c3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgRGF0ZVByb3RvdHlwZSogZGF0ZVByb3Rv
dHlwZSkKIAogYm9vbCBEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVj
dCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PElu
dGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUoZXhl
Yy0+dm0oKSksIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUs
IHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlv
bj4oZXhlYywgZGF0ZUNvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihv
YmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyBFQ01BIDE1LjkuMwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggZDAzMTdj
Mi4uYzE3NDlmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVJbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUlu
c3RhbmNlLmNwcApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgV1RGOwogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0geyJE
YXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0g
eyJEYXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OwogCiBEYXRlSW5zdGFuY2U6OkRhdGVJbnN0YW5jZShWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmlu
ZGV4IDljZDczNmEuLjBmYzkzZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC00MjUsNyArNDI1LDcgQEAgc3RhdGljIGJvb2wgZmls
bFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEV4ZWNTdGF0ZSAqZXhlYywgaW50IG1heEFyZ3MsIGRv
dWJsZSAqbXMKICAgICByZXR1cm4gb2s7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90
eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNlOjpzX2luZm8sIDAsIEV4ZWNTdGF0
ZTo6ZGF0ZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVQcm90b3R5cGUpfTsKK2NvbnN0
IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNl
OjpzX2luZm8sICZkYXRlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZVByb3RvdHlwZSl9
OwogCiAvKiBTb3VyY2UgZm9yIERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGFibGUK
QEAgLTQ5NSw3ICs0OTUsNyBAQCB2b2lkIERhdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIERhdGVQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBFeGVjU3RhdGU6OmRhdGVUYWJsZShleGVjLT52
bSgpKSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGRhdGVU
YWJsZSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiAvLyBGdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNw
cAppbmRleCBjN2FjM2E1Li45MzBiNmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FcnJvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RXJyb3IuY3BwCkBAIC0xNjAsNyArMTYwLDcgQEAgSlNPYmplY3QqIHRocm93U3ludGF4RXJyb3Io
RXhlY1N0YXRlKiBleGVjKQogICAgIHJldHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4
ZWMsIGNyZWF0ZVN5bnRheEVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgiU3ludGF4IGVycm9yIikp
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJp
Y3RNb2RlVHlwZUVycm9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RNb2RlVHlwZUVycm9yRnVuY3Rpb24p
IH07CiAKIHZvaWQgU3RyaWN0TW9kZVR5cGVFcnJvckZ1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCog
Y2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKaW5kZXggOWFjYmM0Yy4uNmRhMWE0MiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBFcnJvckNvbnN0cnVjdG9yOjpF
cnJvckNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRl
cm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCmluZGV4IDQyZTdjNTMuLjc0ZjUzZTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCkBAIC0yOCw3
ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoRXJyb3JJbnN0YW5jZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvckluc3Rh
bmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
cnJvckluc3RhbmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKIAogRXJyb3JJbnN0
YW5jZTo6RXJyb3JJbnN0YW5jZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDog
SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IDA4MGI5NzUuLmNmOGZmMmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHAK
QEAgLTQxLDcgKzQxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXJy
b3JQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiRXJyb3IiLCAmRXJyb3JJ
bnN0YW5jZTo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OmVycm9yUHJvdG90eXBlVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gRXJyb3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkVycm9ySW5zdGFuY2U6OnNfaW5mbywgJmVy
cm9yUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgRXJyb3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBlcnJvclByb3Rv
dHlwZVRhYmxlCkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgRXJyb3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIEVycm9yUHJvdG90eXBlOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJu
IGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBFeGVjU3RhdGU6OmVy
cm9yUHJvdG90eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxFcnJvclByb3RvdHlwZSo+KG9i
amVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9u
U2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBlcnJvclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8RXJy
b3JQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0
aW9uSGVscGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25I
ZWxwZXJzLmNwcAppbmRleCA2YTY2OGQ0Li42YjMzYzhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcApAQCAtNDQsNyArNDQsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJ
QkxFKFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBUZXJtaW5h
dGVkRXhlY3V0aW9uRXJyb3I6OnNfaW5mbyA9IHsgIlRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvciIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVybWluYXRlZEV4ZWN1
dGlvbkVycm9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcjo6
c19pbmZvID0geyAiVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yIiwgJkJhc2U6OnNfaW5mbywgMCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZXJtaW5hdGVkRXhlY3V0aW9uRXJyb3IpIH07CiAKIEpTVmFs
dWUgVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yOjpkZWZhdWx0VmFsdWUoY29uc3QgSlNPYmplY3Qq
LCBFeGVjU3RhdGUqIGV4ZWMsIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgaGludCkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5jcHAKaW5kZXggZmY5ZjYxNC4u
MTE4YTEwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0
YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5j
cHAKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAiRXhlY3V0YWJsZSIsIDAsIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0
YWJsZUJhc2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGUiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEV4ZWN1dGFibGVCYXNlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZvaWQgRXhlY3V0YWJs
ZUJhc2U6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQpAQCAtNzgsNyArNzgsNyBAQCBJbnRyaW5zaWMg
RXhlY3V0YWJsZUJhc2U6OmludHJpbnNpYygpIGNvbnN0CiB9CiAjZW5kaWYKIAotY29uc3QgQ2xh
c3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAm
RXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9
IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShOYXRpdmVFeGVjdXRhYmxlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZv
aWQgTmF0aXZlRXhlY3V0YWJsZTo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCkBAIC05NCw3ICs5NCw3
IEBAIEludHJpbnNpYyBOYXRpdmVFeGVjdXRhYmxlOjppbnRyaW5zaWMoKSBjb25zdAogfQogI2Vu
ZGlmCiAKLWNvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJTY3Jp
cHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVj
dXRhYmxlOjpzX2luZm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKIAogI2lm
IEVOQUJMRShKSVQpCiB2b2lkIFNjcmlwdEV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxs
KQpAQCAtMzI1LDcgKzMyNSw3IEBAIEpTT2JqZWN0KiBTY3JpcHRFeGVjdXRhYmxlOjpwcmVwYXJl
Rm9yRXhlY3V0aW9uSW1wbCgKICAgICByZXR1cm4gMDsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEV2
YWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJFdmFsRXhlY3V0YWJsZSIsICZTY3JpcHRFeGVjdXRh
YmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUpIH07
Citjb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkV2YWxFeGVjdXRh
YmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
dmFsRXhlY3V0YWJsZSkgfTsKIAogRXZhbEV4ZWN1dGFibGUqIEV2YWxFeGVjdXRhYmxlOjpjcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaXNJblN0
cmljdENvbnRleHQpIAogewpAQCAtMzU3LDcgKzM1Nyw3IEBAIHZvaWQgRXZhbEV4ZWN1dGFibGU6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogICAgIHN0YXRpY19jYXN0PEV2YWxFeGVjdXRhYmxlKj4o
Y2VsbCktPkV2YWxFeGVjdXRhYmxlOjp+RXZhbEV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSIs
ICZTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJv
Z3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1dGFibGU6OnNf
aW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFtRXhlY3V0YWJsZSkgfTsKIAogUHJvZ3JhbUV4
ZWN1dGFibGU6OlByb2dyYW1FeGVjdXRhYmxlKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgU291cmNl
Q29kZSYgc291cmNlKQogICAgIDogU2NyaXB0RXhlY3V0YWJsZShleGVjLT52bSgpLnByb2dyYW1F
eGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCBleGVjLCBzb3VyY2UsIGZhbHNlKQpAQCAtMzY5LDcg
KzM2OSw3IEBAIHZvaWQgUHJvZ3JhbUV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQog
ICAgIHN0YXRpY19jYXN0PFByb2dyYW1FeGVjdXRhYmxlKj4oY2VsbCktPlByb2dyYW1FeGVjdXRh
YmxlOjp+UHJvZ3JhbUV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9u
RXhlY3V0YWJsZTo6c19pbmZvID0geyAiRnVuY3Rpb25FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1
dGFibGU6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFi
bGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJG
dW5jdGlvbkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKIAogRnVuY3Rpb25FeGVjdXRhYmxl
OjpGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHZtLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiB1bmxpbmtlZEV4ZWN1dGFibGUsIHVuc2lnbmVkIGZp
cnN0TGluZSwgdW5zaWduZWQgbGFzdExpbmUsIHVuc2lnbmVkIHN0YXJ0Q29sdW1uLCB1bnNpZ25l
ZCBlbmRDb2x1bW4sIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzKQogICAgIDogU2NyaXB0RXhlY3V0
YWJsZSh2bS5mdW5jdGlvbkV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIHZtLCBzb3VyY2UsIHVu
bGlua2VkRXhlY3V0YWJsZS0+aXNJblN0cmljdENvbnRleHQoKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggM2Zj
NzI0Mi4uMTBjYWIxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvbkNv
bnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OwogCiBGdW5jdGlvbkNvbnN0cnVjdG9y
OjpGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKaW5kZXggZWI1Nzg0MC4uM2My
NTZmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Q
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9uUHJvdG90eXBlKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Qcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rp
b25Qcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJvdG9GdW5jQmluZChFeGVjU3RhdGUqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDNkZTk1NmEu
LjFjODk3ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRl
clNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0
dGVyLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEdldHRl
clNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZXR0ZXJTZXR0ZXIpIH07CiAKIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxkcmVu
KEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwCmluZGV4IDI0NTE5YzYu
LjZmNTNiYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSW50ZXJuYWxGdW5jdGlvbik7CiAK
LWNvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5j
dGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJuYWxGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNEZXN0cnVjdGlibGVPYmplY3Qodm0sIHN0cnVj
dHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFs
dWVXcmFwcGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFsdWVX
cmFwcGVyLmNwcAppbmRleCA4MGM3NjI2Li42ZTViNTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBUElWYWx1ZVdyYXBwZXIuY3BwCkBAIC0yOSw2ICsyOSw2
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoSlNBUElWYWx1ZVdyYXBwZXIpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBUElWYWx1ZVdy
YXBwZXI6OnNfaW5mbyA9IHsgIkFQSSBXcmFwcGVyIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0FQSVZhbHVlV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQVBJVmFsdWVXcmFwcGVyKSB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FjdGl2YXRpb24uY3BwCmluZGV4IDgyOTY1MDYuLjZj
MDBiMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZh
dGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9u
LmNwcApAQCAtMzgsNyArMzgsNyBAQCB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQWN0aXZhdGlvbjo6c19pbmZvID0geyAiSlNBY3Rp
dmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FjdGl2
YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJKU0Fj
dGl2YXRpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQWN0aXZh
dGlvbikgfTsKIAogdm9pZCBKU0FjdGl2YXRpb246OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxs
LCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJndW1lbnRzSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJdGVyYXRvci5jcHAKaW5kZXggYjkwMmEzZC4uM2VmYWIy
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVu
dHNJdGVyYXRvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcmd1bWVudHNJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcmd1
bWVudHNJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpz
X2luZm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcmd1bWVudHNJdGVyYXRvcikgfTsKIAogdm9pZCBKU0FyZ3VtZW50c0l0
ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEFyZ3VtZW50cyogYXJndW1lbnRzKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAppbmRleCBmNGJjMDkzLi44
ODU3ZGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcApAQCAt
NDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEpTQXJyYXkpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheSl9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9
IHsiQXJyYXkiLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXkpfTsKIAogQnV0dGVyZmx5KiBjcmVhdGVBcnJheUJ1dHRlcmZseUluRGljdGlv
bmFyeUluZGV4aW5nTW9kZSgKICAgICBWTSYgdm0sIEpTQ2VsbCogaW50ZW5kZWRPd25lciwgdW5z
aWduZWQgaW5pdGlhbExlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheUJ1ZmZlci5jcHAKaW5kZXggNjEwNWJkNi4uMzY4YjFlMyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlcjo6c19p
bmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OworICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OwogCiBKU0FycmF5
QnVmZmVyOjpKU0FycmF5QnVmZmVyKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NS
ZWZQdHI8QXJyYXlCdWZmZXI+IGFycmF5QnVmZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZl
ckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlC
dWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjJmNzljOC4uZGMzMGU3MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBKU0Mgewogc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlCdWZmZXJGdW5jSXNWaWV3KEV4ZWNTdGF0ZSop
OwogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwKKyAgICAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCAwLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yKQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcAppbmRleCA4ZWYzYWEzLi41YjUyZmM1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVm
ZmVyUHJvdG90eXBlLmNwcApAQCAtNzAsNyArNzAsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBhcnJheUJ1ZmZlclByb3RvRnVuY1NsaWNlKEV4ZWNTdGF0ZSogZXhlYykK
IH0KIAogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsK
LSAgICAiQXJyYXlCdWZmZXJQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQcm90b3R5cGUpCisgICAgIkFycmF5QnVmZmVyUHJv
dG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVm
ZmVyUHJvdG90eXBlKQogfTsKIAogSlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6SlNBcnJheUJ1ZmZl
clByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwCmluZGV4IGRhMGNk
ZTIuLmM0NGFiNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
QXJyYXlCdWZmZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyVmlldy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0Mgewog
CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlclZpZXc6OnNfaW5mbyA9IHsKLSAgICAiQXJy
YXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0FycmF5QnVmZmVyVmlldykKKyAgICAiQXJyYXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlC
dWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5k
ZXggYzYyMjBmNS4uNzEwODhlNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5SXRlcmF0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fy
cmF5SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8g
PSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0FycmF5SXRlcmF0b3IpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGFycmF5SXRlcmF0b3JOZXh0S2V5KEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlJdGVyYXRvck5leHRWYWx1ZShFeGVjU3RhdGUqKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3BwCmlu
ZGV4IGVmNzljNDIuLjhmYzRhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQm91bmRG
dW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0JvdW5kRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JvdW5k
RnVuY3Rpb24pIH07CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYm91bmRGdW5jdGlv
bkNhbGwoRXhlY1N0YXRlKiBleGVjKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQ29uc29sZS5jcHAKaW5kZXggNTY3MTJmMi4uN2QwNGFiZiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0NvbnNvbGUuY3BwCkBAIC0zMSw2ICszMSw2IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25z
b2xlIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25zb2xlIiwgJkJh
c2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUpIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlldy5jcHAKaW5kZXggYmJkYmJk
Ni4uYjc3ZDQ4ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNE
YXRhVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmll
dy5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0lu
Zm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OworICAgICJEYXRhVmlldyIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OwogCiBK
U0RhdGFWaWV3OjpKU0RhdGFWaWV3KFZNJiB2bSwgQ29uc3RydWN0aW9uQ29udGV4dCYgY29udGV4
dCwgQXJyYXlCdWZmZXIqIGJ1ZmZlcikKICAgICA6IEJhc2Uodm0sIGNvbnRleHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3UHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3Bw
CmluZGV4IDkyOTAwZTYuLjJlMWRiYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCkBAIC0zNiwxMSArMzYsNiBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXdQcm90b3R5cGU6
OnNfaW5mbyA9IHsKLSAgICAiRGF0YVZpZXdQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCBF
eGVjU3RhdGU6OmRhdGFWaWV3VGFibGUsCi0gICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFW
aWV3UHJvdG90eXBlKQotfTsKLQogLyogU291cmNlIGZvciBKU0RhdGFWaWV3UHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gZGF0YVZpZXdUYWJsZQogICBnZXRJbnQ4ICAgICAgICAgICAgICAgZGF0YVZp
ZXdQcm90b0Z1bmNHZXRJbnQ4ICAgICAgICAgICAgIERvbnRFbnVtfEZ1bmN0aW9uICAgICAgIDAK
QEAgLTYyLDYgKzU3LDM0IEBAIGNvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpz
X2luZm8gPSB7CiBAZW5kCiAqLwogCitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBkYXRhVmlld1Byb3RvRnVuY0dldEludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldEludDE2KEV4ZWNTdGF0ZSop
Oworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNH
ZXRJbnQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGRhdGFWaWV3UHJvdG9GdW5jR2V0VWludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldFVpbnQxNihFeGVjU3RhdGUq
KTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5j
R2V0VWludDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDY0KEV4ZWNT
dGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90
b0Z1bmNTZXRJbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRJbnQxNihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0SW50MzIoRXhlY1N0
YXRlKik7CitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3Rv
RnVuY1NldFVpbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRVaW50MTYoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldFVpbnQzMihFeGVj
U3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJv
dG9GdW5jU2V0RmxvYXQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0RmxvYXQ2NChFeGVjU3RhdGUqKTsKKworfQor
CisjaW5jbHVkZSAiSlNEYXRhVmlld1Byb3RvdHlwZS5sdXQuaCIKKworbmFtZXNwYWNlIEpTQyB7
CisKK2NvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7CisgICAg
IkRhdGFWaWV3UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsCisgICAg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFWaWV3UHJvdG90eXBlKQorfTsKKwogSlNEYXRhVmll
d1Byb3RvdHlwZTo6SlNEYXRhVmlld1Byb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQogewpAQCAtODcsNyArMTEwLDcgQEAgYm9v
bCBKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoCiAgICAgSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9w
ZXJ0eVNsb3QmIHNsb3QpCiB7CiAgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09i
amVjdD4oCi0gICAgICAgIGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0YVZpZXdUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEpTRGF0YVZpZXdQcm90b3R5cGUqPihvYmplY3QpLAorICAgICAgICBleGVjLCBk
YXRhVmlld1RhYmxlLCBqc0Nhc3Q8SlNEYXRhVmlld1Byb3RvdHlwZSo+KG9iamVjdCksCiAgICAg
ICAgIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKQEAgLTI2Niw2ICsyODksMyBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldEZsb2F0NjQo
RXhlY1N0YXRlKiBleGVjKQogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKLQotI2luY2x1ZGUgIkpT
RGF0YVZpZXdQcm90b3R5cGUubHV0LmgiCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggMGY0N2FjOS4uNWM2YWRiMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3RvcihF
eGVjU3RhdGUqIGV4ZWMpCiAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihleGVjLCBjcmVhdGVOb3RB
Q29uc3RydWN0b3JFcnJvcihleGVjLCBleGVjLT5jYWxsZWUoKSkpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8g
SlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07CiAKIGJvb2wgSlNGdW5jdGlvbjo6aXNIb3N0
RnVuY3Rpb25Ob25JbmxpbmUoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGZiZjJmZjUuLmNiZjA3YTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKQEAg
LTEzOSw3ICsxMzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBFeGVjU3RhdGU6Omdsb2JhbE9iamVjdFRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1l
dGhvZFRhYmxlIEpTR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAm
YWxsb3dzQWNjZXNzRnJvbSwgJnN1cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNl
SW5mbywgJnNob3VsZEludGVycnVwdFNjcmlwdCwgJmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJs
ZWQsIDAsICZzaG91bGRJbnRlcnJ1cHRTY3JpcHRCZWZvcmVUaW1lb3V0IH07CiAKQEAgLTc0MCw3
ICs3NDAsNyBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjphZGRTdGF0aWNHbG9iYWxzKEdsb2JhbFBy
b3BlcnR5SW5mbyogZ2xvYmFscywgaW50IGNvdW50KQogYm9vbCBKU0dsb2JhbE9iamVjdDo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQogewogICAgIEpTR2xvYmFs
T2JqZWN0KiB0aGlzT2JqZWN0ID0ganNDYXN0PEpTR2xvYmFsT2JqZWN0Kj4ob2JqZWN0KTsKLSAg
ICBpZiAoZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJhc2U+KGV4ZWMsIEV4ZWNTdGF0ZTo6Z2xvYmFs
T2JqZWN0VGFibGUoZXhlYy0+dm0oKSksIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCkp
CisgICAgaWYgKGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBnbG9iYWxPYmplY3RU
YWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgcmV0dXJuIHN5bWJvbFRhYmxlR2V0KHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01h
cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKaW5kZXggNTUw
MGM1Ni4uYzA4YTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcApA
QCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKICAgICAKLWNvbnN0IENsYXNzSW5m
byBKU01hcDo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAi
TWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcCkgfTsKIAog
dm9pZCBKU01hcDo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNp
dG9yKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9y
LmNwcAppbmRleCBkNzMyZWRiLi5lYjRmZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1h
cCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNN
YXBJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcEl0ZXJhdG9yOjpzX2luZm8gPSB7
ICJNYXAgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
TWFwSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNNYXBJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtLCBKU01hcCogaXRlcmF0ZWRPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU05hbWVTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU05hbWVTY29wZS5jcHAKaW5kZXggZGI3MjEzNy4uOWJhN2QxZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYW1lU2NvcGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmFtZVNjb3BlLmNwcApAQCAtMzEsNyArMzEs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpz
X2luZm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTTmFtZVNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpzX2lu
Zm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmFtZVNjb3BlKSB9OwogCiB2b2lkIEpTTmFtZVNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2Vs
bCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCmluZGV4IDIzNjdhMzUuLmFmNDczN2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCkBA
IC0zNiw3ICszNiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoSlNOb3RBbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU05v
dEFuT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTTm90QW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNOb3RB
bk9iamVjdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU05vdEFuT2JqZWN0KSB9OwogCiAvLyBKU1ZhbHVlIG1ldGhvZHMKIEpTVmFs
dWUgSlNOb3RBbk9iamVjdDo6ZGVmYXVsdFZhbHVlKGNvbnN0IEpTT2JqZWN0KiwgRXhlY1N0YXRl
KiBleGVjLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRleCA4N2I5MjM3Li5mNTVjMzUwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNTg4LDcgKzU4OCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpqc29uVGFibGUsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNPTk9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7
ICJKU09OIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU09OT2JqZWN0KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTT05PYmplY3QubHV0
LmgKIEBiZWdpbiBqc29uVGFibGUKQEAgLTYwMSw3ICs2MDEsNyBAQCBjb25zdCBDbGFzc0luZm8g
SlNPTk9iamVjdDo6c19pbmZvID0geyAiSlNPTiIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZQogCiBib29sIEpTT05PYmplY3Q6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCog
b2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3Bl
cnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTT2Jq
ZWN0PihleGVjLCBFeGVjU3RhdGU6Ompzb25UYWJsZShleGVjLT52bSgpKSwganNDYXN0PEpTT05P
YmplY3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0
aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGpzb25UYWJsZSwganNDYXN0PEpTT05PYmpl
Y3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiBjbGFzcyBXYWxrZXIgewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCmluZGV4IDk4NzA3NTAu
LmMxNWZjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAK
QEAgLTcwLDkgKzcwLDkgQEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KEpTRmluYWxPYmplY3QpOwogCiBjb25zdCBjaGFyKiBTdHJpY3RNb2RlUmVhZG9ubHlQcm9wZXJ0
eVdyaXRlRXJyb3IgPSAiQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS4i
OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAs
IDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNP
YmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNP
YmplY3QpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2JqZWN0OjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNGaW5hbE9iamVjdDo6c19pbmZvID0geyAiT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsT2JqZWN0
KSB9OwogCiBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8sIFByb3BlcnR5TmFtZUFycmF5JiBw
cm9wZXJ0eU5hbWVzLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSwgYm9vbCBkaWRSZWlmeSkKIHsKQEAg
LTgwLDExICs4MCwxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVz
KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzcwogCiAgICAgLy8gQWRkIHBy
b3BlcnRpZXMgZnJvbSB0aGUgc3RhdGljIGhhc2h0YWJsZXMgb2YgcHJvcGVydGllcwogICAgIGZv
ciAoOyBjbGFzc0luZm87IGNsYXNzSW5mbyA9IGNsYXNzSW5mby0+cGFyZW50Q2xhc3MpIHsKLSAg
ICAgICAgY29uc3QgSGFzaFRhYmxlKiB0YWJsZSA9IGNsYXNzSW5mby0+cHJvcEhhc2hUYWJsZSh2
bSk7CisgICAgICAgIGNvbnN0IEhhc2hUYWJsZSogdGFibGUgPSBjbGFzc0luZm8tPnN0YXRpY1By
b3BIYXNoVGFibGU7CiAgICAgICAgIGlmICghdGFibGUpCiAgICAgICAgICAgICBjb250aW51ZTsK
IAotICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5iZWdpbih2bSk7IGl0ZXIgIT0gdGFi
bGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5i
ZWdpbigpOyBpdGVyICE9IHRhYmxlLT5lbmQoKTsgKytpdGVyKSB7CiAgICAgICAgICAgICBpZiAo
KCEoaXRlci0+YXR0cmlidXRlcygpICYgRG9udEVudW0pIHx8IChtb2RlID09IEluY2x1ZGVEb250
RW51bVByb3BlcnRpZXMpKSAmJiAhKChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikgJiYgZGlkUmVpZnkpKQogICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKElk
ZW50aWZpZXIoJnZtLCBpdGVyLmtleSgpKSk7CiAgICAgICAgIH0KQEAgLTQwMSw4ICs0MDEsOCBA
QCB2b2lkIEpTT2JqZWN0OjpwdXQoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEpTVgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0K
ICAgICAgICAgY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gb2JqLT5jbGFzc0luZm8oKTsKLSAgICAg
ICAgaWYgKGluZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSkgewot
ICAgICAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IG9iai0+ZmluZFBy
b3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpKSB7CisgICAgICAgIGlmIChpbmZvLT5o
YXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKSB7CisgICAgICAgICAgICBpZiAo
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gb2JqLT5maW5kUHJvcGVydHlIYXNoRW50cnko
cHJvcGVydHlOYW1lKSkgewogICAgICAgICAgICAgICAgIHB1dEVudHJ5KGV4ZWMsIGVudHJ5LCBv
YmosIHByb3BlcnR5TmFtZSwgdmFsdWUsIHNsb3QpOwogICAgICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgICAgIH0KQEAgLTEyOTgsNyArMTI5OCw3IEBAIGJvb2wgSlNPYmplY3Q6OmRlbGV0
ZVByb3BlcnR5KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJv
cGVyCiAgICAgfQogCiAgICAgLy8gTG9vayBpbiB0aGUgc3RhdGljIGhhc2h0YWJsZSBvZiBwcm9w
ZXJ0aWVzCi0gICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGhpc09iamVjdC0+Zmlu
ZFByb3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpOworICAgIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlKiBlbnRyeSA9IHRoaXNPYmplY3QtPmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShwcm9wZXJ0
eU5hbWUpOwogICAgIGlmIChlbnRyeSkgewogICAgICAgICBpZiAoZW50cnktPmF0dHJpYnV0ZXMo
KSAmIERvbnREZWxldGUgJiYgIXZtLmlzSW5EZWZpbmVPd25Qcm9wZXJ0eSgpKQogICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOyAvLyB0aGlzIGJ1aWx0aW4gcHJvcGVydHkgY2FuJ3QgYmUgZGVsZXRl
ZApAQCAtMTQyNiwxMSArMTQyNiwxMSBAQCBKU1ZhbHVlIEpTT2JqZWN0OjpkZWZhdWx0VmFsdWUo
Y29uc3QgSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcmVmZXJyZQogICAgIHJl
dHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVj
LCBBU0NJSUxpdGVyYWwoIk5vIGRlZmF1bHQgdmFsdWUiKSkpOwogfQogCi1jb25zdCBIYXNoVGFi
bGVWYWx1ZSogSlNPYmplY3Q6OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShWTSYgdm0sIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0Citjb25zdCBIYXNoVGFibGVWYWx1ZSogSlNPYmplY3Q6
OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKSBjb25zdAog
ewogICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gY2xhc3NJbmZvKCk7IGluZm87IGlu
Zm8gPSBpbmZvLT5wYXJlbnRDbGFzcykgewotICAgICAgICBpZiAoY29uc3QgSGFzaFRhYmxlKiBw
cm9wSGFzaFRhYmxlID0gaW5mby0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKLSAgICAgICAgICAgIGlm
IChjb25zdCBIYXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeSh2bSwg
cHJvcGVydHlOYW1lKSkKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogcHJvcEhhc2hUYWJs
ZSA9IGluZm8tPnN0YXRpY1Byb3BIYXNoVGFibGUpIHsKKyAgICAgICAgICAgIGlmIChjb25zdCBI
YXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeShwcm9wZXJ0eU5hbWUp
KQogICAgICAgICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICAgfQogICAgIH0KQEAgLTE2
NDYsMTEgKzE2NDYsMTEgQEAgdm9pZCBKU09iamVjdDo6cmVpZnlTdGF0aWNGdW5jdGlvbnNGb3JE
ZWxldGUoRXhlY1N0YXRlKiBleGVjKQogICAgICAgICBzZXRTdHJ1Y3R1cmUodm0sIFN0cnVjdHVy
ZTo6dG9VbmNhY2hlYWJsZURpY3Rpb25hcnlUcmFuc2l0aW9uKHZtLCBzdHJ1Y3R1cmUodm0pKSk7
CiAKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogaW5mbyA9IGNsYXNzSW5mbygpOyBpbmZvOyBp
bmZvID0gaW5mby0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlKiBoYXNo
VGFibGUgPSBpbmZvLT5wcm9wSGFzaFRhYmxlKHZtKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxl
KiBoYXNoVGFibGUgPSBpbmZvLT5zdGF0aWNQcm9wSGFzaFRhYmxlOwogICAgICAgICBpZiAoIWhh
c2hUYWJsZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzKTsKLSAgICAgICAgZm9yIChhdXRvIGl0ZXIgPSBoYXNoVGFibGUtPmJlZ2luKHZtKTsg
aXRlciAhPSBoYXNoVGFibGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8g
aXRlciA9IGhhc2hUYWJsZS0+YmVnaW4oKTsgaXRlciAhPSBoYXNoVGFibGUtPmVuZCgpOyArK2l0
ZXIpIHsKICAgICAgICAgICAgIGlmIChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikKICAgICAgICAgICAgICAgICBzZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdChnbG9iYWxPYmpl
Y3QoKS0+Z2xvYmFsRXhlYygpLCBpdGVyLnZhbHVlKCksIHRoaXMsIElkZW50aWZpZXIoJnZtLCBp
dGVyLmtleSgpKSwgc2xvdCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5oCmluZGV4IGQ1ZDRmNTkuLmRiOGE2YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuaApAQCAtOTY2LDcgKzk2Niw3IEBAIHByaXZhdGU6CiAgICAg
SlNfRVhQT1JUX1BSSVZBVEUgdm9pZCBmaWxsR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xv
dCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBQcm9wZXJ0eU9mZnNldCk7CiAgICAgdm9pZCBmaWxsQ3Vz
dG9tR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xvdCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBT
dHJ1Y3R1cmUmKTsKIAotICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBmaW5kUHJvcGVydHlIYXNo
RW50cnkoVk0mLCBQcm9wZXJ0eU5hbWUpIGNvbnN0OworICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVl
KiBmaW5kUHJvcGVydHlIYXNoRW50cnkoUHJvcGVydHlOYW1lKSBjb25zdDsKICAgICAgICAgCiAg
ICAgdm9pZCBwdXRJbmRleGVkRGVzY3JpcHRvcihFeGVjU3RhdGUqLCBTcGFyc2VBcnJheUVudHJ5
KiwgY29uc3QgUHJvcGVydHlEZXNjcmlwdG9yJiwgUHJvcGVydHlEZXNjcmlwdG9yJiBvbGQpOwog
ICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
bWlzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmlu
ZGV4IDlmMTgyYzkuLmE4ZjU5M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNQcm9taXNlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGlj
IHZvaWQgdHJpZ2dlclByb21pc2VSZWFjdGlvbnMoVk0mLCBKU0dsb2JhbE9iamVjdCosIFZlY3Rv
cjxXcml0ZUJhcnJpZXI8SlNQcm9taXNlUmVhY3Rpb24+PiYsIEpTVmFsdWUpOwogCi1jb25zdCBD
bGFzc0luZm8gSlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywg
MCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07Citjb25zdCBDbGFzc0luZm8g
SlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVh
dGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Byb21pc2VDb25zdHJ1
Y3RvciogY29uc3RydWN0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDAyNjE5Ni4uZGI2OWZkNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNBbGwoRXhlY1N0YXRlKik7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcHJvbWlz
ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlQ29uc3RydWN0
b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSlNQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBwcm9taXNlQ29uc3RydWN0b3JUYWJsZQpAQCAtMTYxLDcgKzE2MSw3IEBAIENhbGxUeXBlIEpT
UHJvbWlzZUNvbnN0cnVjdG9yOjpnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYgY2FsbERh
dGEpCiAKIGJvb2wgSlNQcm9taXNlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6cHJvbWlzZUNvbnN0cnVjdG9yVGFi
bGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxKU1Byb21pc2VDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxJbnRl
cm5hbEZ1bmN0aW9uPihleGVjLCBwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PEpTUHJv
bWlzZUNvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNDYXN0KEV4
ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZURlZmVycmVkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvbWlzZURlZmVycmVkLmNwcAppbmRleCA2N2ZkNTUwLi44OWQ5MTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlRGVmZXJyZWQuY3BwCkBAIC0z
OSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9t
aXNlRGVmZXJyZWQ6OnNfaW5mbyA9IHsgIkpTUHJvbWlzZURlZmVycmVkIiwgMCwgMCwgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VEZWZlcnJlZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb21pc2VEZWZlcnJlZDo6c19pbmZvID0geyAiSlNQcm9taXNlRGVmZXJyZWQiLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZURlZmVycmVkKSB9OwogCiBKU1Byb21pc2VEZWZl
cnJlZCogSlNQcm9taXNlRGVmZXJyZWQ6OmNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcAppbmRleCAwZGVkNTdmLi44NTU4Yzc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3Rv
dHlwZS5jcHAKQEAgLTUxLDcgKzUxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgSlNQcm9taXNlUHJvdG90eXBlRnVuY1RoZW4oRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJQcm9taXNlUHJvdG90eXBlIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNl
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZVByb3RvdHlwZTo6c19pbmZv
ID0geyAiUHJvbWlzZVByb3RvdHlwZSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZwcm9t
aXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBy
b21pc2VQcm90b3R5cGVUYWJsZQpAQCAtODUsNyArODUsNyBAQCB2b2lkIEpTUHJvbWlzZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBTdHJ1Y3R1cmUqKQogCiBib29sIEpTUHJvbWlz
ZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0
ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQog
ewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIEV4ZWNT
dGF0ZTo6cHJvbWlzZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nhc3Q8SlNQcm9taXNl
UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0
U3RhdGljRnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBwcm9taXNlUHJvdG90eXBlVGFibGUs
IGpzQ2FzdDxKU1Byb21pc2VQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTUHJvbWlzZVByb3RvdHlwZUZ1
bmNUaGVuKEV4ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcAppbmRleCAxZDNhYjZmLi4wNWUxY2M4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUmVhY3Rpb24u
Y3BwCkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBFeGVjdXRlUHJvbWlzZVJlYWN0aW9uTWljcm90
YXNrOjpydW4oRXhlY1N0YXRlKiBleGVjKQogfQogCiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VSZWFjdGlvbjo6c19pbmZvID0geyAiSlNQcm9taXNlUmVhY3Rpb24iLCAwLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVJlYWN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
UHJvbWlzZVJlYWN0aW9uOjpzX2luZm8gPSB7ICJKU1Byb21pc2VSZWFjdGlvbiIsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUmVhY3Rpb24pIH07CiAKIEpTUHJvbWlzZVJlYWN0
aW9uKiBKU1Byb21pc2VSZWFjdGlvbjo6Y3JlYXRlKFZNJiB2bSwgSlNQcm9taXNlRGVmZXJyZWQq
IGRlZmVycmVkLCBKU1ZhbHVlIGhhbmRsZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb3BlcnR5TmFtZUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCmluZGV4IGI1OTU5
ODAuLmU3ZjI3MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6c19p
bmZvID0geyAiSlNQcm9wZXJ0eU5hbWVJdGVyYXRvciIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yIiwgMCwg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yKSB9OwogCiBpbmxp
bmUgSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6SlNQcm9wZXJ0eU5hbWVJdGVyYXRvcihFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZUFycmF5RGF0YSogcHJvcGVydHlOYW1lQXJyYXlEYXRhLCBz
aXplX3QgbnVtQ2FjaGVhYmxlU2xvdHMpCiAgICAgOiBKU0NlbGwoZXhlYy0+dm0oKSwgZXhlYy0+
dm0oKS5wcm9wZXJ0eU5hbWVJdGVyYXRvclN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJveHkuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKaW5kZXggNDk0YTc5ZS4uOTU4ODZmMCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShKU1Byb3h5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJveHk6OnNfaW5mbyA9IHsgIkpTUHJv
eHkiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07
Citjb25zdCBDbGFzc0luZm8gSlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKIAogdm9pZCBKU1Byb3h5
Ojp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOWM5YWE1Mi4uM2MxZDEy
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApAQCAtMzMsNyArMzMs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8g
PSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19p
bmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OwogCiB2b2lkIEpTU2V0Ojp2aXNp
dENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldEl0ZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCmluZGV4IDFmZGZl
MjkuLmVjOTJjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2V0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0
SXRlcmF0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTU2V0SXRlcmF0b3I6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXRJdGVyYXRvcikgfTsK
IAogdm9pZCBKU1NldEl0ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTU2V0KiBpdGVy
YXRlZE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3RyaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNw
cAppbmRleCBiNTE0MWIxLi5mZjNiNjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1N0cmluZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNTdHJpbmcuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogICAg
IAotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3Ry
aW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3Ry
aW5nKSB9OwogCiB2b2lkIEpTUm9wZVN0cmluZzo6Um9wZUJ1aWxkZXI6OmV4cGFuZCgpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5
Q29uc3RydWN0b3JzLmNwcAppbmRleCA3YzQ5NTVkLi5mNDJmMzE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiAjZGVmaW5lIE1BS0Vf
U19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMj
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9y
OjpCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0
cnVjdG9yKX0KKyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0K
IAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19JTkZPKEludDE2QXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90
eXBlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90
b3R5cGVzLmNwcAppbmRleCA3OGM2YmFmLi5jMDFkOGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcApAQCAt
MzIsNyArMzIsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFLRV9TX0lORk8odHlw
ZSkgXAotICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBlIyNQcm90b3R5cGU6
OnNfaW5mbyA9IHsjdHlwZSAiUHJvdG90eXBlIiwgJkpTIyN0eXBlIyNQcm90b3R5cGU6OkJhc2U6
OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKUyMjdHlwZSMjUHJvdG90eXBlKX0K
KyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpzX2lu
Zm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1Byb3RvdHlwZSl9CiAKIE1BS0Vf
U19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKaW5kZXggNDk2NDkwNy4u
MmM1YzQ3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBl
ZEFycmF5cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFy
cmF5cy5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFL
RV9TX0lORk8odHlwZSkgXAogICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBl
IyNBcnJheTo6c19pbmZvID0geyBcCi0gICAgICAgICN0eXBlICJBcnJheSIsICZKUyMjdHlwZSMj
QXJyYXk6OkJhc2U6OnNfaW5mbywgMCwgMCwgXAorICAgICAgICAjdHlwZSAiQXJyYXkiLCAmSlMj
I3R5cGUjI0FycmF5OjpCYXNlOjpzX2luZm8sIDAsIFwKICAgICAgICAgQ1JFQVRFX01FVEhPRF9U
QUJMRShKUyMjdHlwZSMjQXJyYXkpIFwKICAgICB9OyBcCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBn
ZXQjI3R5cGUjI0FycmF5Q2xhc3NJbmZvKCkgeyByZXR1cm4gJkpTIyN0eXBlIyNBcnJheTo6c19p
bmZvOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Zhcmlh
YmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVP
YmplY3QuY3BwCmluZGV4IGQxOWM2NTguLmM3ZDRiYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCkBAIC0zMyw2ICszMyw2IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNWYXJpYWJsZU9iamVjdDo6
c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNWYXJp
YWJsZU9iamVjdDo6c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07CiAKIH0gLy8gbmFtZXNw
YWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFr
TWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKaW5k
ZXggZjU0NjUyYi4uODBiNDZjZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNXZWFrTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5m
bywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07CiAKIHZvaWQgSlNXZWFrTWFwOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dp
dGhTY29wZS5jcHAKaW5kZXggNjg5ZjE1Mi4uMjNkNzA4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJX
aXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0
aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJXaXRo
U2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3Bl
KSB9OwogCiB2b2lkIEpTV2l0aFNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xv
dFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Mb29rdXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3Vw
LmNwcAppbmRleCA0ODI4YmNkLi5lZjdhYmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Mb29rdXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0xvb2t1cC5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLXZv
aWQgSGFzaFRhYmxlOjpjcmVhdGVUYWJsZShWTSYpIGNvbnN0Cit2b2lkIEhhc2hUYWJsZTo6Y3Jl
YXRlVGFibGUoKSBjb25zdAogewogICAgIEFTU0VSVCgha2V5cyk7CiAgICAga2V5cyA9IHN0YXRp
Y19jYXN0PGNvbnN0IGNoYXIqKj4oZmFzdE1hbGxvYyhzaXplb2YoY2hhciopICogbnVtYmVyT2ZW
YWx1ZXMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xvb2t1
cC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3VwLmgKaW5kZXggOTA5NzM0
YjQ0Li44NTMzNjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9M
b29rdXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Mb29rdXAuaApAQCAt
ODMsMzEgKzgzLDQwIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKICAgICAgICAgfQogCi0gICAgICAgIEFMV0FZU19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZO
ZWVkZWQoVk0mIHZtKSBjb25zdAorICAgICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgaW5pdGlhbGl6
ZUlmTmVlZGVkKCkgY29uc3QKICAgICAgICAgewogICAgICAgICAgICAgaWYgKCFrZXlzKQotICAg
ICAgICAgICAgICAgIGNyZWF0ZVRhYmxlKHZtKTsKLSAgICAgICAgfQotCi0gICAgICAgIEFMV0FZ
U19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZOZWVkZWQoRXhlY1N0YXRlKiBleGVjKSBjb25zdAot
ICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIWtleXMpCi0gICAgICAgICAgICAgICAgY3JlYXRl
VGFibGUoZXhlYy0+dm0oKSk7CisgICAgICAgICAgICAgICAgY3JlYXRlVGFibGUoKTsKICAgICAg
ICAgfQogCiAgICAgICAgIEpTX0VYUE9SVF9QUklWQVRFIHZvaWQgZGVsZXRlVGFibGUoKSBjb25z
dDsKIAogICAgICAgICAvLyBGaW5kIGFuIGVudHJ5IGluIHRoZSB0YWJsZSwgYW5kIHJldHVybiB0
aGUgZW50cnkuCi0gICAgICAgIEFMV0FZU19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVu
dHJ5KFZNJiB2bSwgUHJvcGVydHlOYW1lIGlkZW50aWZpZXIpIGNvbnN0CisgICAgICAgIEFMV0FZ
U19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpIGNvbnN0CiAgICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2
bSk7Ci0gICAgICAgICAgICByZXR1cm4gZW50cnkoaWRlbnRpZmllcik7Ci0gICAgICAgIH0KKyAg
ICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCgpOwogCi0gICAgICAgIEFMV0FZU19JTkxJTkUg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1l
IGlkZW50aWZpZXIpIGNvbnN0Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5l
ZWRlZChleGVjKTsKLSAgICAgICAgICAgIHJldHVybiBlbnRyeShpZGVudGlmaWVyKTsKKyAgICAg
ICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUudWlkKCk7CisgICAgICAgICAg
ICBpZiAoIWltcGwpCisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIAorICAgICAg
ICAgICAgQVNTRVJUKGtleXMpOworCisgICAgICAgICAgICBpbnQgaW5kZXhFbnRyeSA9IGltcGwt
PmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOworICAgICAgICAgICAgaW50IHZhbHVlSW5kZXgg
PSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKKyAgICAgICAgICAgIGlmICh2YWx1ZUluZGV4ID09
IC0xKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAodHJ1
ZSkgeworICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGltcGwsIGtleXNbdmFsdWVJbmRl
eF0pKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVlc1t2YWx1ZUluZGV4XTsKKwor
ICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRleEVudHJ5XS5uZXh0OworICAg
ICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgICAgICAgICB2YWx1ZUluZGV4ID0gaW5kZXhbaW5kZXhF
bnRyeV0udmFsdWU7CisgICAgICAgICAgICAgICAgQVNTRVJUKHZhbHVlSW5kZXggIT0gLTEpOwor
ICAgICAgICAgICAgfTsKICAgICAgICAgfQogCiAgICAgICAgIGNsYXNzIENvbnN0SXRlcmF0b3Ig
ewpAQCAtMTYxLDQ1ICsxNzAsMjAgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgICAgICBpbnQg
bV9wb3NpdGlvbjsKICAgICAgICAgfTsKIAotICAgICAgICBDb25zdEl0ZXJhdG9yIGJlZ2luKFZN
JiB2bSkgY29uc3QKKyAgICAgICAgQ29uc3RJdGVyYXRvciBiZWdpbigpIGNvbnN0CiAgICAgICAg
IHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2bSk7CisgICAgICAgICAgICBpbml0
aWFsaXplSWZOZWVkZWQoKTsKICAgICAgICAgICAgIHJldHVybiBDb25zdEl0ZXJhdG9yKHRoaXMs
IDApOwogICAgICAgICB9Ci0gICAgICAgIENvbnN0SXRlcmF0b3IgZW5kKFZNJiB2bSkgY29uc3QK
KyAgICAgICAgQ29uc3RJdGVyYXRvciBlbmQoKSBjb25zdAogICAgICAgICB7Ci0gICAgICAgICAg
ICBpbml0aWFsaXplSWZOZWVkZWQodm0pOworICAgICAgICAgICAgaW5pdGlhbGl6ZUlmTmVlZGVk
KCk7CiAgICAgICAgICAgICByZXR1cm4gQ29uc3RJdGVyYXRvcih0aGlzLCBudW1iZXJPZlZhbHVl
cyk7CiAgICAgICAgIH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIEFMV0FZU19JTkxJTkUgY29u
c3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUu
dWlkKCk7Ci0gICAgICAgICAgICBpZiAoIWltcGwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDA7
Ci0gICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGtleXMpOwotCi0gICAgICAgICAgICBpbnQg
aW5kZXhFbnRyeSA9IGltcGwtPmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOwotICAgICAgICAg
ICAgaW50IHZhbHVlSW5kZXggPSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKLSAgICAgICAgICAg
IGlmICh2YWx1ZUluZGV4ID09IC0xKQotICAgICAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgICAgICB3aGlsZSAodHJ1ZSkgewotICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGlt
cGwsIGtleXNbdmFsdWVJbmRleF0pKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVl
c1t2YWx1ZUluZGV4XTsKLQotICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRl
eEVudHJ5XS5uZXh0OwotICAgICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQotICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgICAgICB2YWx1ZUlu
ZGV4ID0gaW5kZXhbaW5kZXhFbnRyeV0udmFsdWU7Ci0gICAgICAgICAgICAgICAgQVNTRVJUKHZh
bHVlSW5kZXggIT0gLTEpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgfQotCiAgICAgICAgIC8v
IENvbnZlcnQgdGhlIGhhc2ggdGFibGUga2V5cyB0byBpZGVudGlmaWVycy4KLSAgICAgICAgSlNf
RVhQT1JUX1BSSVZBVEUgdm9pZCBjcmVhdGVUYWJsZShWTSYpIGNvbnN0OworICAgICAgICBKU19F
WFBPUlRfUFJJVkFURSB2b2lkIGNyZWF0ZVRhYmxlKCkgY29uc3Q7CiAgICAgfTsKIAogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgc2V0VXBTdGF0aWNGdW5jdGlvblNsb3QoRXhlY1N0YXRlKiwg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqLCBKU09iamVjdCogdGhpc09iamVjdCwgUHJvcGVydHlOYW1l
LCBQcm9wZXJ0eVNsb3QmKTsKQEAgLTIxMyw3ICsxOTcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICB0ZW1wbGF0ZSA8Y2xhc3MgVGhpc0ltcCwgY2xhc3MgUGFyZW50SW1wPgogICAgIGlubGluZSBi
b29sIGdldFN0YXRpY1Byb3BlcnR5U2xvdChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEhhc2hUYWJs
ZSYgdGFibGUsIFRoaXNJbXAqIHRoaXNPYmosIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCYgc2xvdCkKICAgICB7Ci0gICAgICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBl
bnRyeSA9IHRhYmxlLmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgICAgIGNvbnN0IEhh
c2hUYWJsZVZhbHVlKiBlbnRyeSA9IHRhYmxlLmVudHJ5KHByb3BlcnR5TmFtZSk7CiAKICAgICAg
ICAgaWYgKCFlbnRyeSkgLy8gbm90IGZvdW5kLCBmb3J3YXJkIHRvIHBhcmVudAogICAgICAgICAg
ICAgcmV0dXJuIFBhcmVudEltcDo6Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmosIGV4ZWMsIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CkBAIC0yNDEsNyArMjI1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAg
ICAgICAgIGlmIChQYXJlbnRJbXA6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqLCBleGVjLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICAgICAg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlO
YW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnko
cHJvcGVydHlOYW1lKTsKICAgICAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKIApAQCAtMjU1LDcgKzIzOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgIHRlbXBsYXRl
IDxjbGFzcyBUaGlzSW1wLCBjbGFzcyBQYXJlbnRJbXA+CiAgICAgaW5saW5lIGJvb2wgZ2V0U3Rh
dGljVmFsdWVTbG90KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSGFzaFRhYmxlJiB0YWJsZSwgVGhp
c0ltcCogdGhpc09iaiwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBz
bG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUu
ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUq
IGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1lKTsKIAogICAgICAgICBpZiAoIWVudHJ5
KSAvLyBub3QgZm91bmQsIGZvcndhcmQgdG8gcGFyZW50CiAgICAgICAgICAgICByZXR1cm4gUGFy
ZW50SW1wOjpnZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iaiwgZXhlYywgcHJvcGVydHlOYW1lLCBz
bG90KTsKQEAgLTI5MSw3ICsyNzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgKi8KICAgICBp
bmxpbmUgYm9vbCBsb29rdXBQdXQoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVy
dHlOYW1lLCBKU09iamVjdCogYmFzZSwgSlNWYWx1ZSB2YWx1ZSwgY29uc3QgSGFzaFRhYmxlJiB0
YWJsZSwgUHV0UHJvcGVydHlTbG90JiBzbG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRh
YmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAg
ICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1l
KTsKIAogICAgICAgICBpZiAoIWVudHJ5KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4
IDA0ZjE3ZDkuLmZiNjgzMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcENvbnN0cnVjdG9y
KSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3Ip
IH07CiAKIHZvaWQgTWFwQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTWFwUHJv
dG90eXBlKiBtYXBQcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cERhdGEuY3BwCmluZGV4IGI5ZTczYWUuLmRkYzYwMjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXBEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcApAQCAtMzgsNyArMzgsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcERhdGE6OnNfaW5mbyA9IHsgIk1hcERhdGEiLCAwLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcERhdGEpIH07Citjb25zdCBDbGFzc0luZm8gTWFw
RGF0YTo6c19pbmZvID0geyAiTWFwRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFw
RGF0YSkgfTsKIAogc3RhdGljIGNvbnN0IGludDMyX3QgbWluaW11bU1hcFNpemUgPSA4OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvckNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29u
c3RydWN0b3IuY3BwCmluZGV4IDQwY2MyMzkuLjBmOTNkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBA
IC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFw
SXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTWFwSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgTWFwSXRlcmF0b3JD
b25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBNYXBJdGVyYXRvclByb3RvdHlwZSog
cHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDc4ZmI2NjkuLjBkZDlkZWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJdGVyYXRvclByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAi
TWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJ
dGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgTWFwSXRlcmF0b3JQcm90b3R5cGVGdW5jSXRlcmF0b3IoRXhlY1N0YXRlKik7CiBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBNYXBJdGVyYXRvclByb3RvdHlwZUZ1bmNOZXh0
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3Rv
dHlwZS5jcHAKaW5kZXggNTIyMTE3Ny4uZDIyMTNmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJN
YXAiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCIsICZC
YXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwUHJvdG90eXBlKSB9OwogCiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBtYXBQcm90b0Z1bmNDbGVhcihFeGVj
U3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG1hcFByb3RvRnVu
Y0RlbGV0ZShFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hdGhPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0
aE9iamVjdC5jcHAKaW5kZXggYmI5NGViNi4uMzc3MzIyNSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgbWF0aFByb3RvRnVuY0lNdWwoRXhlY1N0YXRlKik7
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWF0aE9iamVjdDo6c19pbmZv
ID0geyAiTWF0aCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWF0
aE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXRoT2JqZWN0OjpzX2luZm8gPSB7ICJNYXRo
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9Owog
CiBNYXRoT2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAg
ICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcAppbmRleCAzOTI2ODgzLi5lNDk3
YTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVDb25zdHJ1
Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOYW1lQ29uc3RydWN0b3IpOwogCi1jb25zdCBD
bGFzc0luZm8gTmFtZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIE5hbWVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVDb25zdHJ1Y3RvcikgfTsKIAog
TmFtZUNvbnN0cnVjdG9yOjpOYW1lQ29uc3RydWN0b3IoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICA6IEludGVybmFsRnVuY3Rpb24odm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lSW5zdGFuY2UuY3BwCmluZGV4IGNjNmNlOWIuLmY2
ZDdmNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0
YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZUluc3RhbmNl
LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE5hbWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5h
bWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OwogCiBOYW1lSW5zdGFuY2U6Ok5hbWVJbnN0YW5j
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1N0cmluZyogbmFtZVN0cmluZykKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmFtZVByb3RvdHlwZS5jcHAKaW5kZXggZDAzMGZkMC4uYmYwOGQ5YSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5
LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgcHJpdmF0ZU5hbWVQcm90
b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBOYW1lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJOYW1lIiwgJkJhc2U6OnNfaW5mbywg
MCwgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE5hbWVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gTmFtZVByb3RvdHlwZTo6c19p
bmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sICZwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxl
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
TmFtZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByaXZhdGVOYW1lUHJvdG90eXBlVGFibGUKQEAg
LTYwLDcgKzYwLDcgQEAgdm9pZCBOYW1lUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAKIGJvb2wgTmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmpl
Y3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlT
bG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8QmFzZT4oZXhl
YywgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nh
c3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0
dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBwcml2YXRlTmFtZVByb3RvdHlw
ZVRhYmxlLCBqc0Nhc3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xv
dCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyNjAwNTUuLjMy
YzlmNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVy
cm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05h
dGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRl
cm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3RvcikgfTsKIAogTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6TmF0aXZlRXJyb3JDb25z
dHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSW50ZXJuYWxGdW5j
dGlvbih2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDA0YzUwOTguLmY0ZWFlZGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAK
QEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5m
byBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoTnVtYmVyQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTnVt
YmVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgTnVtYmVyQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBudW1iZXJDb25zdHJ1Y3RvclRhYmxlCkBAIC03NCw3ICs3NCw3IEBAIHZvaWQg
TnVtYmVyQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTnVtYmVyUHJvdG90eXBl
KiBudW1iZXJQcm90b3R5cGUpCiAKIGJvb2wgTnVtYmVyQ29uc3RydWN0b3I6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
VmFsdWVTbG90PE51bWJlckNvbnN0cnVjdG9yLCBJbnRlcm5hbEZ1bmN0aW9uPihleGVjLCBFeGVj
U3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxOdW1iZXJD
b25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdl
dFN0YXRpY1ZhbHVlU2xvdDxOdW1iZXJDb25zdHJ1Y3RvciwgSW50ZXJuYWxGdW5jdGlvbj4oZXhl
YywgbnVtYmVyQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PE51bWJlckNvbnN0cnVjdG9yKj4ob2Jq
ZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIG51
bWJlckNvbnN0cnVjdG9yTmFOVmFsdWUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNW
YWx1ZSwgUHJvcGVydHlOYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlck9iamVjdC5jcHAKaW5kZXggNGRmNThlOC4uMzEzNTBjYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0zMCw3ICszMCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE51bWJlck9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJPYmplY3Q6OnNf
aW5mbyA9IHsgIk51bWJlciIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShOdW1iZXJPYmplY3QpIH07CiAKIE51bWJlck9iamVjdDo6TnVtYmVyT2JqZWN0
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dyYXBwZXJPYmplY3Qodm0s
IHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQ
cm90b3R5cGUuY3BwCmluZGV4IDQyZWUzMGEuLjk0MDM5NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcApAQCAtNTYsNyArNTYsNyBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBudW1iZXJQcm90b0Z1bmNDbHoo
RXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIiLCAmTnVtYmVyT2JqZWN0OjpzX2luZm8sIDAs
IEV4ZWNTdGF0ZTo6bnVtYmVyUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE51bWJlclByb3RvdHlwZTo6c19pbmZv
ID0geyAiTnVtYmVyIiwgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFi
bGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRhYmxlCkBA
IC04Nyw3ICs4Nyw3IEBAIHZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KikKIAogYm9vbCBOdW1iZXJQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PE51bWJlck9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpudW1iZXJQcm90b3R5
cGVUYWJsZShleGVjLT52bSgpKSwganNDYXN0PE51bWJlclByb3RvdHlwZSo+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxOdW1i
ZXJPYmplY3Q+KGV4ZWMsIG51bWJlclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8TnVtYmVyUHJvdG90
eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIEZ1bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9y
LmNwcAppbmRleCBhM2MxOTI3Li5jODhjMzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01OSw3ICs1OSw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
T2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhl
Y1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZvYmplY3RDb25z
dHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdENvbnN0cnVjdG9yKSB9Owog
CiAvKiBTb3VyY2UgZm9yIE9iamVjdENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gb2JqZWN0Q29u
c3RydWN0b3JUYWJsZQpAQCAtOTUsNyArOTUsNyBAQCB2b2lkIE9iamVjdENvbnN0cnVjdG9yOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0sIE9iamVjdFByb3RvdHlwZSogb2JqZWN0UHJvdG90eXBlKQog
CiBib29sIE9iamVjdENvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9i
amVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0
eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVj
dD4oZXhlYywgRXhlY1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlKGV4ZWMtPnZtKCkpLCBq
c0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwor
ICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIG9iamVjdENv
bnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxPYmplY3RDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3Bl
cnR5TmFtZSwgc2xvdCk7CiB9CiAKIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25z
dHJ1Y3RPYmplY3QoRXhlY1N0YXRlKiBleGVjKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKaW5kZXggOWZhNzg2MS4uZTMwMjdkMyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG9i
amVjdFByb3RvRnVuY1RvTG9jYWxlU3RyaW5nKEV4ZWNTdGF0ZSopOwogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0UHJvdG90eXBlKTsKIAotY29uc3QgQ2xh
c3NJbmZvIE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3Qi
LCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dFByb3RvdHlwZSkgfTsKIAogT2JqZWN0UHJvdG90eXBlOjpPYmplY3RQcm90b3R5cGUoVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0dWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3R1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3Bw
CmluZGV4IGM1M2I3MjEuLjIzZTNiMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVy
dHlUYWJsZSIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlUYWJsZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9wZXJ0eVRhYmxl
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9wZXJ0eVRhYmxlKSB9OwogCiBQcm9wZXJ0
eVRhYmxlKiBQcm9wZXJ0eVRhYmxlOjpjcmVhdGUoVk0mIHZtLCB1bnNpZ25lZCBpbml0aWFsQ2Fw
YWNpdHkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAppbmRleCA0
N2M5NzlkLi4wMjkxMmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5j
cHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cDo6c19pbmZvID0geyAiUmVnRXhw
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07CiAKIFJlZ0V4cEZsYWdzIHJl
Z0V4cEZsYWdzKGNvbnN0IFN0cmluZyYgc3RyaW5nKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCmluZGV4IDBjNmJmNDguLjUz
ZTIwYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIHZvaWQgc2V0UmVnRXhwQ29u
c3RydWN0b3JNdWx0aWxpbmUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNWYWx1ZSwK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVj
U3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhw
Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlZ0V4cENvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwQ29uc3RydWN0b3IpIH07CiAK
IC8qIFNvdXJjZSBmb3IgUmVnRXhwQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlCkBAIC0xNTUsNyArMTU1LDcgQEAgSlNWYWx1ZSBSZWdFeHBDb25zdHJ1Y3Rv
cjo6Z2V0UmlnaHRDb250ZXh0KEV4ZWNTdGF0ZSogZXhlYykKICAgICAKIGJvb2wgUmVnRXhwQ29u
c3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUq
IGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsK
LSAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90PFJlZ0V4cENvbnN0cnVjdG9yLCBJbnRlcm5h
bEZ1bmN0aW9uPihleGVjLCBFeGVjU3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUoZXhlYy0+
dm0oKSksIGpzQ2FzdDxSZWdFeHBDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBDb25zdHJ1Y3Rvciwg
SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PFJl
Z0V4cENvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KICAgICAK
IEVuY29kZWRKU1ZhbHVlIHJlZ0V4cENvbnN0cnVjdG9yRG9sbGFyMShFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUsIFByb3BlcnR5TmFtZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3Bw
CmluZGV4IGRlMzRlNWMuLjM0ZWJjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwTWF0Y2hlc0FycmF5LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE1hdGNoZXNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwTWF0Y2hlc0FycmF5KX07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwTWF0Y2hlc0Fy
cmF5OjpzX2luZm8gPSB7IkFycmF5IiwgJkpTQXJyYXk6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBNYXRjaGVzQXJyYXkpfTsKIAogUmVnRXhwTWF0Y2hlc0FycmF5OjpSZWdF
eHBNYXRjaGVzQXJyYXkoVk0mIHZtLCBCdXR0ZXJmbHkqIGJ1dHRlcmZseSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNTdHJpbmcqIGlucHV0LCBSZWdFeHAqIHJlZ0V4cCwgTWF0Y2hS
ZXN1bHQgcmVzdWx0KQogICAgIDogSlNBcnJheSh2bSwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBNYXRj
aGVzQXJyYXlTdHJ1Y3R1cmUoKSwgYnV0dGVyZmx5KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5kZXggNGU0YzAyYy4uMWIwOWIzOCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC01Miw3
ICs1Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoUmVnRXhwT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVj
dDo6c19pbmZvID0geyAiUmVnRXhwIiwgJkJhc2U6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7ICJSZWdFeHAiLCAmQmFzZTo6c19pbmZvLCAm
cmVnRXhwVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiAvKiBT
b3VyY2UgZm9yIFJlZ0V4cE9iamVjdC5sdXQuaAogQGJlZ2luIHJlZ0V4cFRhYmxlCkBAIC05Nyw3
ICs5Nyw3IEBAIGJvb2wgUmVnRXhwT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0CiAgICAgICAgIHNsb3Quc2V0VmFsdWUo
cmVnRXhwLCBhdHRyaWJ1dGVzLCByZWdFeHAtPmdldExhc3RJbmRleCgpKTsKICAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgfQotICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8UmVnRXhwT2Jq
ZWN0LCBKU09iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpyZWdFeHBUYWJsZShleGVjLT52bSgpKSwg
anNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAg
cmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBPYmplY3QsIEpTT2JqZWN0PihleGVjLCBy
ZWdFeHBUYWJsZSwganNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CiAKIGJvb2wgUmVnRXhwT2JqZWN0OjpkZWxldGVQcm9wZXJ0eShKU0NlbGwqIGNl
bGwsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4IDdh
ZWFmZjUuLmU3MmUxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCByZWdFeHBQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlJlZ0V4cCIsICZSZWdFeHBPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gUmVnRXhwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAiLCAm
UmVnRXhwT2JqZWN0OjpzX2luZm8sICZyZWdFeHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVnRXhwUHJvdG90
eXBlLmx1dC5oCiBAYmVnaW4gcmVnRXhwUHJvdG90eXBlVGFibGUKQEAgLTY3LDcgKzY3LDcgQEAg
UmVnRXhwUHJvdG90eXBlOjpSZWdFeHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgUmVnRXhwKiByZWdFeHApCiAKIGJvb2wgUmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9w
ZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRp
Y0Z1bmN0aW9uU2xvdDxSZWdFeHBPYmplY3Q+KGV4ZWMsIEV4ZWNTdGF0ZTo6cmVnRXhwUHJvdG90
eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxSZWdFeHBQcm90b3R5cGUqPihvYmplY3QpLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8UmVn
RXhwT2JqZWN0PihleGVjLCByZWdFeHBQcm90b3R5cGVUYWJsZSwganNDYXN0PFJlZ0V4cFByb3Rv
dHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggOGFkN2U1NC4uNDVlMzQ0MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0Q29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBTZXRDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBT
ZXRQcm90b3R5cGUqIHNldFByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMTlkNzE2
ZS4uY2IxNmZmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTZXRJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFNldEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvckNvbnN0cnVjdG9yKSB9OwogCiB2
b2lkIFNldEl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgU2V0SXRl
cmF0b3JQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMTkzODFkLi4x
MTYwOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVy
YXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNl
dCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoU2V0SXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIFNldEl0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJhdG9yKEV4ZWNT
dGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgU2V0SXRlcmF0b3JQ
cm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TZXRQcm90b3R5cGUuY3BwCmluZGV4IDAxOTcwZTAuLjA1MjMzYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldFByb3RvdHlw
ZTo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc2V0UHJv
dG9GdW5jQWRkKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgc2V0UHJvdG9GdW5jQ2xlYXIoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IGJlODk4ZDku
LjJhMTQ1ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJz
ZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nw
YXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAiU3Bh
cnNlQXJyYXlWYWx1ZU1hcCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJy
YXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2lu
Zm8gPSB7ICJTcGFyc2VBcnJheVZhbHVlTWFwIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
cGFyc2VBcnJheVZhbHVlTWFwKSB9OwogCiBTcGFyc2VBcnJheVZhbHVlTWFwOjpTcGFyc2VBcnJh
eVZhbHVlTWFwKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNwYXJzZUFycmF5VmFsdWVNYXBT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAKaW5kZXggZTA1ZTdkMy4uNDI2ZDI5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0
aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmljdEV2YWxBY3RpdmF0aW9uKTsKIAotY29u
c3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2YWxBY3RpdmF0
aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7
ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2
YWxBY3RpdmF0aW9uKSB9OwogCiBTdHJpY3RFdmFsQWN0aXZhdGlvbjo6U3RyaWN0RXZhbEFjdGl2
YXRpb24oRXhlY1N0YXRlKiBleGVjKQogICAgIDogQmFzZSgKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCBmODIyMWQ3Li40
YmFlOTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5n
Q29uc3RydWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIHN0cmluZ0Zyb21DaGFyQ29kZShFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OnN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgU3RyaW5nQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxl
CkBAIC02Miw3ICs2Miw3IEBAIHZvaWQgU3RyaW5nQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU3RyaW5nUHJvdG90eXBlKiBzdHJpbmdQcm90b3R5cGUpCiAKIGJvb2wgU3RyaW5n
Q29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkK
IHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4
ZWMsIEV4ZWNTdGF0ZTo6c3RyaW5nQ29uc3RydWN0b3JUYWJsZShleGVjLT52bSgpKSwganNDYXN0
PFN0cmluZ0NvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICBy
ZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIHN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxTdHJpbmdDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCmluZGV4IGE1ZTIzZjcuLjMw
YzAxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09i
amVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0
LmNwcApAQCAtMzAsNyArMzAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9J
U19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmluZ09iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5m
byBTdHJpbmdPYmplY3Q6OnNfaW5mbyA9IHsgIlN0cmluZyIsICZKU1dyYXBwZXJPYmplY3Q6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciLCAmSlNXcmFwcGVyT2Jq
ZWN0OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2JqZWN0KSB9OwogCiBT
dHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRleCBmZDE5NDQ3Li4wYWI2
MzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3Rv
dHlwZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmluZ1Byb3RvRnVuY1RyaW1MZWZ0KEV4ZWNTdGF0ZSopOwog
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbVJp
Z2h0KEV4ZWNTdGF0ZSopOwogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTdHJpbmciLCAmU3RyaW5nT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiU3RyaW5nIiwgJlN0cmluZ09iamVjdDo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKIAogLy8gRUNNQSAxNS41LjQKIFN0
cmluZ1Byb3RvdHlwZTo6U3RyaW5nUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcAppbmRleCBl
NTU3OGQyLi4zZDViMGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJ1Y3R1cmUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVj
dHVyZS5jcHAKQEAgLTE2MSw5ICsxNjEsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwogewog
ICAgIHNldERpY3Rpb25hcnlLaW5kKE5vbmVEaWN0aW9uYXJ5S2luZCk7CiAgICAgc2V0SXNQaW5u
ZWRQcm9wZXJ0eVRhYmxlKGZhbHNlKTsKLSAgICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVz
KGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3VzdG9tR2V0dGVyU2V0dGVyUHJv
cGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRp
ZXNFeGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNF
eGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkpOwogICAgIHNldEhhc05vbkVudW1lcmFibGVQcm9wZXJ0aWVzKGZhbHNlKTsKICAgICBz
ZXRBdHRyaWJ1dGVzSW5QcmV2aW91cygwKTsKICAgICBzZXRTcGVjaWZpY0Z1bmN0aW9uVGhyYXNo
Q291bnQoMCk7CkBAIC0xNzUsMTEgKzE3NSwxMSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwog
ICAgIEFTU0VSVChpbmxpbmVDYXBhY2l0eSA8PSBKU0ZpbmFsT2JqZWN0OjptYXhJbmxpbmVDYXBh
Y2l0eSgpKTsKICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8UHJvcGVydHlPZmZzZXQ+KGlubGluZUNh
cGFjaXR5KSA8IGZpcnN0T3V0T2ZMaW5lT2Zmc2V0KTsKICAgICBBU1NFUlQoIWhhc1JhcmVEYXRh
KCkpOwotICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1
ZGluZ1Byb3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJv
cGVydGllcyh2bSkpOwotICAgIEFTU0VSVChoYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwg
IW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcyh2bSkpOwor
ICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1By
b3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGll
cygpKTsKKyAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFtX2NsYXNz
SW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZSIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVy
ZTo6c19pbmZvID0geyAiU3RydWN0dXJlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1
Y3R1cmUpIH07CiAKIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICA6IEpTQ2VsbChD
cmVhdGluZ0Vhcmx5Q2VsbCkKQEAgLTE5Miw5ICsxOTIsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVy
ZShWTSYgdm0pCiB7CiAgICAgc2V0RGljdGlvbmFyeUtpbmQoTm9uZURpY3Rpb25hcnlLaW5kKTsK
ICAgICBzZXRJc1Bpbm5lZFByb3BlcnR5VGFibGUoZmFsc2UpOwotICAgIHNldEhhc0dldHRlclNl
dHRlclByb3BlcnRpZXMobV9jbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcyhtX2NsYXNzSW5m
by0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3Vz
dG9tR2V0dGVyU2V0dGVyUHJvcGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdl
dHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90byhtX2NsYXNzSW5mby0+aGFzU3RhdGlj
U2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAgICBzZXRIYXNSZWFkT25seU9yR2V0
dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1Byb3RvKG1fY2xhc3NJbmZvLT5oYXNTdGF0aWNT
ZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICBzZXRIYXNOb25FbnVtZXJhYmxlUHJv
cGVydGllcyhmYWxzZSk7CiAgICAgc2V0QXR0cmlidXRlc0luUHJldmlvdXMoMCk7CiAgICAgc2V0
U3BlY2lmaWNGdW5jdGlvblRocmFzaENvdW50KDApOwpAQCAtMjA3LDggKzIwNyw4IEBAIFN0cnVj
dHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICBtX2Jsb2IgPSBTdHJ1Y3R1cmVJREJsb2Iodm0u
aGVhcC5zdHJ1Y3R1cmVJRFRhYmxlKCkuYWxsb2NhdGVJRCh0aGlzKSwgMCwgdHlwZUluZm8pOwog
ICAgIG1fb3V0T2ZMaW5lVHlwZUZsYWdzID0gdHlwZUluZm8ub3V0T2ZMaW5lVHlwZUZsYWdzKCk7
CiAKLSAgICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRp
bmdQcm90bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3Bl
cnRpZXModm0pKTsKLSAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFt
X2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90
bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMo
KSk7CisgICAgQVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOwogfQogCiBTdHJ1Y3R1
cmU6OlN0cnVjdHVyZShWTSYgdm0sIFN0cnVjdHVyZSogcHJldmlvdXMpCkBAIC0yNDUsOCArMjQ1
LDggQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHByZXZpb3VzKQog
ICAgIHByZXZpb3VzLT5ub3RpZnlUcmFuc2l0aW9uRnJvbVRoaXNTdHJ1Y3R1cmUoKTsKICAgICBp
ZiAocHJldmlvdXMtPm1fZ2xvYmFsT2JqZWN0KQogICAgICAgICBtX2dsb2JhbE9iamVjdC5zZXQo
dm0sIHRoaXMsIHByZXZpb3VzLT5tX2dsb2JhbE9iamVjdC5nZXQoKSk7Ci0gICAgQVNTRVJUKGhh
c1JlYWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9j
bGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7Ci0gICAg
QVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0luZm8tPmhhc1N0
YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKGhhc1JlYWRP
bmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCho
YXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0
ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKIH0KIAogU3RydWN0dXJlOjp+U3RydWN0dXJlKCkK
QEAgLTU5OSw4ICs1OTksOCBAQCBTdHJ1Y3R1cmUqIFN0cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlv
bihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgICAgICAgICAgaXRlci0+YXR0cmli
dXRlcyB8PSBpdGVyLT5hdHRyaWJ1dGVzICYgQWNjZXNzb3IgPyBEb250RGVsZXRlIDogKERvbnRE
ZWxldGUgfCBSZWFkT25seSk7CiAgICAgfQogCi0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1Jl
YWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNp
dGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZt
KSk7Ci0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8
fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1JlYWRPbmx5T3JHZXR0ZXJT
ZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZv
KCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCh0
cmFuc2l0aW9uLT5oYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIXRyYW5zaXRpb24tPmNs
YXNzSW5mbygpLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICB0
cmFuc2l0aW9uLT5jaGVja09mZnNldENvbnNpc3RlbmN5KCk7CiAgICAgcmV0dXJuIHRyYW5zaXRp
b247CiB9CkBAIC0xMjQ3LDEwICsxMjQ3LDEwIEBAIHZvaWQgU3RydWN0dXJlOjpjaGVja0NvbnNp
c3RlbmN5KCkKIAogI2VuZGlmIC8vIERPX1BST1BFUlRZTUFQX0NPTlNURU5DWV9DSEVDSwogCi1i
b29sIENsYXNzSW5mbzo6aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoVk0mIHZt
KSBjb25zdAorYm9vbCBDbGFzc0luZm86Omhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkgY29uc3QKIHsKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogY2kgPSB0aGlzOyBjaTsg
Y2kgPSBjaS0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogdGFi
bGUgPSBjaS0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJs
ZSogdGFibGUgPSBjaS0+c3RhdGljUHJvcEhhc2hUYWJsZSkgewogICAgICAgICAgICAgaWYgKHRh
YmxlLT5oYXNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcykKICAgICAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlQ2hhaW4uY3BwCmluZGV4IGRjNDI4MzkuLmVmNDMxODkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJl
Q2hhaW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTdHJ1Y3R1cmVDaGFpbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVDaGFp
bjo6c19pbmZvID0geyAiU3RydWN0dXJlQ2hhaW4iLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVDaGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQ2VsbCh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURh
dGEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEu
Y3BwCmluZGV4IDBmNGJkMjcuLjhjM2ZkODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVSYXJlRGF0YTo6c19p
bmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZVJhcmVEYXRhKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZVJhcmVEYXRh
OjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVSYXJlRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RydWN0dXJlUmFyZURhdGEpIH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3ltYm9sVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sVGFibGUuY3BwCmluZGV4IDZiNWVmOWIuLjhmZGEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZvID0geyAi
U3ltYm9sVGFibGUiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbFRhYmxlKSB9
OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFRhYmxlOjpzX2luZm8gPSB7ICJTeW1ib2xUYWJsZSIs
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIFN5bWJvbFRhYmxl
RW50cnkmIFN5bWJvbFRhYmxlRW50cnk6OmNvcHlTbG93KGNvbnN0IFN5bWJvbFRhYmxlRW50cnkm
IG90aGVyKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDFkM2Q3Y2Iu
LjlkMzQ5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTEwOSwyOCAr
MTA5LDYgQEAgdXNpbmcgbmFtZXNwYWNlIFdURjsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWV4dGVy
biBjb25zdCBIYXNoVGFibGUgYXJyYXlDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSBhcnJheVByb3RvdHlwZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIGpzb25UYWJsZTsKLWV4
dGVybiBjb25zdCBIYXNoVGFibGUgZGF0YVZpZXdUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFi
bGUgZGF0ZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBkYXRlQ29uc3RydWN0b3JUYWJs
ZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgZXJyb3JQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBj
b25zdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxl
IG51bWJlckNvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIG51bWJlclBy
b3RvdHlwZVRhYmxlOwotSlNfRVhQT1JUREFUQSBleHRlcm4gY29uc3QgSGFzaFRhYmxlIG9iamVj
dENvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHByaXZhdGVOYW1lUHJv
dG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHJlZ0V4cFRhYmxlOwotZXh0ZXJu
IGNvbnN0IEhhc2hUYWJsZSByZWdFeHBDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSByZWdFeHBQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgc3Ry
aW5nQ29uc3RydWN0b3JUYWJsZTsKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi1leHRlcm4gY29uc3Qg
SGFzaFRhYmxlIHByb21pc2VQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7Ci0jZW5kaWYKLQogLy8gTm90ZTogUGxhdGZvcm0uaCB3
aWxsIGVuZm9yY2UgdGhhdCBFTkFCTEUoQVNTRU1CTEVSKSBpcyB0cnVlIGlmIGVpdGhlcgogLy8g
RU5BQkxFKEpJVCkgb3IgRU5BQkxFKFlBUlJfSklUKSBvciBib3RoIGFyZSBlbmFibGVkLiBUaGUg
Y29kZSBiZWxvdwogLy8ganVzdCBjaGVja3MgZm9yIEVOQUJMRShKSVQpIG9yIEVOQUJMRShZQVJS
X0pJVCkgd2l0aCB0aGlzIHByZW1pc2UgaW4gbWluZC4KQEAgLTE3MiwyNyArMTUwLDYgQEAgVk06
OlZNKFZNVHlwZSB2bVR5cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQogICAgICwgdm1UeXBlKHZtVHlw
ZSkKICAgICAsIGNsaWVudERhdGEoMCkKICAgICAsIHRvcENhbGxGcmFtZShDYWxsRnJhbWU6Om5v
Q2FsbGVyKCkpCi0gICAgLCBhcnJheUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hU
YWJsZShKU0M6OmFycmF5Q29uc3RydWN0b3JUYWJsZSkpKQotICAgICwgYXJyYXlQcm90b3R5cGVU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6YXJyYXlQcm90b3R5cGVUYWJsZSkpKQot
ICAgICwgYm9vbGVhblByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpi
b29sZWFuUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGRhdGFWaWV3VGFibGUoYWRvcHRQdHIobmV3
IEhhc2hUYWJsZShKU0M6OmRhdGFWaWV3VGFibGUpKSkKLSAgICAsIGRhdGVUYWJsZShhZG9wdFB0
cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZVRhYmxlKSkpCi0gICAgLCBkYXRlQ29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUpKSkK
LSAgICAsIGVycm9yUHJvdG90eXBlVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OmVy
cm9yUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGdsb2JhbE9iamVjdFRhYmxlKGFkb3B0UHRyKG5l
dyBIYXNoVGFibGUoSlNDOjpnbG9iYWxPYmplY3RUYWJsZSkpKQotICAgICwganNvblRhYmxlKGFk
b3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpqc29uVGFibGUpKSkKLSAgICAsIG51bWJlckNvbnN0
cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6Om51bWJlckNvbnN0cnVjdG9y
VGFibGUpKSkKLSAgICAsIG51bWJlclByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFi
bGUoSlNDOjpudW1iZXJQcm90b3R5cGVUYWJsZSkpKQotICAgICwgb2JqZWN0Q29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6b2JqZWN0Q29uc3RydWN0b3JUYWJsZSkp
KQotICAgICwgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxl
KEpTQzo6cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSkpKQotICAgICwgcmVnRXhwVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnJlZ0V4cFRhYmxlKSkpCi0gICAgLCByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpyZWdFeHBDb25zdHJ1Y3Rv
clRhYmxlKSkpCi0gICAgLCByZWdFeHBQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRh
YmxlKEpTQzo6cmVnRXhwUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIHN0cmluZ0NvbnN0cnVjdG9y
VGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnN0cmluZ0NvbnN0cnVjdG9yVGFibGUp
KSkKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi0gICAgLCBwcm9taXNlUHJvdG90eXBlVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21pc2VQcm90b3R5cGVUYWJsZSkpKQotICAgICwg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21p
c2VDb25zdHJ1Y3RvclRhYmxlKSkpCi0jZW5kaWYKICAgICAsIG1fYXRvbWljU3RyaW5nVGFibGUo
dm1UeXBlID09IERlZmF1bHQgPyB3dGZUaHJlYWREYXRhKCkuYXRvbWljU3RyaW5nVGFibGUoKSA6
IG5ldyBBdG9taWNTdHJpbmdUYWJsZSkKICAgICAsIHByb3BlcnR5TmFtZXMobnVsbHB0cikKICAg
ICAsIGVtcHR5TGlzdChuZXcgTWFya2VkQXJndW1lbnRCdWZmZXIpCkBAIC0zNjEsMjggKzMxOCw2
IEBAIFZNOjp+Vk0oKQogICAgIGludGVycHJldGVyID0gcmVpbnRlcnByZXRfY2FzdDxJbnRlcnBy
ZXRlcio+KDB4YmJhZGJlZWYpOwogI2VuZGlmCiAKLSAgICBhcnJheVByb3RvdHlwZVRhYmxlLT5k
ZWxldGVUYWJsZSgpOwotICAgIGFycmF5Q29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUoKTsK
LSAgICBib29sZWFuUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZGF0YVZpZXdU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBkYXRlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAg
ZGF0ZUNvbnN0cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZXJyb3JQcm90b3R5cGVU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBnbG9iYWxPYmplY3RUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICBqc29uVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgbnVtYmVyQ29uc3RydWN0b3JU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBudW1iZXJQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFi
bGUoKTsKLSAgICBvYmplY3RDb25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotICAgIHBy
aXZhdGVOYW1lUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwVGFibGUt
PmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwQ29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICByZWdFeHBQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBzdHJpbmdD
b25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotI2lmIEVOQUJMRShQUk9NSVNFUykKLSAg
ICBwcm9taXNlUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcHJvbWlzZUNvbnN0
cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0jZW5kaWYKLQogICAgIGRlbGV0ZSBlbXB0eUxp
c3Q7CiAKICAgICBkZWxldGUgcHJvcGVydHlOYW1lczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9W
TS5oCmluZGV4IGIzYWVjZTQuLmEyMTUwOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
aApAQCAtMjM4LDI4ICsyMzgsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgRXhlY1N0YXRl
KiB0b3BDYWxsRnJhbWU7CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxXYXRjaGRvZz4gd2F0Y2hk
b2c7CiAKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gYXJyYXlDb25zdHJ1
Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBhcnJheVBy
b3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+
IGRhdGFWaWV3VGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGRh
dGVUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gZGF0ZUNvbnN0
cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGVycm9y
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGds
b2JhbE9iamVjdFRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBq
c29uVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51bWJlckNv
bnN0cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51
bWJlclByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxl
PiBvYmplY3RDb25zdHJ1Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFz
aFRhYmxlPiBwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8
Y29uc3QgSGFzaFRhYmxlPiByZWdFeHBUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0
IEhhc2hUYWJsZT4gcmVnRXhwQ29uc3RydWN0b3JUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRy
PGNvbnN0IEhhc2hUYWJsZT4gcmVnRXhwUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93
blB0cjxjb25zdCBIYXNoVGFibGU+IHN0cmluZ0NvbnN0cnVjdG9yVGFibGU7Ci0jaWYgRU5BQkxF
KFBST01JU0VTKQotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBwcm9taXNl
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IHBy
b21pc2VDb25zdHJ1Y3RvclRhYmxlOwotI2VuZGlmCi0KICAgICAgICAgU3Ryb25nPFN0cnVjdHVy
ZT4gc3RydWN0dXJlU3RydWN0dXJlOwogICAgICAgICBTdHJvbmc8U3RydWN0dXJlPiBzdHJ1Y3R1
cmVSYXJlRGF0YVN0cnVjdHVyZTsKICAgICAgICAgU3Ryb25nPFN0cnVjdHVyZT4gZGVidWdnZXJT
Y29wZVN0cnVjdHVyZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IDAzYWY3M2UuLjlkZTg2YmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcApA
QCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdl
YWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBXZWFrTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwQ29uc3RydWN0b3IpIH07CiAK
IHZvaWQgV2Vha01hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFdlYWtNYXBQ
cm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1dlYWtNYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBEYXRhLmNwcAppbmRleCAyMjRiZThhLi5kY2RhZjIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwRGF0YS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcERhdGEuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcERhdGE6OnNfaW5mbyA9
IHsgIldlYWtNYXBEYXRhIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwRGF0
YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrTWFwRGF0YTo6c19pbmZvID0geyAiV2Vha01hcERh
dGEiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBEYXRhKSB9OwogCiBXZWFrTWFw
RGF0YTo6V2Vha01hcERhdGEoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0ud2Vha01hcERhdGFT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrTWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBQcm90b3R5cGUuY3BwCmluZGV4IDY0ZWViOGQuLjkyMTU4MzEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3
ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2Vha01hcFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFr
TWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwQ2xlYXIoRXhlY1N0YXRlKik7CiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwRGVsZXRl
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCmluZGV4IGZjOTVh
NjMuLmRjNjRjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0UmVnRXhw
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAKQEAgLTQ1LDYg
KzQ1LDEwIEBACiAjaW5jbHVkZSA8d2luZG93cy5oPgogI2VuZGlmCiAKK25hbWVzcGFjZSBKU0Mg
eworZXh0ZXJuIGNvbnN0IHN0cnVjdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Cit9CisK
IGNvbnN0IGludCBNYXhMaW5lTGVuZ3RoID0gMTAwICogMTAyNDsKIAogdXNpbmcgbmFtZXNwYWNl
IEpTQzsKQEAgLTEzMyw3ICsxMzcsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2Jq
ZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRI
T0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6
c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmpl
Y3RUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiAKIEdsb2JhbE9i
amVjdDo6R2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBhcmd1bWVudHMpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDI3Y2E3YzAuLjg4MTYzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMDkgQEAKKzIwMTQtMDctMzAgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgor
CisgICAgICAgIFN0YXRpYyBoYXNoIHRhYmxlcyBubyBsb25nZXIgbmVlZCB0byBiZSBjb3VwbGVk
IHdpdGggYSBWTS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEzNTQyMT4KKworICAg
ICAgICBVcGRhdGUgZm9yIEpTQzo6Q2xhc3NJbmZvIGNoYW5nZXMuCisgICAgICAgIAorICAgICAg
ICBSZW1vdmUgdGhlIEpTTm9TdGF0aWNUYWJsZXMgbW9kZSBmb3IgSURMIGNvZGUgZ2VuZXJhdGlv
biwgd2hpY2ggd2FzIHVzZWQgdG8KKyAgICAgICAgZW5zdXJlIHRoYXQgZWFjaCBWTSBoYWQgaXRz
IG93biB1bmlxdWUgY29weSBvZiBjZXJ0YWluIHN0YXRpYyB0YWJsZXMuCisgICAgICAgIFRoaXMg
d2FzIHVzZWQgZm9yIGludGVyZmFjZXMgdGhhdCBjb3VsZCBiZSB1c2VkIGluIHdvcmtlcnMsIGFu
ZCBub3cgdGhlcmUncworICAgICAgICBubyBuZWVkIHRvIG1hbnVhbGx5IGFubm90YXRlIHRoZXNl
IHRoaW5ncyBhbnltb3JlLgorCisgICAgICAgIEFsc28gcmVtb3ZlIHRoZSBET01PYmplY3RIYXNo
VGFibGVNYXAgY2xhc3MgdGhhdCB3YXMgb25seSB1c2VkIGZvciB0aGlzLgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIv
SURCQW55LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGw6CisgICAg
ICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2UuaWRsOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkluZGV4LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5p
ZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuaWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2Uv
RGF0YWJhc2UuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5j
LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEVycm9yLmlkbDoKKyAgICAg
ICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEV4Y2VwdGlvbi5pZGw6CisgICAgICAgICogTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMUmVzdWx0U2V0Um93TGlzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFz
ZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9D
bG9zZUV2ZW50LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Lmlk
bDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuaDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0
SGFzaFRhYmxlRm9yR2xvYmFsRGF0YSk6IERlbGV0ZWQuCisgICAgICAgICogYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmg6CisgICAgICAgIChXZWJDb3JlOjpnZXRTdGF0aWNWYWx1ZVNsb3RFbnRy
eVdpdGhvdXRDYWNoaW5nKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVj
dC5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpKU0RPTVdpbmRvdzo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKFdlYkNvcmU6OkpT
RE9NV2luZG93OjpwdXQpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwu
Y3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpKU0xvY2F0aW9uOjpwdXREZWxlZ2F0ZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNTdG9y
YWdlQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTU3RvcmFnZTo6ZGVsZXRlUHJvcGVy
dHkpOgorICAgICAgICAoV2ViQ29yZTo6SlNTdG9yYWdlOjpwdXREZWxlZ2F0ZSk6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwOgorICAgICAgICAqIGJp
bmRpbmdzL2pzL1dlYkNvcmVKU0NsaWVudERhdGEuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVyYXRlR2V0T3duUHJvcGVydHlT
bG90Qm9keSk6CisgICAgICAgIChHZW5lcmF0ZUltcGxlbWVudGF0aW9uKToKKyAgICAgICAgKEdl
bmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRob2RzKToKKyAgICAgICAgKGhhc2hUYWJsZUFjY2Vz
c29yKTogRGVsZXRlZC4KKyAgICAgICAgKHByb3RvdHlwZUhhc2hUYWJsZUFjY2Vzc29yKTogRGVs
ZXRlZC4KKyAgICAgICAgKGNvbnN0cnVjdG9ySGFzaFRhYmxlQWNjZXNzb3IpOiBEZWxldGVkLgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6CisgICAgICAgICog
YnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuY3BwOgorICAgICAgICAqIGJyaWRnZS9jL2NfaW5zdGFu
Y2UuY3BwOgorICAgICAgICAqIGJyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tOgorICAg
ICAgICAqIGJyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW06CisgICAgICAgICogYnJpZGdlL29i
amMvb2JqY19ydW50aW1lLm1tOgorICAgICAgICAqIGJyaWRnZS9ydW50aW1lX2FycmF5LmNwcDoK
KyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9tZXRob2QuY3BwOgorICAgICAgICAqIGJyaWRnZS9y
dW50aW1lX29iamVjdC5jcHA6CisgICAgICAgICogY3J5cHRvL0NyeXB0b0tleS5pZGw6CisgICAg
ICAgICogY3NzL0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbDoKKyAgICAgICAgKiBkb20vRE9NQ29y
ZUV4Y2VwdGlvbi5pZGw6CisgICAgICAgICogZG9tL0RPTVN0cmluZ0xpc3QuaWRsOgorICAgICAg
ICAqIGRvbS9FcnJvckV2ZW50LmlkbDoKKyAgICAgICAgKiBkb20vRXZlbnQuaWRsOgorICAgICAg
ICAqIGRvbS9FdmVudEV4Y2VwdGlvbi5pZGw6CisgICAgICAgICogZG9tL0V2ZW50TGlzdGVuZXIu
aWRsOgorICAgICAgICAqIGRvbS9NZXNzYWdlQ2hhbm5lbC5pZGw6CisgICAgICAgICogZG9tL01l
c3NhZ2VFdmVudC5pZGw6CisgICAgICAgICogZG9tL01lc3NhZ2VQb3J0LmlkbDoKKyAgICAgICAg
KiBkb20vUHJvZ3Jlc3NFdmVudC5pZGw6CisgICAgICAgICogZmlsZWFwaS9CbG9iLmlkbDoKKyAg
ICAgICAgKiBmaWxlYXBpL0ZpbGUuaWRsOgorICAgICAgICAqIGZpbGVhcGkvRmlsZUVycm9yLmlk
bDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVFeGNlcHRpb24uaWRsOgorICAgICAgICAqIGZpbGVh
cGkvRmlsZUxpc3QuaWRsOgorICAgICAgICAqIGZpbGVhcGkvRmlsZVJlYWRlci5pZGw6CisgICAg
ICAgICogZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGw6CisgICAgICAgICogaHRtbC9ET01VUkwu
aWRsOgorICAgICAgICAqIHBhZ2UvRXZlbnRTb3VyY2UuaWRsOgorICAgICAgICAqIHBhZ2UvV29y
a2VyTmF2aWdhdG9yLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmlk
bDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgKiB3
b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3Qu
aWRsOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdEV4Y2VwdGlvbi5pZGw6CisgICAgICAg
ICogeG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5pZGw6CisgICAgICAgICogeG1sL1hN
TEh0dHBSZXF1ZXN0VXBsb2FkLmlkbDoKKwogMjAxNC0wNy0zMCAgU2VyZ2lvIFZpbGxhciBTZW5p
biAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBCdWlsZCBkZXBlbmRzIG9u
IE9wZW5HTCBFUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCQW55LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFueS5pZGwK
aW5kZXggZmI0ODBjOS4uNDkxMTFiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQW55LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJBbnkuaWRsCkBAIC0yNyw3ICsyNyw2IEBACiAgICAgTm9JbnRlcmZhY2VPYmplY3Qs
CiAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBDdXN0b21Ub0pTT2JqZWN0
LAotICAgIEpTTm9TdGF0aWNUYWJsZXMKIF0gaW50ZXJmYWNlIElEQkFueSB7CiAgICAgLy8gVGhp
cyBzcGFjZSBpcyBpbnRlbnRpb25hbGx5IGxlZnQgYmxhbmsuCiB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKaW5kZXggZTM0ZWM4Mi4uOTgzZGJm
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRs
CkBAIC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNF
LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBJREJDdXJzb3IgewogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBJREJBbnkgc291cmNlOwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBE
T01TdHJpbmcgZGlyZWN0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGwKaW5kZXggN2VlOTJkYS4uZTBlOWIxNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0
aFZhbHVlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3JXaXRoVmFsdWUuaWRsCkBAIC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1J
TkRFWEVEX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNUYWJsZXMKIF0gaW50ZXJmYWNlIElEQkN1
cnNvcldpdGhWYWx1ZSA6IElEQkN1cnNvciB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGFueSB2
YWx1ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJEYXRhYmFzZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRh
YmFzZS5pZGwKaW5kZXggMGI1ZTU3ZS4uOGViYjg3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbApAQCAtMjgsNyArMjgsNiBAQAogICAg
IENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAg
IEV2ZW50VGFyZ2V0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSlNHZW5lcmF0ZVRvSlNP
YmplY3QsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogXSBpbnRlcmZhY2UgSURCRGF0
YWJhc2UgOiBFdmVudFRhcmdldCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IGJlYjdhYmQuLmExNDQ4MDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCkBAIC0yNSw3ICsyNSw2
IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIElE
QkZhY3RvcnkgewogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNF
eGNlcHRpb25dIElEQk9wZW5EQlJlcXVlc3Qgb3BlbihET01TdHJpbmcgbmFtZSwgW0VuZm9yY2VS
YW5nZV0gb3B0aW9uYWwgdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsCmluZGV4IDM0NGY1MTYuLjllMzVj
MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5pZGwK
QEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0Us
Ci0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAog
XSBpbnRlcmZhY2UgSURCSW5kZXggewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcg
bmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktl
eVJhbmdlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
LmlkbAppbmRleCBjODM2N2Y3Li43N2QxNmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsCkBAIC0yNSw3ICsyNSw2IEBACiAKIFsKICAg
ICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAg
ICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIElEQktleVJhbmdlIHsK
ICAgICBbSW1wbGVtZW50ZWRBcz1sb3dlclZhbHVlLENhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRdIHJlYWRvbmx5IGF0dHJpYnV0ZSBhbnkgbG93ZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGwKaW5kZXggYWU2MzUwZC4u
NjgzNDkzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T2JqZWN0U3RvcmUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
Qk9iamVjdFN0b3JlLmlkbApAQCAtMjUsNyArMjUsNiBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9
SU5ERVhFRF9EQVRBQkFTRSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBJREJPYmplY3RTdG9yZSB7CiAgICAgW1RyZWF0
UmV0dXJuZWROdWxsU3RyaW5nQXM9TnVsbF0gcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBu
YW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT3Bl
bkRCUmVxdWVzdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmlkbAppbmRleCBlNTQ3OWNjLi5iMGEzM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbApAQCAtMjYs
NyArMjYsNiBAQAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgRXZl
bnRUYXJnZXQsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBKU0dlbmVyYXRlVG9KU09iamVj
dCwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QKIF0gaW50ZXJmYWNlIElEQk9wZW5EQlJl
cXVlc3QgOiBJREJSZXF1ZXN0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQlJlcXVlc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCUmVxdWVzdC5pZGwKaW5kZXggZGIxMGE2NS4uNDA0ZWRjNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKQEAgLTMxLDcgKzMxLDYg
QEAKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEFjdGl2ZURPTU9iamVj
dCwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEpTR2VuZXJh
dGVUb0pTT2JqZWN0LAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdAogXSBpbnRlcmZhY2Ug
SURCUmVxdWVzdCA6IEV2ZW50VGFyZ2V0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAppbmRleCBiNzcwZjg5Li5kMTM3Y2M1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlv
bi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rp
b24uaWRsCkBAIC0yOCw3ICsyOCw2IEBACiAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFT
RSwKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgRXZlbnRUYXJnZXQsCi0gICAgSlNOb1N0YXRp
Y1RhYmxlcywKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVyYXRlVG9OYXRp
dmVPYmplY3QsCiBdIGludGVyZmFjZSBJREJUcmFuc2FjdGlvbiA6IEV2ZW50VGFyZ2V0IHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFu
Z2VFdmVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9u
Q2hhbmdlRXZlbnQuaWRsCmluZGV4IDQ5MTYzZTIuLjk5ZmJkYzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50
LmlkbApAQCAtMjUsNyArMjUsNiBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRB
QkFTRSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgSURCVmVyc2lvbkNoYW5n
ZUV2ZW50IDogRXZlbnQgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxv
bmcgb2xkVmVyc2lvbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25n
PyBuZXdWZXJzaW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9EYXRhYmFzZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0Rh
dGFiYXNlLmlkbAppbmRleCBiNjU1YjA2Li42OGM5ODJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmlkbApAQCAtMjksNyArMjksNiBAQAogWwog
ICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFTRSwKLSAg
ICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgRGF0YWJhc2UgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgdmVyc2lvbjsKICAgICB2b2lkIGNoYW5nZVZlcnNpb24oRE9N
U3RyaW5nIG9sZFZlcnNpb24sIERPTVN0cmluZyBuZXdWZXJzaW9uLCBvcHRpb25hbCBTUUxUcmFu
c2FjdGlvbkNhbGxiYWNrIGNhbGxiYWNrLCBvcHRpb25hbCBTUUxUcmFuc2FjdGlvbkVycm9yQ2Fs
bGJhY2sgZXJyb3JDYWxsYmFjaywgb3B0aW9uYWwgVm9pZENhbGxiYWNrIHN1Y2Nlc3NDYWxsYmFj
ayk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFi
YXNlU3luYy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNl
U3luYy5pZGwKaW5kZXggNGI1ZmYyYS4uNjgwNDM3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbApAQCAtMzEsNyArMzEsNiBA
QAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFT
RSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgRGF0YWJhc2VTeW5jIHsKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHZlcnNpb247CiAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBsYXN0RXJyb3JNZXNzYWdlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxFcnJvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmRhdGFiYXNlL1NRTEVycm9yLmlkbAppbmRleCBlNDMzZTA2Li5lNjZjZjI2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEVycm9yLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEVycm9yLmlkbApA
QCAtMjksNyArMjksNiBAQAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlv
bmFsPVNRTF9EQVRBQkFTRSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIFNRTEVycm9yIHsKICAgICByZWFkb25seSBhdHRy
aWJ1dGUgdW5zaWduZWQgbG9uZyBjb2RlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJkYXRhYmFzZS9TUUxFeGNlcHRpb24uaWRsCmluZGV4IGI5NTExYjQuLjNiNmE5YzMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXhjZXB0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEV4Y2VwdGlv
bi5pZGwKQEAgLTMwLDcgKzMwLDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFT
RSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIERvTm90Q2hlY2tDb25zdGFudHMsCiAgICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBleGNlcHRpb24gU1FMRXhjZXB0aW9uIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMUmVzdWx0U2V0
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMUmVzdWx0U2V0Lmlk
bAppbmRleCAwYjg0ZDllLi44YTZlODkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3VsdFNldC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAg
ICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAg
IEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRl
cmZhY2UgU1FMUmVzdWx0U2V0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgU1FMUmVzdWx0U2V0
Um93TGlzdCByb3dzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9TUUxSZXN1bHRTZXRSb3dMaXN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMUmVzdWx0U2V0Um93TGlzdC5pZGwKaW5kZXggODM3MDU2NS4uODdmOGNjNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRT
ZXRSb3dMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFJlc3VsdFNldFJvd0xpc3QuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAgICAgTm9JbnRlcmZh
Y2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNU
YWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFNRTFJl
c3VsdFNldFJvd0xpc3QgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxl
bmd0aDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FM
VHJhbnNhY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxU
cmFuc2FjdGlvbi5pZGwKaW5kZXggYjFiZThiMy4uZWM0ZTk1NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5pZGwKQEAgLTI5
LDcgKzI5LDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1T
UUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBTa2lwVlRhYmxlVmFsaWRh
dGlvbiwKIF0gaW50ZXJmYWNlIFNRTFRyYW5zYWN0aW9uIHsKICAgICBbQ3VzdG9tXSB2b2lkIGV4
ZWN1dGVTcWwoRE9NU3RyaW5nIHNxbFN0YXRlbWVudCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25TeW5jLmlkbAppbmRleCA5
YjJhNGY1Li5iMjVjZDMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTFRyYW5zYWN0aW9uU3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsCkBAIC0zMSw3ICszMSw2IEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIFNRTFRyYW5zYWN0aW9uU3luYyB7CiAgICAgW0N1c3RvbV0gU1FMUmVzdWx0U2V0
IGV4ZWN1dGVTcWwoRE9NU3RyaW5nIHNxbFN0YXRlbWVudCwgT2JqZWN0QXJyYXkgYXJndW1lbnRz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9DbG9zZUV2
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9DbG9zZUV2ZW50Lmlk
bAppbmRleCAzZjI5YTQ5Li5jZTI1ODM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYnNvY2tldHMvQ2xvc2VFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiAgKi8KIAogWwot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgQ29uc3RydWN0b3JUZW1wbGF0ZT1FdmVudAogXSBp
bnRlcmZhY2UgQ2xvc2VFdmVudCA6IEV2ZW50IHsKICAgICBbSW5pdGlhbGl6ZWRCeUV2ZW50Q29u
c3RydWN0b3JdIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIHdhc0NsZWFuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmlkbAppbmRleCBiZDVjYjll
Li5hYjlkMTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2Vi
U29ja2V0LmlkbApAQCAtMzksNyArMzksNiBAQAogICAgIENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0
aW9uLAogICAgIENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAg
ICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgV2ViU29j
a2V0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIFVSTDsgLy8gTG93ZXJjYXNl
ZCAudXJsIGlzIHRoZSBvbmUgaW4gdGhlIHNwZWMsIGJ1dCBsZWF2aW5nIC5VUkwgZm9yIGNvbXBh
dGliaWxpdHkgcmVhc29ucy4KICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHVybDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCAzYmJhYmM0Li4wOWE3ODlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01MTQzLDggKzUxNDMsNiBAQAogCQlCQzUzRDkx
MTExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0Q5MTAxMTQzMTBDQzAwMEQ4MTdF
IC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCAqLzsgfTsKIAkJQkM1M0RBMkUxMTQzMTIxRTAwMEQ4
MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkM1M0RBMkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3Js
ZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJD
NTNEQTQ4MTE0MzEzNEQwMDBEODE3RSAvKiBET01XcmFwcGVyV29ybGQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0RBNDcxMTQzMTM0RDAwMEQ4
MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAgKi87IH07Ci0JCUJDNTNEQTYwMTE0MzE0MUEwMDBE
ODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTNEQTVGMTE0MzE0MUEwMDBEODE3RSAvKiBET01PYmpl
Y3RIYXNoVGFibGVNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwotCQlCQzUzREE2MjExNDMxNEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxl
TWFwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
NTNEQTYxMTE0MzE0QkQwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuY3BwICovOyB9
OwogCQlCQzU4MjNGNTBDMEE5OERGMDA1M0YxQjUgLyogSlNIVE1MRWxlbWVudEN1c3RvbS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzU4MjNGNDBD
MEE5OERGMDA1M0YxQjUgLyogSlNIVE1MRWxlbWVudEN1c3RvbS5jcHAgKi87IH07CiAJCUJDNTgy
NUYzMEMwQjg5MzgwMDUzRjFCNSAvKiBKU0NTU1N0eWxlRGVjbGFyYXRpb25DdXN0b20uY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1ODI1RjIwQzBC
ODkzODAwNTNGMUI1IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAgKi87IH07CiAJ
CUJDNUExMkRGMERDMDQxNDgwMEM5QUZBRCAvKiBDU1NSZWZsZWN0VmFsdWUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1QTEyREQwREMwNDE0ODAw
QzlBRkFEIC8qIENTU1JlZmxlY3RWYWx1ZS5jcHAgKi87IH07CkBAIC0xMjUzNCw4ICsxMjUzMiw2
IEBACiAJCUJDNTNEOTEwMTE0MzEwQ0MwMDBEODE3RSAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0NsaWVudERhdGEuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM1M0RBMkQxMTQzMTIxRTAwMEQ4MTdFIC8q
IERPTVdyYXBwZXJXb3JsZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01X
cmFwcGVyV29ybGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM1M0RBNDcxMTQz
MTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBET01XcmFwcGVyV29ybGQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQlCQzUzREE1RjExNDMxNDFBMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxl
TWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU9iamVjdEhhc2hUYWJs
ZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzUzREE2MTExNDMxNEJEMDAw
RDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IERPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUJDNTgyM0Y0MEMwQTk4REYwMDUzRjFCNSAvKiBKU0hUTUxFbGVtZW50
Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEVs
ZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzU4MjVGMjBD
MEI4OTM4MDA1M0YxQjUgLyogSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNTlERUY4MTY5REVEQzMwMDE2
QUMzNCAvKiBTZXR0aW5ncy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXR0aW5ncy5pbjsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTIwNzY0LDggKzIwNzYwLDYgQEAKIAkJCQkzMTJENjdCMDE1MzU2OTFGMDA1
NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgKi8sCiAJCQkJMzE2MDIzRUYxNTMyQzQwQzAwRDUwRkY0
IC8qIERpY3Rpb25hcnkuaCAqLywKIAkJCQlCNTY1NzZFNzE3REE5NEUyMDBBNTZCREMgLyogRE9N
Q29uc3RydWN0b3JXaXRoRG9jdW1lbnQuaCAqLywKLQkJCQlCQzUzREE2MTExNDMxNEJEMDAwRDgx
N0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAqLywKLQkJCQlCQzUzREE1RjExNDMxNDFB
MDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmggKi8sCiAJCQkJQkM1M0RBNDcxMTQz
MTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAgKi8sCiAJCQkJQkM1M0RBMkQxMTQz
MTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovLAogCQkJCTE0MzJFODQ4MEM1MTQ5
M0YwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuY3BwICovLApAQCAtMjQwNjYsNyArMjQwNjAsNiBA
QAogCQkJCTg1Q0E5NkVBMEE5NjI0RTkwMDY5MENDRiAvKiBET01Ob3RhdGlvbi5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJODVFNzExRDQwQUM1RDUzNTAwNTMyNzBGIC8qIERPTU5vdGF0aW9uSW50ZXJu
YWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1NkM4QUU0MEE5MTI2NDkwMDVDNjg3QiAvKiBET01P
YmplY3QuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDNTNEQTYwMTE0MzE0MUEwMDBEODE3RSAvKiBE
T01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3QUI5OTcwMThEQTND
NzQwMDE4NzcxRSAvKiBSVENJY2VTZXJ2ZXJQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4
NUM3RjVEMDBBQUZCOEQ5MDA0MDE0REQgLyogRE9NT3ZlcmZsb3dFdmVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJODU5ODlEQ0YwQUNDOEJCRDAwQTBCQzUxIC8qIERPTU92ZXJmbG93RXZlbnRJbnRl
cm5hbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzYxNyw3ICsyNzYxMCw2IEBACiAJCQkJODVBQ0FB
OEUwQTlCNzU5QzAwNjcxRTkwIC8qIERPTU5vZGVMaXN0Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
ODVDQTk2RUIwQTk2MjRFOTAwNjkwQ0NGIC8qIERPTU5vdGF0aW9uLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJODU2QzhBRTUwQTkxMjY0OTAwNUM2ODdCIC8qIERPTU9iamVjdC5tbSBpbiBTb3VyY2Vz
ICovLAotCQkJCUJDNTNEQTYyMTE0MzE0QkQwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVN
YXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODVDN0Y1RDEwQUFGQjhEOTAwNDAxNEREIC8qIERP
TU92ZXJmbG93RXZlbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQlFMTI4NEJENTEwNDRBMDFFMDBF
QUVCNTIgLyogRE9NUGFnZVRyYW5zaXRpb25FdmVudC5tbSBpbiBTb3VyY2VzICovLAogCQkJCTFB
Q0U1M0U3MEE4RDE4RTcwMDIyOTQ3RCAvKiBET01QYXJzZXIuY3BwIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVN
YXAuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFw
LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQ2YjkxNi4uMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAqICBDb3B5cmlnaHQgKEMpIDE5OTkt
MjAwMSBIYXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQotICogIENvcHlyaWdodCAoQykgMjAw
NCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKiAgQ29weXJpZ2h0IChDKSAyMDA3IFNhbXVlbCBXZWluaWcgPHNhbUB3ZWJraXQu
b3JnPgotICoKLSAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCi0gKiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg
R05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICogIHZlcnNpb24gMiBvZiB0aGUg
TGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLSAqCi0gKiAg
VGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1
c2VmdWwsCi0gKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt
cGxpZWQgd2FycmFudHkgb2YKLSAqICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotICogIExlc3NlciBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogIFlvdSBzaG91bGQgaGF2ZSByZWNl
aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqICBMaWNlbnNl
IGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3
YXJlCi0gKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5oIgotCi0jaW5jbHVkZSAiV2ViQ29y
ZUpTQ2xpZW50RGF0YS5oIgotCi11c2luZyBuYW1lc3BhY2UgSlNDOwotCi1uYW1lc3BhY2UgV2Vi
Q29yZXsKLQotRE9NT2JqZWN0SGFzaFRhYmxlTWFwJiBET01PYmplY3RIYXNoVGFibGVNYXA6Om1h
cEZvcihWTSYgdm0pCi17Ci0gICAgVk06OkNsaWVudERhdGEqIGNsaWVudERhdGEgPSB2bS5jbGll
bnREYXRhOwotICAgIEFTU0VSVChjbGllbnREYXRhKTsKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
V2ViQ29yZUpTQ2xpZW50RGF0YSo+KGNsaWVudERhdGEpLT5oYXNoVGFibGVNYXA7Ci19Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
RE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEz
YmYyMDcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRE9NT2JqZWN0
SGFzaFRhYmxlTWFwLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBACi0vKgotICogIENv
cHlyaWdodCAoQykgMTk5OS0yMDAxIEhhcnJpIFBvcnRlbiAocG9ydGVuQGtkZS5vcmcpCi0gKiAg
Q29weXJpZ2h0IChDKSAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4LCAyMDA5IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqICBDb3B5cmlnaHQgKEMpIDIwMDcgU2FtdWVsIFdl
aW5pZyA8c2FtQHdlYmtpdC5vcmc+Ci0gKiAgQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSwgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiAgbW9kaWZ5IGl0IHVuZGVy
IHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogIExpY2Vuc2Ug
YXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICog
IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg
dmVyc2lvbi4KLSAqCi0gKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl
IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3
aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqICBNRVJDSEFOVEFCSUxJVFkg
b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotICogIExl
c3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICogIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQ
dWJsaWMKLSAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRl
IHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4g
U3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCi0gKi8KLQot
I2lmbmRlZiBET01PYmplY3RIYXNoVGFibGVNYXBfaAotI2RlZmluZSBET01PYmplY3RIYXNoVGFi
bGVNYXBfaAotCi0jaW5jbHVkZSA8cnVudGltZS9Mb29rdXAuaD4KLSNpbmNsdWRlIDx3dGYvSGFz
aE1hcC5oPgotCi1uYW1lc3BhY2UgSlNDIHsKLSAgICBjbGFzcyBWTTsKLX0KLQotbmFtZXNwYWNl
IFdlYkNvcmUgewotCi0vLyBNYXAgZnJvbSBzdGF0aWMgSGFzaFRhYmxlIGluc3RhbmNlcyB0byBw
ZXItR2xvYmFsRGF0YSBvbmVzLgotY2xhc3MgRE9NT2JqZWN0SGFzaFRhYmxlTWFwIHsKLXB1Ymxp
YzoKLSAgICBzdGF0aWMgRE9NT2JqZWN0SGFzaFRhYmxlTWFwJiBtYXBGb3IoSlNDOjpWTSYpOwot
Ci0gICAgfkRPTU9iamVjdEhhc2hUYWJsZU1hcCgpCi0gICAgewotICAgICAgICBmb3IgKEhhc2hN
YXA8Y29uc3QgSlNDOjpIYXNoVGFibGUqLCBKU0M6Okhhc2hUYWJsZT46Oml0ZXJhdG9yIGl0ZXIg
PSBtX21hcC5iZWdpbigpOyBpdGVyICE9IG1fbWFwLmVuZCgpOyArK2l0ZXIpCi0gICAgICAgICAg
ICBpdGVyLT52YWx1ZS5kZWxldGVUYWJsZSgpOwotICAgIH0KLQotICAgIGNvbnN0IEpTQzo6SGFz
aFRhYmxlJiBnZXQoY29uc3QgSlNDOjpIYXNoVGFibGUmIHN0YXRpY1RhYmxlKQotICAgIHsKLSAg
ICAgICAgSGFzaE1hcDxjb25zdCBKU0M6Okhhc2hUYWJsZSosIEpTQzo6SGFzaFRhYmxlPjo6aXRl
cmF0b3IgaXRlciA9IG1fbWFwLmZpbmQoJnN0YXRpY1RhYmxlKTsKLSAgICAgICAgaWYgKGl0ZXIg
IT0gbV9tYXAuZW5kKCkpCi0gICAgICAgICAgICByZXR1cm4gaXRlci0+dmFsdWU7Ci0gICAgICAg
IHJldHVybiBtX21hcC5zZXQoJnN0YXRpY1RhYmxlLCBzdGF0aWNUYWJsZS5jb3B5KCkpLml0ZXJh
dG9yLT52YWx1ZTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAgSGFzaE1hcDxjb25zdCBKU0M6Okhh
c2hUYWJsZSosIEpTQzo6SGFzaFRhYmxlPiBtX21hcDsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIERPTU9iamVjdEhhc2hUYWJsZU1hcF9oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAppbmRleCAyN2M4MGY5Li42YTBkN2M5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKQEAgLTI0LDcg
KzI0LDYgQEAKIAogI2luY2x1ZGUgIkNhY2hlZFNjcmlwdC5oIgogI2luY2x1ZGUgIkRPTUNvbnN0
cnVjdG9yV2l0aERvY3VtZW50LmgiCi0jaW5jbHVkZSAiRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgi
CiAjaW5jbHVkZSAiRE9NU3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uaCIKQEAgLTU5LDExICs1OCw2IEBA
IHZvaWQgYWRkSW1wdXJlUHJvcGVydHkoY29uc3QgQXRvbWljU3RyaW5nJiBwcm9wZXJ0eU5hbWUp
CiAgICAgSlNET01XaW5kb3c6OmNvbW1vblZNKCkuYWRkSW1wdXJlUHJvcGVydHkocHJvcGVydHlO
YW1lKTsKIH0KIAotY29uc3QgSlNDOjpIYXNoVGFibGUmIGdldEhhc2hUYWJsZUZvckdsb2JhbERh
dGEoVk0mIHZtLCBjb25zdCBKU0M6Okhhc2hUYWJsZSYgc3RhdGljVGFibGUpCi17Ci0gICAgcmV0
dXJuIERPTU9iamVjdEhhc2hUYWJsZU1hcDo6bWFwRm9yKHZtKS5nZXQoc3RhdGljVGFibGUpOwot
fQotCiBKU1ZhbHVlIGpzU3RyaW5nT3JOdWxsKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgU3RyaW5n
JiBzKQogewogICAgIGlmIChzLmlzTnVsbCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01CaW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUJpbmRpbmcuaAppbmRleCBhYjVkYjBiLi4yZWYxMzhkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaApAQCAtNTg4LDEwICs1ODgsMTAgQEAgaW5saW5lIEF0
b21pY1N0cmluZyBwcm9wZXJ0eU5hbWVUb0F0b21pY1N0cmluZyhKU0M6OlByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUpCiAKIHRlbXBsYXRlPHR5cGVuYW1lIERPTUNsYXNzPiBpbmxpbmUgY29uc3Qg
SlNDOjpIYXNoVGFibGVWYWx1ZSogZ2V0U3RhdGljVmFsdWVTbG90RW50cnlXaXRob3V0Q2FjaGlu
ZyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNDOjpQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQog
ewotICAgIGNvbnN0IEpTQzo6SGFzaFRhYmxlKiB0YWJsZSA9IERPTUNsYXNzOjppbmZvKCktPnBy
b3BIYXNoVGFibGUoZXhlYyk7CisgICAgY29uc3QgSlNDOjpIYXNoVGFibGUqIHRhYmxlID0gRE9N
Q2xhc3M6OmluZm8oKS0+c3RhdGljUHJvcEhhc2hUYWJsZTsKICAgICBpZiAoIXRhYmxlKQogICAg
ICAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90RW50cnlXaXRob3V0Q2FjaGluZzx0eXBlbmFt
ZSBET01DbGFzczo6QmFzZT4oZXhlYywgcHJvcGVydHlOYW1lKTsKLSAgICBjb25zdCBKU0M6Okhh
c2hUYWJsZVZhbHVlKiBlbnRyeSA9IHRhYmxlLT5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpOwor
ICAgIGNvbnN0IEpTQzo6SGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUtPmVudHJ5KHByb3Bl
cnR5TmFtZSk7CiAgICAgaWYgKCFlbnRyeSkgLy8gbm90IGZvdW5kLCBmb3J3YXJkIHRvIHBhcmVu
dAogICAgICAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90RW50cnlXaXRob3V0Q2FjaGluZzx0
eXBlbmFtZSBET01DbGFzczo6QmFzZT4oZXhlYywgcHJvcGVydHlOYW1lKTsKICAgICByZXR1cm4g
ZW50cnk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2Jh
bE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVj
dC5jcHAKaW5kZXggZjU1ZmJlZi4uMDFkNDNkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcApAQCAtMzcsNyArMzcsNyBAQCB1c2luZyBu
YW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBK
U0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFs
T2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01HbG9iYWxPYmpl
Y3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsgIkRP
TUdsb2JhbE9iamVjdCIsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTRE9NR2xvYmFsT2JqZWN0KSB9OwogCiBKU0RPTUdsb2JhbE9iamVjdDo6SlNET01H
bG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxET01X
cmFwcGVyV29ybGQ+IHdvcmxkLCBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSogZ2xvYmFs
T2JqZWN0TWV0aG9kVGFibGUpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0dXJlLCBn
bG9iYWxPYmplY3RNZXRob2RUYWJsZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd0Jhc2UuY3BwCmluZGV4IDRhOGI3MTMuLjc4MDNhZjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtNTQsNyArNTQsNyBA
QCBzdGF0aWMgYm9vbCBzaG91bGRBbGxvd0FjY2Vzc0Zyb20oY29uc3QgSlNHbG9iYWxPYmplY3Qq
IHRoaXNPYmplY3QsIEV4ZWNTdGF0ZSogZQogICAgIHJldHVybiBCaW5kaW5nU2VjdXJpdHk6OnNo
b3VsZEFsbG93QWNjZXNzVG9ET01XaW5kb3coZXhlYywgYXNKU0RPTVdpbmRvdyh0aGlzT2JqZWN0
KS0+aW1wbCgpKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93QmFzZTo6c19pbmZv
ID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNET01XaW5kb3dCYXNlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2lu
ZG93QmFzZTo6c19pbmZvID0geyAiV2luZG93IiwgJkpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8s
IDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dCYXNlKSB9OwogCiBjb25zdCBHbG9i
YWxPYmplY3RNZXRob2RUYWJsZSBKU0RPTVdpbmRvd0Jhc2U6OnNfZ2xvYmFsT2JqZWN0TWV0aG9k
VGFibGUgPSB7ICZzaG91bGRBbGxvd0FjY2Vzc0Zyb20sICZzdXBwb3J0c1Byb2ZpbGluZywgJnN1
cHBvcnRzUmljaFNvdXJjZUluZm8sICZzaG91bGRJbnRlcnJ1cHRTY3JpcHQsICZqYXZhU2NyaXB0
RXhwZXJpbWVudHNFbmFibGVkLCAmcXVldWVUYXNrVG9FdmVudExvb3AsICZzaG91bGRJbnRlcnJ1
cHRTY3JpcHRCZWZvcmVUaW1lb3V0IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcAppbmRleCAyYzk3MWUzLi4yOTI1NmYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dDdXN0b20uY3BwCkBAIC0x
ODIsNyArMTgyLDcgQEAgYm9vbCBKU0RPTVdpbmRvdzo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2Jq
ZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHkKICAgICAgICAgfQogICAgIH0K
IAotICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IEpTRE9NV2luZG93OjppbmZvKCkt
PnByb3BIYXNoVGFibGUoZXhlYyktPmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgY29u
c3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gSlNET01XaW5kb3c6OmluZm8oKS0+c3RhdGljUHJv
cEhhc2hUYWJsZS0+ZW50cnkocHJvcGVydHlOYW1lKTsKICAgICBpZiAoZW50cnkpIHsKICAgICAg
ICAgc2xvdC5zZXRDYWNoZWFibGVDdXN0b20odGhpc09iamVjdCwgYWxsb3dzQWNjZXNzID8gZW50
cnktPmF0dHJpYnV0ZXMoKSA6IFJlYWRPbmx5IHwgRG9udERlbGV0ZSB8IERvbnRFbnVtLCBlbnRy
eS0+cHJvcGVydHlHZXR0ZXIoKSk7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzQ1LDcgKzM0
NSw3IEBAIHZvaWQgSlNET01XaW5kb3c6OnB1dChKU0NlbGwqIGNlbGwsIEV4ZWNTdGF0ZSogZXhl
YywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot
ICAgIGlmIChsb29rdXBQdXQoZXhlYywgcHJvcGVydHlOYW1lLCB0aGlzT2JqZWN0LCB2YWx1ZSwg
KnNfaW5mby5wcm9wSGFzaFRhYmxlKGV4ZWMpLCBzbG90KSkKKyAgICBpZiAobG9va3VwUHV0KGV4
ZWMsIHByb3BlcnR5TmFtZSwgdGhpc09iamVjdCwgdmFsdWUsICpzX2luZm8uc3RhdGljUHJvcEhh
c2hUYWJsZSwgc2xvdCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChCaW5kaW5nU2VjdXJp
dHk6OnNob3VsZEFsbG93QWNjZXNzVG9ET01XaW5kb3coZXhlYywgdGhpc09iamVjdC0+aW1wbCgp
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hl
bGwuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5jcHAK
aW5kZXggMmQ4YTBlYS4uNTM2OGEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01XaW5kb3dTaGVsbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XaW5kb3dTaGVsbC5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgdXNpbmcgbmFtZXNwYWNl
IEpTQzsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jb25zdCBDbGFzc0luZm8gSlNET01XaW5k
b3dTaGVsbDo6c19pbmZvID0geyAiSlNET01XaW5kb3dTaGVsbCIsICZCYXNlOjpzX2luZm8sIDAs
IDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNET01XaW5kb3dTaGVsbCkgfTsKK2NvbnN0IENsYXNz
SW5mbyBKU0RPTVdpbmRvd1NoZWxsOjpzX2luZm8gPSB7ICJKU0RPTVdpbmRvd1NoZWxsIiwgJkJh
c2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTVdpbmRvd1NoZWxsKSB9Owog
CiBKU0RPTVdpbmRvd1NoZWxsOjpKU0RPTVdpbmRvd1NoZWxsKFZNJiB2bSwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIERPTVdyYXBwZXJXb3JsZCYgd29ybGQpCiAgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3Ry
dWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9y
LmNwcAppbmRleCA3MDA3NTI1Li43M2NjYjNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAKQEAgLTMyLDcgKzMyLDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
SlNJbWFnZUNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW1hZ2VDb25zdHJ1Y3Rv
cjo6c19pbmZvID0geyAiSW1hZ2VDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNJbWFnZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZv
IEpTSW1hZ2VDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiSW1hZ2VDb25zdHJ1Y3RvciIsICZCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNJbWFnZUNvbnN0cnVjdG9yKSB9Owog
CiBKU0ltYWdlQ29uc3RydWN0b3I6OkpTSW1hZ2VDb25zdHJ1Y3RvcihTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICA6IERPTUNvbnN0cnVj
dG9yV2l0aERvY3VtZW50KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0xvY2F0aW9uQ3VzdG9tLmNwcAppbmRleCA5ZjA0NGM0Li5mMTU4
YTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xvY2F0aW9uQ3Vz
dG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0xvY2F0aW9uQ3VzdG9t
LmNwcApAQCAtODIsNyArODIsNyBAQCBib29sIEpTTG9jYXRpb246OnB1dERlbGVnYXRlKEV4ZWNT
dGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgSlNWYWx1ZQogCiAgICAgYm9v
bCBzYW1lRG9tYWluQWNjZXNzID0gc2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKGV4ZWMsIGZyYW1l
KTsKIAotICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IEpTTG9jYXRpb246OmluZm8o
KS0+cHJvcEhhc2hUYWJsZShleGVjKS0+ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICBj
b25zdCBIYXNoVGFibGVWYWx1ZSogZW50cnkgPSBKU0xvY2F0aW9uOjppbmZvKCktPnN0YXRpY1By
b3BIYXNoVGFibGUtPmVudHJ5KHByb3BlcnR5TmFtZSk7CiAgICAgaWYgKCFlbnRyeSkgewogICAg
ICAgICBpZiAoc2FtZURvbWFpbkFjY2VzcykKICAgICAgICAgICAgIEpTT2JqZWN0OjpwdXQodGhp
cywgZXhlYywgcHJvcGVydHlOYW1lLCB2YWx1ZSwgc2xvdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNTdG9yYWdlQ3VzdG9tLmNwcAppbmRleCBkZWEwMmU1Li45NDJjNGRmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU3RvcmFnZUN1c3RvbS5jcHAKQEAg
LTY0LDcgKzY0LDcgQEAgYm9vbCBKU1N0b3JhZ2U6OmRlbGV0ZVByb3BlcnR5KEpTQ2VsbCogY2Vs
bCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGUKICAgICAvLyBTaW5jZSBoYXNQ
cm9wZXJ0eSgpIHdvdWxkIGVuZCB1cCBjYWxsaW5nIGNhbkdldEl0ZW1zRm9yTmFtZSgpIGFuZCBi
ZSBmb29sZWQsIHdlIG5lZWQgdG8gY2hlY2sKICAgICAvLyB0aGUgbmF0aXZlIHByb3BlcnR5IHNs
b3RzIG1hbnVhbGx5LgogICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmplY3QpOwotICAgIGlm
IChnZXRTdGF0aWNWYWx1ZVNsb3Q8SlNTdG9yYWdlLCBCYXNlPihleGVjLCAqc19pbmZvLnByb3BI
YXNoVGFibGUoZXhlYyksIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCkpCisgICAgaWYg
KGdldFN0YXRpY1ZhbHVlU2xvdDxKU1N0b3JhZ2UsIEJhc2U+KGV4ZWMsICpzX2luZm8uc3RhdGlj
UHJvcEhhc2hUYWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgICAgICAKICAgICBKU1ZhbHVlIHByb3RvdHlwZSA9IHRoaXNPYmpl
Y3QtPnByb3RvdHlwZSgpOwpAQCAtMTA2LDcgKzEwNiw3IEBAIGJvb2wgSlNTdG9yYWdlOjpwdXRE
ZWxlZ2F0ZShFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEpTVmFs
dWUKICAgICAvLyBTaW5jZSBoYXNQcm9wZXJ0eSgpIHdvdWxkIGVuZCB1cCBjYWxsaW5nIGNhbkdl
dEl0ZW1zRm9yTmFtZSgpIGFuZCBiZSBmb29sZWQsIHdlIG5lZWQgdG8gY2hlY2sKICAgICAvLyB0
aGUgbmF0aXZlIHByb3BlcnR5IHNsb3RzIG1hbnVhbGx5LgogICAgIFByb3BlcnR5U2xvdCBzbG90
KHRoaXMpOwotICAgIGlmIChnZXRTdGF0aWNWYWx1ZVNsb3Q8SlNTdG9yYWdlLCBCYXNlPihleGVj
LCAqc19pbmZvLnByb3BIYXNoVGFibGUoZXhlYyksIHRoaXMsIHByb3BlcnR5TmFtZSwgc2xvdCkp
CisgICAgaWYgKGdldFN0YXRpY1ZhbHVlU2xvdDxKU1N0b3JhZ2UsIEJhc2U+KGV4ZWMsICpzX2lu
Zm8uc3RhdGljUHJvcEhhc2hUYWJsZSwgdGhpcywgcHJvcGVydHlOYW1lLCBzbG90KSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCiAgICAgSlNWYWx1ZSBwcm90b3R5cGUgPSB0aGlzLT5wcm90b3R5
cGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2VyR2xv
YmFsU2NvcGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTV29ya2VyR2xv
YmFsU2NvcGVCYXNlLmNwcAppbmRleCA5NGYxODkyLi5hMzRkMjY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuY3BwCkBA
IC00NSw3ICs0NSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7
ICJXb3JrZXJHbG9iYWxTY29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlKSB9OworY29uc3QgQ2xh
c3NJbmZvIEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlOjpzX2luZm8gPSB7ICJXb3JrZXJHbG9iYWxT
Y29wZSIsICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlKSB9OwogCiBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RU
YWJsZSBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZTo6c19nbG9iYWxPYmplY3RNZXRob2RUYWJsZSA9
IHsgJmFsbG93c0FjY2Vzc0Zyb20sICZzdXBwb3J0c1Byb2ZpbGluZywgJnN1cHBvcnRzUmljaFNv
dXJjZUluZm8sICZzaG91bGRJbnRlcnJ1cHRTY3JpcHQsICZqYXZhU2NyaXB0RXhwZXJpbWVudHNF
bmFibGVkLCAmcXVldWVUYXNrVG9FdmVudExvb3AsICZzaG91bGRJbnRlcnJ1cHRTY3JpcHRCZWZv
cmVUaW1lb3V0IH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dl
YkNvcmVKU0NsaWVudERhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVK
U0NsaWVudERhdGEuaAppbmRleCA5ODk5OGE3Li42NTQ1MTMzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5oCkBAIC0yMyw3ICsyMyw2IEBA
CiAjZGVmaW5lIFdlYkNvcmVKU0NsaWVudERhdGFfaAogCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldv
cmxkLmgiCi0jaW5jbHVkZSAiRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgiCiAjaW5jbHVkZSAiV2Vi
Q29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC03Miw4ICs3MSw2IEBAIHB1YmxpYzoKICAgICAgICAg
bV93b3JsZFNldC5yZW1vdmUoJndvcmxkKTsKICAgICB9CiAKLSAgICBET01PYmplY3RIYXNoVGFi
bGVNYXAgaGFzaFRhYmxlTWFwOwotCiBwcml2YXRlOgogICAgIEhhc2hTZXQ8RE9NV3JhcHBlcldv
cmxkKj4gbV93b3JsZFNldDsKICAgICBSZWZQdHI8RE9NV3JhcHBlcldvcmxkPiBtX25vcm1hbFdv
cmxkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbQppbmRleCA0OTVhNDdhLi42YmU5ZWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzM0LDM5ICszMzQsNiBA
QCBzdWIgQWRkQ2xhc3NGb3J3YXJkSWZOZWVkZWQKICAgICB9CiB9CiAKLXN1YiBoYXNoVGFibGVB
Y2Nlc3NvcgotewotICAgIG15ICRub1N0YXRpY1RhYmxlcyA9IHNoaWZ0OwotICAgIG15ICRjbGFz
c05hbWUgPSBzaGlmdDsKLSAgICBpZiAoJG5vU3RhdGljVGFibGVzKSB7Ci0gICAgICAgIHJldHVy
biAiZ2V0JHtjbGFzc05hbWV9VGFibGUoZXhlYy0+dm0oKSkiOwotICAgIH0gZWxzZSB7Ci0gICAg
ICAgIHJldHVybiAiJHtjbGFzc05hbWV9VGFibGUiOwotICAgIH0KLX0KLQotc3ViIHByb3RvdHlw
ZUhhc2hUYWJsZUFjY2Vzc29yCi17Ci0gICAgbXkgJG5vU3RhdGljVGFibGVzID0gc2hpZnQ7Ci0g
ICAgbXkgJGNsYXNzTmFtZSA9IHNoaWZ0OwotICAgIGlmICgkbm9TdGF0aWNUYWJsZXMpIHsKLSAg
ICAgICAgcmV0dXJuICJnZXQke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSh2bSkiOwotICAgIH0g
ZWxzZSB7Ci0gICAgICAgIHJldHVybiAiJHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUiOwotICAg
IH0KLX0KLQotc3ViIGNvbnN0cnVjdG9ySGFzaFRhYmxlQWNjZXNzb3IKLXsKLSAgICBteSAkbm9T
dGF0aWNUYWJsZXMgPSBzaGlmdDsKLSAgICBteSAkY29uc3RydWN0b3JDbGFzc05hbWUgPSBzaGlm
dDsKLSAgICBpZiAoJG5vU3RhdGljVGFibGVzKSB7Ci0gICAgICAgIHJldHVybiAiZ2V0JHtjb25z
dHJ1Y3RvckNsYXNzTmFtZX1UYWJsZShleGVjLT52bSgpKSI7Ci0gICAgfSBlbHNlIHsKLSAgICAg
ICAgcmV0dXJuICIke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfVRhYmxlIjsKLSAgICB9Ci19Ci0KIHN1
YiBHZXRHZW5lcmF0ZUlzUmVhY2hhYmxlCiB7CiAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwpA
QCAtNDYwLDEwICs0MjcsOSBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5CiAK
ICAgICBpZiAoJGhhc0F0dHJpYnV0ZXMpIHsKICAgICAgICAgaWYgKCRpbmxpbmVkKSB7Ci0gICAg
ICAgICAgICBkaWUgIkNhbm5vdCBpbmxpbmUgaWYgTm9TdGF0aWNUYWJsZXMgaXMgc2V0LiIgaWYg
KCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0pOwog
ICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICByZXR1cm4gJHtu
YW1lc3BhY2VNYXliZX1nZXRTdGF0aWNWYWx1ZVNsb3Q8JGNsYXNzTmFtZSwgQmFzZT4oZXhlYywg
KmluZm8oKS0+c3RhdGljUHJvcEhhc2hUYWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBz
bG90KTtcbiIpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJv
cGVydHlTbG90SW1wbCwgIiAgICByZXR1cm4gJHtuYW1lc3BhY2VNYXliZX1nZXRTdGF0aWNWYWx1
ZVNsb3Q8JGNsYXNzTmFtZSwgQmFzZT4oZXhlYywgIiAuIGhhc2hUYWJsZUFjY2Vzc29yKCRpbnRl
cmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0sICRjbGFzc05h
bWUpIC4gIiwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOworICAgICAgICAg
ICAgcHVzaChAZ2V0T3duUHJvcGVydHlTbG90SW1wbCwgIiAgICByZXR1cm4gJHtuYW1lc3BhY2VN
YXliZX1nZXRTdGF0aWNWYWx1ZVNsb3Q8JGNsYXNzTmFtZSwgQmFzZT4oZXhlYywgJHtjbGFzc05h
bWV9VGFibGUsIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAg
fQogICAgIH0gZWxzZSB7CiAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdEltcGwsICIg
ICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBwcm9w
ZXJ0eU5hbWUsIHNsb3QpO1xuIik7CkBAIC0xOTgyLDE1ICsxOTQ4LDkgQEAgc3ViIEdlbmVyYXRl
SW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcJWNvbmRpdGlv
bmFscywgJGp1c3RHZW5lcmF0ZVZhbHVlQXJyYXkpOwogCiAgICAgaWYgKCRqdXN0R2VuZXJhdGVW
YWx1ZUFycmF5KSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZv
ICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5h
bWV9UHJvdG90eXBlXCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUo
JHtjbGFzc05hbWV9UHJvdG90eXBlKSB9O1xuXG4iKTsKLSAgICB9IGVsc2lmICgkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KSB7Ci0gICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAic3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgZ2V0JHtjbGFzc05hbWV9
UHJvdG90eXBlVGFibGUoVk0mIHZtKVxuIik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
e1xuIik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIHJldHVybiBnZXRIYXNoVGFi
bGVGb3JHbG9iYWxEYXRhKHZtLCAke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSk7XG4iKTsKLSAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5cbiIpOwotICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgImNvbnN0IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsg
XCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZvLCAwLCBn
ZXQke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNz
TmFtZX1Qcm90b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNv
bnN0IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2li
bGVJbnRlcmZhY2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxuIik7CiAgICAgfSBlbHNlIHsK
LSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFzc05hbWV9
UHJvdG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Qcm90b3R5cGVc
IiwgJkJhc2U6OnNfaW5mbywgJiR7Y2xhc3NOYW1lfVByb3RvdHlwZVRhYmxlLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxuIik7CisgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6
c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9UHJvdG90eXBlXCIsICZCYXNlOjpz
X2luZm8sICYke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRSgk
e2NsYXNzTmFtZX1Qcm90b3R5cGUpIH07XG5cbiIpOwogICAgIH0KIAogICAgIGlmIChQcm90b3R5
cGVPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QoJGludGVyZmFjZSkpIHsKQEAgLTIwMDUsMTEg
KzE5NjUsMTEgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgIGlmICgk
bnVtQ29uc3RhbnRzIGVxIDAgJiYgJG51bUZ1bmN0aW9ucyBlcSAwICYmICRudW1Qcm90b3R5cGVB
dHRyaWJ1dGVzIGVxIDApIHsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAg
ICByZXR1cm4gQmFzZTo6Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmplY3QsIGV4ZWMsIHByb3Bl
cnR5TmFtZSwgc2xvdCk7XG4iKTsgICAgICAgIAogICAgICAgICAgICAgfSBlbHNpZiAoJG51bUNv
bnN0YW50cyBlcSAwICYmICRudW1Qcm90b3R5cGVBdHRyaWJ1dGVzIGVxIDApIHsKLSAgICAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25T
bG90PEpTT2JqZWN0PihleGVjLCAiIC4gcHJvdG90eXBlSGFzaFRhYmxlQWNjZXNzb3IoJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTTm9TdGF0aWNUYWJsZXMifSwgJGNsYXNzTmFt
ZSkgLiAiLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7CisgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xv
dDxKU09iamVjdD4oZXhlYywgJHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUsIHRoaXNPYmplY3Qs
IHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAgICAgIH0gZWxzaWYgKCRudW1GdW5j
dGlvbnMgZXEgMCAmJiAkbnVtUHJvdG90eXBlQXR0cmlidXRlcyBlcSAwKSB7Ci0gICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDwk
e2NsYXNzTmFtZX1Qcm90b3R5cGUsIEpTT2JqZWN0PihleGVjLCAiIC4gcHJvdG90eXBlSGFzaFRh
YmxlQWNjZXNzb3IoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTTm9TdGF0aWNU
YWJsZXMifSwgJGNsYXNzTmFtZSkgLiAiLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
O1xuIik7CisgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdl
dFN0YXRpY1ZhbHVlU2xvdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUsIEpTT2JqZWN0PihleGVjLCAk
e2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90
KTtcbiIpOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIiAgICByZXR1cm4gZ2V0U3RhdGljUHJvcGVydHlTbG90PCR7Y2xhc3NOYW1lfVBy
b3RvdHlwZSwgSlNPYmplY3Q+KGV4ZWMsICIgLiBwcm90b3R5cGVIYXNoVGFibGVBY2Nlc3Nvcigk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9LCAkY2xh
c3NOYW1lKSAuICIsIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKKyAgICAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gZ2V0U3RhdGljUHJvcGVy
dHlTbG90PCR7Y2xhc3NOYW1lfVByb3RvdHlwZSwgSlNPYmplY3Q+KGV4ZWMsICR7Y2xhc3NOYW1l
fVByb3RvdHlwZVRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7CiAg
ICAgICAgIH0gZWxzaWYgKCRudW1Db25zdGFudHMgPiAwIHx8ICRudW1GdW5jdGlvbnMgPiAwIHx8
ICRudW1Qcm90b3R5cGVBdHRyaWJ1dGVzID4gMCkgewpAQCAtMjA1MSwyNSArMjAxMSwxMyBAQCBz
dWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgIH0KIAogICAgICMgLSBJbml0aWFsaXplIHN0
YXRpYyBDbGFzc0luZm8gb2JqZWN0Ci0gICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAw
ICYmICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0p
IHsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBn
ZXQke2NsYXNzTmFtZX1UYWJsZShWTSYgdm0pXG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRl
bnQsICJ7XG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdldEhh
c2hUYWJsZUZvckdsb2JhbERhdGEodm0sICR7Y2xhc3NOYW1lfVRhYmxlKTtcbiIpOwotICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7Ci0gICAgfQotCiAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJjb25zdCBDbGFzc0luZm8gJGNsYXNzTmFtZSIgLiAiOjpzX2luZm8gPSB7IFwiJHt2
aXNpYmxlSW50ZXJmYWNlTmFtZX1cIiwgJkJhc2U6OnNfaW5mbywgIik7CiAKLSAgICBpZiAoJG51
bUluc3RhbmNlQXR0cmlidXRlcyA+IDAgJiYgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJKU05vU3RhdGljVGFibGVzIn0pIHsKKyAgICBpZiAoJG51bUluc3RhbmNlQXR0cmlidXRl
cyA+IDApIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICImJHtjbGFzc05hbWV9VGFibGUi
KTsKICAgICB9IGVsc2UgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIjAiKTsKICAgICB9
Ci0gICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAwICYmICRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0pIHsKLSAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICIsIGdldCR7Y2xhc3NOYW1lfVRhYmxlICIpOwotICAgIH0gZWxzZSB7Ci0gICAg
ICAgIHB1c2goQGltcGxDb250ZW50LCAiLCAwICIpOwotICAgIH0KICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiwgQ1JFQVRFX01FVEhPRF9UQUJMRSgkY2xhc3NOYW1lKSB9O1xuXG4iKTsKIAogICAg
IG15ICRpbXBsVHlwZSA9ICRpbnRlcmZhY2VOYW1lOwpAQCAtNDcyOCw3ICs0Njc2LDcgQEAgc3Vi
IEdlbmVyYXRlQ29uc3RydWN0b3JIZWxwZXJNZXRob2RzCiAgICAgICAgICRsZWFzdENvbnN0cnVj
dG9yTGVuZ3RoID0gMDsKICAgICB9CiAKLSAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJjb25zdCBD
bGFzc0luZm8gJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJ
bnRlcmZhY2VOYW1lfUNvbnN0cnVjdG9yXCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoJGNvbnN0cnVjdG9yQ2xhc3NOYW1lKSB9O1xuXG4iKTsKKyAgICBwdXNoKEAk
b3V0cHV0QXJyYXksICJjb25zdCBDbGFzc0luZm8gJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OnNf
aW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfUNvbnN0cnVjdG9yXCIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoJGNvbnN0cnVjdG9yQ2xhc3NOYW1lKSB9O1xu
XG4iKTsKIAogICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiR7Y29uc3RydWN0b3JDbGFzc05hbWV9
Ojoke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfShTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdClcbiIpOwogICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAg
ICA6ICR7Y29uc3RydWN0b3JQYXJlbnRDbGFzc05hbWV9KHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0
KVxuIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0
dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1
dGVzLnR4dAppbmRleCA4ZWRmNWVkLi5iOTA3OTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKQEAgLTgyLDcgKzgyLDYgQEAgSlND
dXN0b21Ub05hdGl2ZU9iamVjdAogSlNHZW5lcmF0ZVRvSlNPYmplY3QKIEpTR2VuZXJhdGVUb05h
dGl2ZU9iamVjdAogSlNMZWdhY3lQYXJlbnQ9KgotSlNOb1N0YXRpY1RhYmxlcwogSlNXaW5kb3dF
dmVudExpc3RlbmVyCiBNYXNxdWVyYWRlc0FzVW5kZWZpbmVkCiBOYW1lZENvbnN0cnVjdG9yPSoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL0NSdW50aW1lT2JqZWN0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9jL0NSdW50aW1lT2JqZWN0LmNwcAppbmRleCAyZDk2NjQ1
Li5kNDBhOTU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9DUnVudGltZU9i
amVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuY3Bw
CkBAIC0zNSw3ICszNSw3IEBACiBuYW1lc3BhY2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBDUnVudGltZU9iamVjdDo6c19pbmZvID0geyAiQ1J1bnRpbWVP
YmplY3QiLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KENSdW50aW1lT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIENSdW50aW1lT2JqZWN0OjpzX2lu
Zm8gPSB7ICJDUnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2luZm8sIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoQ1J1bnRpbWVPYmplY3QpIH07CiAKIENSdW50aW1lT2JqZWN0OjpDUnVu
dGltZU9iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRyPENJbnN0
YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KHZtLCBzdHJ1Y3R1cmUsIGluc3Rh
bmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19pbnN0YW5jZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9jX2luc3RhbmNlLmNwcAppbmRleCA2ZWIxZWZmLi40
YjNlZjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9jX2luc3RhbmNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9jX2luc3RhbmNlLmNwcApAQCAtMTQzLDcg
KzE0Myw3IEBAIHByaXZhdGU6CiAKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBDUnVudGltZU1ldGhv
ZDo6c19pbmZvID0geyAiQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1ldGhvZDo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJ
bmZvIENSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJDUnVudGltZU1ldGhvZCIsICZSdW50aW1l
TWV0aG9kOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQ1J1bnRpbWVNZXRob2QpIH07
CiAKIEpTVmFsdWUgQ0luc3RhbmNlOjpnZXRNZXRob2QoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0
eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdl
L29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9P
YmpDUnVudGltZU9iamVjdC5tbQppbmRleCAwZDBiYmE1Li5hNDM5NDU4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5tbQpAQCAtMzMsNyArMzMs
NyBAQAogbmFtZXNwYWNlIEpTQyB7CiBuYW1lc3BhY2UgQmluZGluZ3MgewogCi1jb25zdCBDbGFz
c0luZm8gT2JqQ1J1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lT2JqZWN0Iiwg
JlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVu
dGltZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBPYmpDUnVudGltZU9iamVjdDo6c19pbmZv
ID0geyAiT2JqQ1J1bnRpbWVPYmplY3QiLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lT2JqZWN0KSB9OwogCiBPYmpDUnVudGltZU9iamVj
dDo6T2JqQ1J1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUGFzc1Jl
ZlB0cjxPYmpjSW5zdGFuY2U+IGluc3RhbmNlKQogICAgIDogUnVudGltZU9iamVjdCh2bSwgc3Ry
dWN0dXJlLCBpbnN0YW5jZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpj
L29iamNfaW5zdGFuY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3Rh
bmNlLm1tCmluZGV4IDNmYjMzNjIuLjAxNWE2ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L29iamMvb2JqY19pbnN0YW5jZS5tbQpAQCAtMjE4LDcgKzIxOCw3IEBAIHByaXZhdGU6CiAgICAg
fQogfTsKIAotY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJP
YmpDUnVudGltZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07Citjb25zdCBDbGFzc0luZm8gT2JqQ1J1
bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRo
b2Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU1ldGhvZCkgfTsK
IAogSlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmdldE1ldGhvZChFeGVjU3RhdGUqIGV4ZWMsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X3J1bnRpbWUubW0KaW5kZXggMzcyODYyMS4uZmM2OGQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfcnVudGltZS5tbQpAQCAtMTg4LDcgKzE4OCw3IEBAIHVuc2lnbmVkIGlu
dCBPYmpjQXJyYXk6OmdldExlbmd0aCgpIGNvbnN0CiAgICAgcmV0dXJuIFtfYXJyYXkuZ2V0KCkg
Y291bnRdOwogfQogCi1jb25zdCBDbGFzc0luZm8gT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpzX2lu
Zm8gPSB7ICJPYmpjRmFsbGJhY2tPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBP
YmpjRmFsbGJhY2tPYmplY3RJbXA6OnNfaW5mbyA9IHsgIk9iamNGYWxsYmFja09iamVjdCIsICZC
YXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqY0ZhbGxiYWNrT2JqZWN0SW1w
KSB9OwogCiBPYmpjRmFsbGJhY2tPYmplY3RJbXA6Ok9iamNGYWxsYmFja09iamVjdEltcChKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgT2JqY0luc3Rh
bmNlKiBpLCBjb25zdCBTdHJpbmcmIHByb3BlcnR5TmFtZSkKICAgICA6IEpTRGVzdHJ1Y3RpYmxl
T2JqZWN0KGdsb2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L3J1bnRpbWVfYXJyYXkuY3BwCmluZGV4IGQ4ZmY5ZTIuLmZlZWFiODUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9hcnJheS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgdXNpbmcgbmFtZXNw
YWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gUnVudGlt
ZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1lQXJyYXkiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJheSkgfTsKK2NvbnN0IENsYXNzSW5mbyBSdW50
aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJheSIsICZCYXNlOjpzX2luZm8sIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9OwogCiBSdW50aW1lQXJyYXk6OlJ1bnRp
bWVBcnJheShFeGVjU3RhdGUqIGV4ZWMsIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNB
cnJheShleGVjLT52bSgpLCBzdHJ1Y3R1cmUsIDApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRp
bWVfbWV0aG9kLmNwcAppbmRleCA1NGQzNjEzLi5hOGFkOWE5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9ydW50aW1lX21ldGhvZC5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIEpTQyB7
CiAKIHVzaW5nIG5hbWVzcGFjZSBCaW5kaW5nczsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVN
ZXRob2Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19p
bmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07Citjb25zdCBD
bGFzc0luZm8gUnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiUnVudGltZU1ldGhvZCIsICZJbnRl
cm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZU1ldGhv
ZCkgfTsKIAogUnVudGltZU1ldGhvZDo6UnVudGltZU1ldGhvZChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgTWV0aG9kKiBtZXRob2QpCiAgICAgLy8g
Q2FsbGVycyB3aWxsIG5lZWQgdG8gcGFzcyBpbiB0aGUgcmlnaHQgZ2xvYmFsIG9iamVjdCBjb3Jy
ZXNwb25kaW5nIHRvIHRoaXMgbmF0aXZlIG9iamVjdCAibWV0aG9kIi4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCmluZGV4IDQ4YzJjNWUuLjEwYjAxZWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcApAQCAtMzUsNyArMzUsNyBAQCB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIG5hbWVzcGFjZSBKU0MgewogbmFtZXNwYWNlIEJpbmRpbmdz
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGltZU9iamVjdDo6c19pbmZvID0geyAiUnVu
dGltZU9iamVjdCIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGlt
ZU9iamVjdCkgfTsKIAogUnVudGltZU9iamVjdDo6UnVudGltZU9iamVjdChWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlLCBQYXNzUmVmUHRyPEluc3RhbmNlPiBpbnN0YW5jZSkKICAgICA6IEpT
RGVzdHJ1Y3RpYmxlT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9L
ZXkuaWRsCmluZGV4IGJjMTRkYTguLjM5NzQyYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9DcnlwdG9LZXkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9L
ZXkuaWRsCkBAIC00NCw3ICs0NCw2IEBAIGVudW0gS2V5VXNhZ2UgewogICAgIENvbmRpdGlvbmFs
PVNVQlRMRV9DUllQVE8sCiAgICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAogICAgIEludGVy
ZmFjZU5hbWU9S2V5LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgTm9JbnRlcmZhY2VPYmpl
Y3QsCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24KIF0gaW50ZXJmYWNlIENyeXB0b0tleSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VMb2FkRXZlbnQuaWRsIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbAppbmRleCAxNDhlYTFm
Li5iYzE1MDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VMb2Fk
RXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZUxvYWRFdmVudC5p
ZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25k
aXRpb25hbD1GT05UX0xPQURfRVZFTlRTLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgQ29u
c3RydWN0b3JUZW1wbGF0ZT1FdmVudAogXSBpbnRlcmZhY2UgQ1NTRm9udEZhY2VMb2FkRXZlbnQg
OiBFdmVudCB7CiAgICAgW0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yXSByZWFkb25seSBh
dHRyaWJ1dGUgQ1NTRm9udEZhY2VSdWxlIGZvbnRmYWNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUNv
cmVFeGNlcHRpb24uaWRsCmluZGV4IDU2NjRmZTMuLmU0ZDJlOTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRE9NQ29yZUV4Y2VwdGlvbi5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKICAqLwogCiBbCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBEb05vdENoZWNrQ29uc3RhbnRzLAogICAgIEludGVyZmFj
ZU5hbWU9RE9NRXhjZXB0aW9uLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwKaW5kZXggOTYxOGUyNC4uMjZlZDhhYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RPTVN0cmluZ0xpc3QuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9ET01TdHJpbmdMaXN0LmlkbApAQCAtMjUsNyArMjUsNiBAQAogCiBbCiAgICAg
SlNDdXN0b21Ub05hdGl2ZU9iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBET01TdHJpbmdMaXN0IHsKICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXJyb3JF
dmVudC5pZGwKaW5kZXggMWM3YmI3OS4uNTk0MWJmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0Vycm9yRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FcnJvckV2ZW50
LmlkbApAQCAtMjksNyArMjksNiBAQAogICovCiAKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAog
ICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKIF0gaW50ZXJmYWNlIEVycm9yRXZlbnQgOiBF
dmVudCB7CiAgICAgW0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yXSByZWFkb25seSBhdHRy
aWJ1dGUgRE9NU3RyaW5nIG1lc3NhZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmlkbAppbmRleCBlZDlkNzRjLi44
Yjg5NjBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudC5pZGwKQEAgLTIyLDcgKzIyLDYgQEAKIFsKICAgICBDdXN0
b21Ub0pTT2JqZWN0LAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQsCi0gICAgSlNOb1N0
YXRpY1RhYmxlcywKICAgICBPYmpDUG9seW1vcnBoaWMsCiBdIGludGVyZmFjZSBFdmVudCB7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEV4Y2VwdGlvbi5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnRFeGNlcHRpb24uaWRsCmluZGV4IGUwNzI3MjYuLmU3OWMxMzMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEV4Y2VwdGlvbi5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RXhjZXB0aW9uLmlkbApAQCAtMjgsNyArMjgsNiBAQAog
CiAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwotICAgIEpTTm9TdGF0aWNUYWJsZXMs
CiAgICAgRG9Ob3RDaGVja0NvbnN0YW50cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxl
LAogXSBleGNlcHRpb24gRXZlbnRFeGNlcHRpb24gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0V2ZW50TGlzdGVuZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TGlzdGVu
ZXIuaWRsCmluZGV4IDhlNzE0OGIuLjZjYWEyNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FdmVudExpc3RlbmVyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRMaXN0
ZW5lci5pZGwKQEAgLTIxLDcgKzIxLDYgQEAKIC8vIEludHJvZHVjZWQgaW4gRE9NIExldmVsIDI6
CiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBP
YmpDUHJvdG9jb2wsCiAgICAgQ1BQUHVyZUludGVyZmFjZSwKIF0gaW50ZXJmYWNlIEV2ZW50TGlz
dGVuZXIgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VDaGFubmVsLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwKaW5kZXggMTMxMTI3Yi4u
ZjQyZjA5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VDaGFubmVsLmlk
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZUNoYW5uZWwuaWRsCkBAIC0zMCw3ICsz
MCw2IEBACiAgICAgQ29uc3RydWN0b3IsCiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1TY3JpcHRF
eGVjdXRpb25Db250ZXh0LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAotICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgTWVz
c2FnZUNoYW5uZWwgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZUV2
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlRXZlbnQuaWRsCmluZGV4IDdjN2Mx
YjQuLjIyNWVjODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlRXZlbnQu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlRXZlbnQuaWRsCkBAIC0yNyw3ICsy
Nyw2IEBACiAKIFsKICAgICBHbG9iYWxDb250ZXh0PURPTVdpbmRvdyZXb3JrZXJHbG9iYWxTY29w
ZSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQs
CiBdIGludGVyZmFjZSBNZXNzYWdlRXZlbnQgOiBFdmVudCB7CiAgICAgW0luaXRpYWxpemVkQnlF
dmVudENvbnN0cnVjdG9yXSByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG9yaWdpbjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vTWVzc2FnZVBvcnQuaWRsCmluZGV4IDJiMzQ5Y2IuLmQ4ZTkwNTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL01lc3NhZ2VQb3J0LmlkbApAQCAtMzAsNyArMzAsNiBAQAogICAgIEdlbmVyYXRlSXNS
ZWFjaGFibGU9SW1wbCwKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgRXZlbnRUYXJnZXQsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIE1lc3NhZ2VQb3J0IHsKIC8vIFdlIG5l
ZWQgdG8gaGF2ZSBzb21ldGhpbmcgYXMgYW4gT2JqQyBiaW5kaW5nLCBiZWNhdXNlIE1lc3NhZ2VQ
b3J0IGlzIHVzZWQgaW4gTWVzc2FnZUV2ZW50LCB3aGljaCBhbHJlYWR5IGhhcyBvbmUsCiAvLyBi
dXQgd2UgZG9uJ3Qgd2FudCB0byBhY3R1YWxseSBleHBvc2UgdGhlIEFQSSB3aGlsZSBpdCBpcyBp
biBmbHV4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1Byb2dyZXNzRXZlbnQuaWRs
IGIvU291cmNlL1dlYkNvcmUvZG9tL1Byb2dyZXNzRXZlbnQuaWRsCmluZGV4IGUyZGRmYmIuLmUz
YTEyMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9ncmVzc0V2ZW50LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvZ3Jlc3NFdmVudC5pZGwKQEAgLTI1LDcgKzI1LDYg
QEAKIAogWwogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQsCi0gICAgSlNOb1N0YXRpY1Rh
YmxlcwogXSBpbnRlcmZhY2UgUHJvZ3Jlc3NFdmVudCA6IEV2ZW50IHsKICAgICBbSW5pdGlhbGl6
ZWRCeUV2ZW50Q29uc3RydWN0b3JdIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGxlbmd0aENv
bXB1dGFibGU7CiAgICAgW0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yXSByZWFkb25seSBh
dHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIGxvYWRlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvQmxvYi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuaWRs
CmluZGV4IGFjNzdhYmQuLjcwNzhjMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVh
cGkvQmxvYi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmlkbApAQCAtMzIs
NyArMzIsNiBAQAogICAgIEdsb2JhbENvbnRleHQ9RE9NV2luZG93Jldvcmtlckdsb2JhbFNjb3Bl
LAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKICAgICBDdXN0b21Ub0pTT2JqZWN0LAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgQ3VzdG9tQ29uc3RydWN0b3IsCiAgICAgQ3VzdG9t
Q29uc3RydWN0b3Ioc2VxdWVuY2U8YW55PiBibG9iUGFydHMsIG9wdGlvbmFsIEJsb2JQcm9wZXJ0
eUJhZyBvcHRpb25zKSwKIF0gaW50ZXJmYWNlIEJsb2IgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZmlsZWFwaS9GaWxlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwK
aW5kZXggNDQ0NjJlZS4uOGUwOTg5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGUuaWRsCkBAIC0yNiw3
ICsyNiw2IEBACiBbCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAogICAgIEpTR2VuZXJh
dGVUb0pTT2JqZWN0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMKIF0gaW50ZXJmYWNlIEZpbGUgOiBC
bG9iIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CiAjaWYgIWRlZmlu
ZWQoTEFOR1VBR0VfR09CSkVDVCkgfHwgIUxBTkdVQUdFX0dPQkpFQ1QKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUVycm9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVh
cGkvRmlsZUVycm9yLmlkbAppbmRleCBkOTY1MGY5Li5hNGRiMDgxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVFcnJvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZmls
ZWFwaS9GaWxlRXJyb3IuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiAgKi8KIAogWwotICAgIEpTTm9T
dGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2Ug
RmlsZUVycm9yIHsKICNpZiAhZGVmaW5lZChMQU5HVUFHRV9PQkpFQ1RJVkVfQykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUV4Y2VwdGlvbi5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVFeGNlcHRpb24uaWRsCmluZGV4IDZjYWU3YTUuLjc3YTVhMzYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUV4Y2VwdGlvbi5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlRXhjZXB0aW9uLmlkbApAQCAtMzEsNyArMzEsNiBA
QAogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIERvTm90Q2hlY2tDb25zdGFudHMsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBl
eGNlcHRpb24gRmlsZUV4Y2VwdGlvbiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Zp
bGVhcGkvRmlsZUxpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwK
aW5kZXggMjU4ZjljYy4uNDJkNTUzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlTGlzdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlTGlzdC5pZGwK
QEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJ
bXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgRmlsZUxpc3QgewogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxlbmd0aDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBp
L0ZpbGVSZWFkZXIuaWRsCmluZGV4IDAwYjkxYTMuLjhiMzMwYzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZmls
ZWFwaS9GaWxlUmVhZGVyLmlkbApAQCAtMzUsNyArMzUsNiBAQAogICAgIENvbnN0cnVjdG9yLAog
ICAgIENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBFdmVu
dFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgRmlsZVJlYWRlciB7
CiAgICAgLy8gcmVhZHkgc3RhdGVzCiAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgRU1QVFkgPSAw
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwg
Yi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJTeW5jLmlkbAppbmRleCAxZjc3NDFj
Li41YTAyODI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJT
eW5jLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJTeW5jLmlkbApA
QCAtMzEsNyArMzEsNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V29ya2VyR2xvYmFsU2NvcGUs
CiAgICAgQ29uc3RydWN0b3IsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIEZp
bGVSZWFkZXJTeW5jIHsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgUmFp
c2VzRXhjZXB0aW9uXSBBcnJheUJ1ZmZlciByZWFkQXNBcnJheUJ1ZmZlcihCbG9iIGJsb2IpOwog
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBSYWlzZXNFeGNlcHRpb25dIERP
TVN0cmluZyByZWFkQXNCaW5hcnlTdHJpbmcoQmxvYiBibG9iKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRE9NVVJMLmlk
bAppbmRleCA4NzZiMzRiLi4wODU4MDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0RPTVVSTC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCkBAIC0zMiw3
ICszMiw2IEBACiAgICAgQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRpb24sCiAgICAgSlNHZW5lcmF0
ZVRvTmF0aXZlT2JqZWN0LAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAotICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiAgICAgSW50ZXJmYWNlTmFtZT1VUkwsCiAgICAgSW1wbGVtZW50YXRpb25MYWNr
c1ZUYWJsZSwKIF0gaW50ZXJmYWNlIERPTVVSTCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50U291cmNlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2Uu
aWRsCmluZGV4IDFjOGFkYzkuLmVhODg4YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRXZlbnRTb3VyY2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2Uu
aWRsCkBAIC0zNiw3ICszNiw2IEBACiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1TY3JpcHRFeGVj
dXRpb25Db250ZXh0LAogICAgIENvbnN0cnVjdG9yUmFpc2VzRXhjZXB0aW9uLAogICAgIEV2ZW50
VGFyZ2V0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBFdmVudFNvdXJjZSB7
CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIFVSTDsgLy8gTG93ZXJjYXNlZCAu
dXJsIGlzIHRoZSBvbmUgaW4gdGhlIHNwZWMsIGJ1dCBsZWF2aW5nIC5VUkwgZm9yIGNvbXBhdGli
aWxpdHkgcmVhc29ucy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV29ya2VyTmF2
aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvV29ya2VyTmF2aWdhdG9yLmlkbAppbmRl
eCA2ZjRhZDU2Li44NmExYTRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1dvcmtl
ck5hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Xb3JrZXJOYXZpZ2F0b3Iu
aWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgR2Vu
ZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFj
ZSBXb3JrZXJOYXZpZ2F0b3IgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgYXBw
TmFtZTsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFwcFZlcnNpb247CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3Bl
LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUu
aWRsCmluZGV4IGZkM2ViOWYuLmRmN2Y5NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zMiw3ICszMiw2IEBA
CiAgICAgR2xvYmFsQ29udGV4dD1EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSwKICAgICBDdXN0
b21Qcm94eVRvSlNPYmplY3QsCiAgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgIEpT
Tm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSA6
IFdvcmtlckdsb2JhbFNjb3BlIHsKIAogI2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkg
JiYgTEFOR1VBR0VfSkFWQVNDUklQVApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9TaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1No
YXJlZFdvcmtlckdsb2JhbFNjb3BlLmlkbAppbmRleCA0Mzk1YWZjLi5kMWExMDMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmlkbApA
QCAtMzMsNyArMzMsNiBAQAogICAgIEN1c3RvbVByb3h5VG9KU09iamVjdCwKICAgICBDb25kaXRp
b25hbD1TSEFSRURfV09SS0VSUywKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIFNoYXJlZFdvcmtlckdsb2JhbFNjb3BlIDog
V29ya2VyR2xvYmFsU2NvcGUgewogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBu
YW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29w
ZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmlkbAppbmRl
eCA2NjhkODg1Li4wNWUzNWFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmlkbApAQCAtMzEsNyArMzEsNiBAQAogICAgIEpTQ3VzdG9tR2V0T3duUHJvcGVy
dHlTbG90QW5kRGVzY3JpcHRvciwKICAgICBFdmVudFRhcmdldCwKICAgICBKU0xlZ2FjeVBhcmVu
dD1KU1dvcmtlckdsb2JhbFNjb3BlQmFzZSwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRl
cmZhY2UgV29ya2VyR2xvYmFsU2NvcGUgewogCiAjaWYgZGVmaW5lZChMQU5HVUFHRV9KQVZBU0NS
SVBUKSAmJiBMQU5HVUFHRV9KQVZBU0NSSVBUCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
TG9jYXRpb24uaWRsCmluZGV4IDU0NTEwZDEuLjg2Yzc3ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyTG9jYXRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyTG9jYXRpb24uaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAgICAgR2xvYmFs
Q29udGV4dD1Xb3JrZXJHbG9iYWxTY29wZSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGws
Ci0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAog
XSBpbnRlcmZhY2UgV29ya2VyTG9jYXRpb24gewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01T
dHJpbmcgaHJlZjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVz
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaWRsCmluZGV4IDhkZGQz
MjYuLjIxNDg0OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVz
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmlkbApAQCAtNDIs
NyArNDIsNiBAQCBlbnVtIFhNTEh0dHBSZXF1ZXN0UmVzcG9uc2VUeXBlIHsKICAgICBDb25zdHJ1
Y3RvckNhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsCiAgICAgSlNDdXN0b21NYXJrRnVu
Y3Rpb24sCiAgICAgRXZlbnRUYXJnZXQsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJm
YWNlIFhNTEh0dHBSZXF1ZXN0IHsKICAgICAvLyBGcm9tIFhNTEh0dHBSZXF1ZXN0RXZlbnRUYXJn
ZXQKICAgICAvLyBldmVudCBoYW5kbGVyIGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdEV4Y2VwdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS94
bWwvWE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaWRsCmluZGV4IDlkN2ZiZWYuLmYwNjk0MWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdEV4Y2VwdGlvbi5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uLmlkbApAQCAt
MjcsNyArMjcsNiBAQAogICovCiAKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIERvTm90
Q2hlY2tDb25zdGFudHMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gZXhjZXB0
aW9uIFhNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaWRsIGIvU291cmNlL1dlYkNvcmUveG1s
L1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5pZGwKaW5kZXggM2ZkOGU3Yi4uMjExNjI3MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVu
dC5pZGwKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgSlNOb1N0YXRpY1RhYmxlcwog
Ly8gV2Ugc2hvdWxkIGFsc28gaW5oZXJpdCBmcm9tIExTUHJvZ3Jlc3NFdmVudCB3aGVuIHRoZSBp
ZGwgaXMgYWRkZWQuCiBdIGludGVyZmFjZSBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQgOiBQ
cm9ncmVzc0V2ZW50IHsKICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9u
ZyBwb3NpdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVz
dFVwbG9hZC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQuaWRs
CmluZGV4IDVhZGMwMTEuLmEwNTU5YzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9Y
TUxIdHRwUmVxdWVzdFVwbG9hZC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBS
ZXF1ZXN0VXBsb2FkLmlkbApAQCAtMjksNyArMjksNiBAQAogWwogICAgIEdlbmVyYXRlSXNSZWFj
aGFibGU9SW1wbCwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBp
bnRlcmZhY2UgWE1MSHR0cFJlcXVlc3RVcGxvYWQgewogICAgIC8vIEZyb20gWE1MSHR0cFJlcXVl
c3RFdmVudFRhcmdldAogICAgIC8vIGV2ZW50IGhhbmRsZXIgYXR0cmlidXRlcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdl
TG9nCmluZGV4IDQyYTAyMzUuLjcyNWNmZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MyBAQAorMjAxNC0wNy0zMCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAg
ICAgICAgU3RhdGljIGhhc2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNvdXBsZWQgd2l0
aCBhIFZNLgorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQv
UHJveHlJbnN0YW5jZS5tbToKKyAgICAgICAgKiBQbHVnaW5zL0hvc3RlZC9Qcm94eVJ1bnRpbWVP
YmplY3QubW06CisKIDIwMTQtMDctMjcgIFByYXRpayBTb2xhbmtpICA8cHNvbGFua2lAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbW92ZSB1bnVzZWQgcHJlZmVyZW5jZSBrZXlzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94eUluc3RhbmNlLm1tIGIvU291
cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlJbnN0YW5jZS5tbQppbmRleCA3ODMx
NjNlLi4wZGYwZGVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3Rl
ZC9Qcm94eUluc3RhbmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVk
L1Byb3h5SW5zdGFuY2UubW0KQEAgLTIwOCw3ICsyMDgsNyBAQCBwcml2YXRlOgogICAgIH0KIH07
CiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIlByb3h5
UnVudGltZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoUHJveHlSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5UnVu
dGltZU1ldGhvZDo6c19pbmZvID0geyAiUHJveHlSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRo
b2Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJ1bnRpbWVNZXRob2QpIH07
CiAKIEpTVmFsdWUgUHJveHlJbnN0YW5jZTo6Z2V0TWV0aG9kKEpTQzo6RXhlY1N0YXRlKiBleGVj
LCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tIGIvU291cmNlL1dlYktp
dC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tCmluZGV4IGFmYWZjZGYu
LmU2NmM5ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1By
b3h5UnVudGltZU9iamVjdC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3Rl
ZC9Qcm94eVJ1bnRpbWVPYmplY3QubW0KQEAgLTM0LDcgKzM0LDcgQEAgdXNpbmcgbmFtZXNwYWNl
IEpTQzsKIG5hbWVzcGFjZSBXZWJLaXQgewogCiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJ1bnRp
bWVPYmplY3Q6OnNfaW5mbyA9IHsgIlByb3h5UnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0
OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlSdW50aW1lT2JqZWN0KSB9
OworY29uc3QgQ2xhc3NJbmZvIFByb3h5UnVudGltZU9iamVjdDo6c19pbmZvID0geyAiUHJveHlS
dW50aW1lT2JqZWN0IiwgJlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShQcm94eVJ1bnRpbWVPYmplY3QpIH07CiAKIFByb3h5UnVudGltZU9iamVjdDo6UHJveHlS
dW50aW1lT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8UHJv
eHlJbnN0YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KHZtLCBzdHJ1Y3R1cmUs
IGluc3RhbmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDBmMmMwNWIuLjAyYjdlNjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxMyBAQAorMjAxNC0wNy0zMCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgU3RhdGljIGhhc2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNv
dXBsZWQgd2l0aCBhIFZNLgorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBNZXRob2QuY3BwOgorICAgICAgICAqIFdlYlByb2Nl
c3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcDoKKwogMjAxNC0wNy0zMCAgQ2FybG9z
IEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gUkVH
UkVTU0lPTihyMTcxNzQyKTogVGVzdCAvd2Via2l0Mi9XZWJLaXRXZWJWaWV3L2Rpc2FsbG93LW1v
ZGFsLWRpYWxvZ3MgZmFpbHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
UGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmNwcAppbmRleCA1NzZhZDNmLi4yMTQ4Mzhj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUv
SlNOUE1ldGhvZC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05l
dHNjYXBlL0pTTlBNZXRob2QuY3BwCkBAIC00Myw3ICs0Myw3IEBAIG5hbWVzcGFjZSBXZWJLaXQg
ewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNOUE1ldGhvZCk7
CiAKLWNvbnN0IENsYXNzSW5mbyBKU05QTWV0aG9kOjpzX2luZm8gPSB7ICJOUE1ldGhvZCIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNOUE1l
dGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU05QTWV0aG9kOjpzX2luZm8gPSB7ICJOUE1ldGhv
ZCIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNO
UE1ldGhvZCkgfTsKIAogSlNOUE1ldGhvZDo6SlNOUE1ldGhvZChKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgTlBJZGVudGlmaWVyIG5wSWRlbnRpZmll
cikKICAgICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFsT2JqZWN0LT52bSgpLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUv
SlNOUE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2Nh
cGUvSlNOUE9iamVjdC5jcHAKaW5kZXggMWFjNmZkYS4uY2VkOTMyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0
LmNwcApAQCAtNTUsNyArNTUsNyBAQCBzdGF0aWMgTlBJZGVudGlmaWVyIG5wSWRlbnRpZmllckZy
b21JZGVudGlmaWVyKFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PE5QSWRlbnRpZmllcj4oSWRlbnRpZmllclJlcDo6Z2V0KG5hbWUudXRmOCgpLmRhdGEo
KSkpOwogfQogCi1jb25zdCBDbGFzc0luZm8gSlNOUE9iamVjdDo6c19pbmZvID0geyAiTlBPYmpl
Y3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBPYmplY3Qp
IH07Citjb25zdCBDbGFzc0luZm8gSlNOUE9iamVjdDo6c19pbmZvID0geyAiTlBPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBPYmplY3QpIH07CiAKIEpT
TlBPYmplY3Q6OkpTTlBPYmplY3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0
dXJlKiBzdHJ1Y3R1cmUsIE5QUnVudGltZU9iamVjdE1hcCogb2JqZWN0TWFwLCBOUE9iamVjdCog
bnBPYmplY3QpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCks
IHN0cnVjdHVyZSkK
</data>
<flag name="review"
          id="260340"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235760</attachid>
            <date>2014-07-30 14:10:23 -0700</date>
            <delta_ts>2014-07-30 14:28:49 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-135421-2.diff</filename>
            <type>text/plain</type>
            <size>200965</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVdyYXBwZXJPYmplY3QubW0KaW5k
ZXggODk3ZTk2Zi4uMjEyZjFhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0FQSVdyYXBwZXJPYmplY3QubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0FQSVdyYXBwZXJPYmplY3QubW0KQEAgLTY4LDcgKzY4LDcgQEAgYm9vbCBKU0FQSVdyYXBwZXJP
YmplY3RIYW5kbGVPd25lcjo6aXNSZWFjaGFibGVGcm9tT3BhcXVlUm9vdHMoSlNDOjpIYW5kbGU8
SlNDOjoKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0lu
Zm8gSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQ
SVdyYXBwZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxs
YmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tP
YmplY3QpIH07CiAKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJ
V3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAKaW5kZXggYjVh
ZWVlNC4uNjVlNjZkYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja0NvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
Q2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJh
Y2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQ2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9Owog
CiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3RvcihKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNDbGFzc1JlZiBqc0Ns
YXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJhY2spCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAppbmRleCBh
ZmRhYzYzLi4wNDdmY2QwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrRnVuY3Rpb24uY3BwCkBAIC00Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2Fs
bGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2Fs
bGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2FsbGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KSB9OwogCiBKU0NhbGxiYWNrRnVuY3Rpb246OkpTQ2FsbGJhY2tGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdENhbGxBc0Z1bmN0aW9uQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmNwcAppbmRleCA1M2U1MWU3Li4yOWE2
MDI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5j
cHAKQEAgLTM0LDggKzM0LDggQEAKIG5hbWVzcGFjZSBKU0MgewogCiAvLyBEZWZpbmUgdGhlIHR3
byB0eXBlcyBvZiBKU0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29u
c3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+OjpzX2lu
Zm8gPSB7ICJDYWxsYmFja09iamVjdCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5m
byBKU0NhbGxiYWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tH
bG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
Q2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFj
a09iamVjdDxKU0Rlc3RydWN0aWJsZU9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNrT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0
KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9i
YWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2JhbE9iamVjdCIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIAogdGVtcGxh
dGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNr
T2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IGZhbHNlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXgg
YzYyYjczMS4uZWYxOTIyMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9P
YmpDQ2FsbGJhY2tGdW5jdGlvbi5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09i
akNDYWxsYmFja0Z1bmN0aW9uLm1tCkBAIC01MDEsNyArNTAxLDcgQEAgc3RhdGljIEpTT2JqZWN0
UmVmIG9iakNDYWxsYmFja0Z1bmN0aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNh
bGxlckNvbnQKICAgICByZXR1cm4gKEpTT2JqZWN0UmVmKXJlc3VsdDsKIH0KIAotY29uc3QgSlND
OjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNDYWxs
YmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rp
b246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE9iakNDYWxsYmFja0Z1bmN0aW9uKSB9OwogCiBPYmpDQ2FsbGJhY2tG
dW5jdGlvbjo6T2JqQ0NhbGxiYWNrRnVuY3Rpb24oSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3RDYWxsQXNGdW5jdGlvbkNhbGxiYWNrIGZ1bmN0
aW9uQ2FsbGJhY2ssIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0b3JDYWxsYmFjayBjb25zdHJ1Y3RD
YWxsYmFjaywgUGFzc093blB0cjxPYmpDQ2FsbGJhY2tGdW5jdGlvbkltcGw+IGltcGwpCiAgICAg
OiBCYXNlKHZtLCBnbG9iYWxPYmplY3QtPm9iamNDYWxsYmFja0Z1bmN0aW9uU3RydWN0dXJlKCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2MjM4NjcwLi5hYTgwMzU0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMDUgQEAKKzIwMTQtMDctMzAgIEFuZHJlYXMgS2xp
bmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIFN0YXRpYyBoYXNoIHRhYmxlcyBubyBs
b25nZXIgbmVlZCB0byBiZSBjb3VwbGVkIHdpdGggYSBWTS4KKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEzNTQyMT4KKworICAgICAgICBOb3cgdGhhdCB0aGUgc3RhdGljIGhhc2ggdGFi
bGVzIGFyZSB1c2luZyBjaGFyKiogaW5zdGVhZCBvZiBTdHJpbmdJbXBsKiosCisgICAgICAgIGl0
J3Mgbm8gbG9uZ2VyIG5lY2Vzc2FyeSB0byBtYWtlIHRoZW0gcGVyLVZNLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggcmVtb3ZlcyB0aGUgaG9vayBpbiBDbGFzc0luZm8gZm9yIHByb3ZpZGluZyB5b3Vy
IG93biBzdGF0aWMKKyAgICAgICAgaGFzaCB0YWJsZSBnZXR0ZXIuIEV2ZXJ5b25lIG5vdyB1c2Vz
IENsYXNzSW5mbzo6c3RhdGljUHJvcEhhc2hUYWJsZS4KKyAgICAgICAgTW9zdCBvZiB0aGlzIHBh
dGNoIGlzIHR3ZWFraW5nIENsYXNzSW5mbyBjb25zdHJ1Y3Rpb24gc2l0ZXMgdG8gcGFzcyBvbmUK
KyAgICAgICAgbGVzcyBudWxsIHBvaW50ZXIuCisKKyAgICAgICAgQWxzbyBzaW1wbGlmaWVkIExv
b2t1cC5oIHRvIHN0b3AgcmVxdWlyaW5nIEV4ZWNTdGF0ZS9WTSB0byBhY2Nlc3MgdGhlCisgICAg
ICAgIHN0YXRpYyBoYXNoIHRhYmxlcy4KKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBH
YXJlbi4KKworICAgICAgICAqIEFQSS9KU0FQSVdyYXBwZXJPYmplY3QubW06CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tG
dW5jdGlvbi5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwOgorICAgICAg
ICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAgICAgICAgKiBieXRlY29kZS9Vbmxp
bmtlZENvZGVCbG9jay5jcHA6CisgICAgICAgICogY3JlYXRlX2hhc2hfdGFibGU6CisgICAgICAg
ICogZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0pTSW5q
ZWN0ZWRTY3JpcHRIb3N0LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlw
dEhvc3RQcm90b3R5cGUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxs
RnJhbWUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwOgorICAgICAgICAqIGludGVycHJldGVyL0NhbGxGcmFtZS5oOgorICAgICAgICAo
SlNDOjpFeGVjU3RhdGU6OmFycmF5Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6RXhlY1N0YXRlOjpkYXRhVmlld1RhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6RXhlY1N0YXRlOjpkYXRlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3Rh
dGU6OmRhdGVDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjplcnJvclByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpnbG9iYWxPYmplY3RUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0
ZTo6anNvblRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1iZXJD
b25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1i
ZXJQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6b2Jq
ZWN0Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6
cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNT
dGF0ZTo6cmVnRXhwVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6OnJl
Z0V4cENvbnN0cnVjdG9yVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6
OnJlZ0V4cFByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRl
OjpzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVj
U3RhdGU6OnByb21pc2VDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKiBqc2Mu
Y3BwOgorICAgICAgICAqIHBhcnNlci9MZXhlci5oOgorICAgICAgICAoSlNDOjpLZXl3b3Jkczo6
aXNLZXl3b3JkKToKKyAgICAgICAgKEpTQzo6S2V5d29yZHM6OmdldEtleXdvcmQpOgorICAgICAg
ICAqIHJ1bnRpbWUvQXJndW1lbnRzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FyZ3VtZW50c0l0
ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJndW1lbnRzSXRlcmF0
b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlCdWZmZXJOZXV0ZXJpbmdX
YXRjaHBvaW50LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpBcnJheUNvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAg
ICAgICAqIHJ1bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpBcnJheVByb3RvdHlwZTo6Z2V0T3duUHJv
cGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jv
b2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpCb29sZWFuUHJvdG90eXBlOjpnZXRP
d25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAg
IChKU0M6OkNsYXNzSW5mbzo6aGFzU3RhdGljUHJvcGVydGllcyk6CisgICAgICAgIChKU0M6OkNs
YXNzSW5mbzo6cHJvcEhhc2hUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9Db25z
b2xlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5j
cHA6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
OjpEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGlt
ZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHA6
CisgICAgICAgIChKU0M6OkRhdGVQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAg
ICAgICogcnVudGltZS9FcnJvci5jcHA6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpFcnJvclByb3RvdHlw
ZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0V4Y2VwdGlvbkhlbHBl
cnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0dldHRlclNldHRlci5jcHA6CisgICAg
ICAgICogcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pT
QVBJVmFsdWVXcmFwcGVyLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQWN0aXZhdGlvbi5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FyZ3VtZW50c0l0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU0FycmF5QnVmZmVyVmlldy5jcHA6CisgICAgICAgICogcnVudGltZS9KU0FycmF5SXRlcmF0
b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQ29uc29sZS5jcHA6CisgICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAq
IHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVj
dC5jcHA6CisgICAgICAgIChKU0M6OkpTR2xvYmFsT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3Qp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXAuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU05hbWVTY29wZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT05PYmpl
Y3QuY3BwOgorICAgICAgICAoSlNDOjpKU09OT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpnZXRDbGFzc1By
b3BlcnR5TmFtZXMpOgorICAgICAgICAoSlNDOjpKU09iamVjdDo6cHV0KToKKyAgICAgICAgKEpT
Qzo6SlNPYmplY3Q6OmRlbGV0ZVByb3BlcnR5KToKKyAgICAgICAgKEpTQzo6SlNPYmplY3Q6OmZp
bmRQcm9wZXJ0eUhhc2hFbnRyeSk6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpyZWlmeVN0YXRp
Y0Z1bmN0aW9uc0ZvckRlbGV0ZSk6CisgICAgICAgICogcnVudGltZS9KU09iamVjdC5oOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNQcm9taXNlQ29uc3RydWN0b3I6Omdl
dE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU1Byb21pc2VQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICog
cnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJveHkuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZXRJdGVyYXRv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNUeXBl
ZEFycmF5UHJvdG90eXBlcy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlzLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNXZWFrTWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2l0aFNjb3BlLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL0xvb2t1cC5jcHA6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6
Y3JlYXRlVGFibGUpOgorICAgICAgICAqIHJ1bnRpbWUvTG9va3VwLmg6CisgICAgICAgIChKU0M6
Okhhc2hUYWJsZTo6aW5pdGlhbGl6ZUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SGFzaFRhYmxl
OjplbnRyeSk6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6YmVnaW4pOgorICAgICAgICAoSlND
OjpIYXNoVGFibGU6OmVuZCk6CisgICAgICAgIChKU0M6OmdldFN0YXRpY1Byb3BlcnR5U2xvdCk6
CisgICAgICAgIChKU0M6OmdldFN0YXRpY0Z1bmN0aW9uU2xvdCk6CisgICAgICAgIChKU0M6Omdl
dFN0YXRpY1ZhbHVlU2xvdCk6CisgICAgICAgIChKU0M6Omxvb2t1cFB1dCk6CisgICAgICAgICog
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9NYXBEYXRhLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hdGhPYmplY3QuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05h
bWVJbnN0YW5jZS5jcHA6CisgICAgICAgICogcnVudGltZS9OYW1lUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6TmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAg
KiBydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TnVtYmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOdW1iZXJDb25zdHJ1Y3Rvcjo6
Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6
CisgICAgICAgICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpO
dW1iZXJQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6Ok9iamVjdENvbnN0cnVjdG9yOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6UmVnRXhwQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6Cisg
ICAgICAgICogcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6UmVnRXhwT2JqZWN0OjpnZXRPd25Q
cm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6UmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAg
ICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3BhcnNlQXJyYXlWYWx1ZU1hcC5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJp
Y3RFdmFsQWN0aXZhdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ0NvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNs
b3QpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmU6OlN0cnVjdHVyZSk6CisgICAgICAgIChKU0M6OlN0
cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlvbik6CisgICAgICAgIChKU0M6OkNsYXNzSW5mbzo6aGFz
U3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMpOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Vk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorICAgICAgICAoSlNDOjpWTTo6flZNKToK
KyAgICAgICAgKiBydW50aW1lL1ZNLmg6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha01hcERhdGEuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvV2Vha01hcFByb3RvdHlwZS5jcHA6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6
CisKIDIwMTQtMDctMjkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW1dpbl0gTW9kaWZ5IHZlcnNpb24gbnVtYmVyaW5nIHNjaGVtZSB0byBzdXBwb3J0IDUt
dHVwbGUgdmVyc2lvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZENvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suY3BwCmluZGV4IDVjMmNjNWYuLmY1YTc5YjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcApA
QCAtNDIsMTIgKzQyLDEyIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25F
eGVjdXRhYmxlIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9u
RXhlY3V0YWJsZSkgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVu
bGlua2VkQ29kZUJsb2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29kZUJs
b2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Ci1j
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxp
bmtlZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJs
b2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5m
byA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07Citjb25zdCBD
bGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2Vk
RnVuY3Rpb25FeGVjdXRhYmxlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6
c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkQ29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29k
ZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Citj
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtl
ZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2NrKSB9
OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5mbyA9IHsg
IlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07CiAKIHN0YXRpYyBVbmxpbmtl
ZEZ1bmN0aW9uQ29kZUJsb2NrKiBnZW5lcmF0ZUZ1bmN0aW9uQ29kZUJsb2NrKFZNJiB2bSwgVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNvZGUmIHNv
dXJjZSwgQ29kZVNwZWNpYWxpemF0aW9uS2luZCBraW5kLCBEZWJ1Z2dlck1vZGUgZGVidWdnZXJN
b2RlLCBQcm9maWxlck1vZGUgcHJvZmlsZXJNb2RlLCBVbmxpbmtlZEZ1bmN0aW9uS2luZCBmdW5j
dGlvbktpbmQsIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzLCBQYXJzZXJFcnJvciYgZXJyb3IpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUKaW5kZXggODhlODQ0Ny4uN2Fm
NTYzOCAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2NyZWF0ZV9oYXNoX3RhYmxl
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9jcmVhdGVfaGFzaF90YWJsZQpAQCAtMzIwLDcg
KzMyMCw3IEBAIHN1YiBvdXRwdXQoKSB7CiAgICAgICAgICRpKys7CiAgICAgfQogICAgIHByaW50
ICJ9O1xuXG4iOwotICAgIHByaW50ICJleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSAkbmFt
ZSA9XG4iOworICAgIHByaW50ICJKU19FWFBPUlRfUFJJVkFURSBleHRlcm4gY29uc3Qgc3RydWN0
IEhhc2hUYWJsZSAkbmFtZSA9XG4iOwogICAgIHByaW50ICIgICAgXHsgJHBhY2tlZFNpemUsICRj
b21wYWN0SGFzaFNpemVNYXNrLCAkaGFzU2V0dGVyLCAkbmFtZUVudHJpZXMsIDAsICRuYW1lSW5k
ZXggXH07XG4iOwogICAgIHByaW50ICJ9IC8vIG5hbWVzcGFjZVxuIjsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcAppbmRleCA3NmZmMzNi
Li45NTdjYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVi
dWdnZXJTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVn
Z2VyU2NvcGUuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRGVidWdnZXJTY29wZSk7CiAKLWNvbnN0
IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7ICJEZWJ1Z2dlclNjb3BlIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShEZWJ1Z2dlclNjb3BlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIERlYnVnZ2VyU2NvcGU6OnNfaW5mbyA9IHsgIkRlYnVnZ2VyU2NvcGUi
LCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07
CiAKIERlYnVnZ2VyU2NvcGU6OkRlYnVnZ2VyU2NvcGUoVk0mIHZtKQogICAgIDogSlNOb25GaW5h
bE9iamVjdCh2bSwgdm0uZGVidWdnZXJTY29wZVN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5j
cHAKaW5kZXggMGU5NTU1Zi4uYjU4NjAxYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTQ1LDcgKzQ1
LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRT
Y3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2NyaXB0SG9zdCkgfTsKIAogSlNJbmplY3RlZFNj
cmlwdEhvc3Q6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFBhc3NSZWZQdHI8SW5qZWN0ZWRTY3JpcHRIb3N0PiBpbXBsKQogICAgIDogSlNEZXN0cnVj
dGlibGVPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5j
cHAKaW5kZXggYjA3OTcwYS4uYWI5MTVlYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlw
ZS5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVGdW5jdGlvbklzSFRNTEEKIAogc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5
cGVBdHRyaWJ1dGVFdmFsdWF0ZShFeGVjU3RhdGUqKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5q
ZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3Qi
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3JpcHRIb3N0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFzZTo6c19pbmZv
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAK
aW5kZXggMDhmZDYxOC4uNDllMWI3MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcApAQCAtMzgsNyArMzgs
NyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlw
dENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxG
cmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1lKSB9OwogCiBKU0phdmFT
Y3JpcHRDYWxsRnJhbWU6OkpTSmF2YVNjcmlwdENhbGxGcmFtZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBQYXNzUmVmUHRyPEphdmFTY3JpcHRDYWxsRnJhbWU+IGltcGwpCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGUuY3BwCmluZGV4IGY3ZmMyMWUuLjQwOWM2OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxG
cmFtZVByb3RvdHlwZS5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNKYXZhU2NyaXB0Q2FsbEZyYW1lQ29uc3RhbnRXSVRIX1NDT1BFKEV4
ZWMKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxG
cmFtZUNvbnN0YW50Q0xPU1VSRV9TQ09QRShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxGcmFtZUNvbnN0YW50Q0FUQ0hfU0NP
UEUoRXhlY1N0YXRlKik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZv
LCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZSkgfTsKIAogI2RlZmlu
ZSBKU0NfTkFUSVZFX05PTl9JTkRFWF9BQ0NFU1NPUihqc05hbWUsIGNwcE5hbWUsIGF0dHJpYnV0
ZXMpIFwKICAgICB7IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnBy
ZXRlci9DYWxsRnJhbWUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9DYWxs
RnJhbWUuaAppbmRleCA2M2Q2YTQ4Li44MDEzMWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ludGVycHJldGVyL0NhbGxGcmFtZS5oCkBAIC04NywyNyArODcsNiBAQCBuYW1lc3BhY2Ug
SlNDICB7CiAgICAgICAgIEludGVycHJldGVyKiBpbnRlcnByZXRlcigpIHsgcmV0dXJuIHZtKCku
aW50ZXJwcmV0ZXI7IH0KICAgICAgICAgSGVhcCogaGVhcCgpIHsgcmV0dXJuICZ2bSgpLmhlYXA7
IH0KIAotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBhcnJheUNvbnN0cnVjdG9yVGFi
bGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYXJyYXlDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGFycmF5UHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0uYXJyYXlQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlJiBib29sZWFuUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYm9vbGVh
blByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGFW
aWV3VGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0YVZpZXdUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBkYXRlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0
ZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGVDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLmRhdGVDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAg
ICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGVycm9yUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7
IHJldHVybiAqdm0uZXJyb3JQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlJiBnbG9iYWxPYmplY3RUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5nbG9iYWxP
YmplY3RUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBqc29uVGFibGUo
Vk0mIHZtKSB7IHJldHVybiAqdm0uanNvblRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUmIG51bWJlckNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ubnVt
YmVyQ29uc3RydWN0b3JUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBu
dW1iZXJQcm90b3R5cGVUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5udW1iZXJQcm90b3R5cGVU
YWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBvYmplY3RDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLm9iamVjdENvbnN0cnVjdG9yVGFibGU7IH0KLSAg
ICAgICAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cFRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZt
LnJlZ0V4cFRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cENv
bnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ucmVnRXhwQ29uc3RydWN0b3JUYWJs
ZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiByZWdFeHBQcm90b3R5cGVUYWJs
ZShWTSYgdm0pIHsgcmV0dXJuICp2bS5yZWdFeHBQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKFZNJiB2bSkgeyBy
ZXR1cm4gKnZtLnN0cmluZ0NvbnN0cnVjdG9yVGFibGU7IH0KLSNpZiBFTkFCTEUoUFJPTUlTRVMp
Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHByb21pc2VQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcm9taXNlUHJvdG90eXBlVGFibGU7IH0KLSAgICAgICAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZSYgcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0ucHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7IH0KLSNlbmRpZgogCiAgICAgICAgIHN0
YXRpYyBDYWxsRnJhbWUqIGNyZWF0ZShSZWdpc3RlciogY2FsbEZyYW1lQmFzZSkgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8Q2FsbEZyYW1lKj4oY2FsbEZyYW1lQmFzZSk7IH0KICAgICAgICAgUmVnaXN0
ZXIqIHJlZ2lzdGVycygpIHsgcmV0dXJuIHRoaXM7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXgg
MjA0YjhiMi4uMTE4NWVjZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTk0LDYgKzk0LDEwIEBA
CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogdXNpbmcgbmFtZXNwYWNlIFdURjsKIAorbmFtZXNwYWNl
IEpTQyB7CitleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSBnbG9iYWxPYmplY3RUYWJsZTsK
K30KKwogbmFtZXNwYWNlIHsKIAogTk9fUkVUVVJOX1dJVEhfVkFMVUUgc3RhdGljIHZvaWQganNj
RXhpdChpbnQgc3RhdHVzKQpAQCAtNDA1LDExICs0MDksMTEgQEAgcHJpdmF0ZToKICAgICBWZWN0
b3I8aW50PiBtX3ZlY3RvcjsKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8g
PSB7ICJFbGVtZW50IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
bGVtZW50KSB9OwotY29uc3QgQ2xhc3NJbmZvIE1hc3F1ZXJhZGVyOjpzX2luZm8gPSB7ICJNYXNx
dWVyYWRlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFzcXVl
cmFkZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZCYXNl
OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkgfTsKLWNvbnN0IENsYXNz
SW5mbyBJbXB1cmVHZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVyZUdldHRlciIsICZCYXNlOjpzX2lu
Zm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW1wdXJlR2V0dGVyKSB9OwotY29uc3QgQ2xh
c3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25zdCBD
bGFzc0luZm8gRWxlbWVudDo6c19pbmZvID0geyAiRWxlbWVudCIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXNxdWVy
YWRlcjo6c19pbmZvID0geyAiTWFzcXVlcmFkZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE1hc3F1ZXJhZGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIFJvb3Q6OnNfaW5m
byA9IHsgIlJvb3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3Qp
IH07Citjb25zdCBDbGFzc0luZm8gSW1wdXJlR2V0dGVyOjpzX2luZm8gPSB7ICJJbXB1cmVHZXR0
ZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEltcHVyZUdldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJh
eSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogCiBFbGVtZW50SGFuZGxlT3duZXIqIEVsZW1lbnQ6OmhhbmRsZU93bmVyKCkKIHsKQEAgLTY0
Niw3ICs2NTAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEds
b2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAi
Z2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmplY3RUYWJsZSwgQ1JF
QVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiBjb25zdCBHbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSBHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxv
d3NBY2Nlc3NGcm9tLCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZv
LCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwg
MCwgJnNob3VsZEludGVycnVwdFNjcmlwdEJlZm9yZVRpbWVvdXQgfTsKIAogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL0xleGVyLmgKaW5kZXggMDcyNDFhZS4uM2ZkZDY2MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvTGV4ZXIuaApAQCAtMzcsMTIgKzM3LDEyIEBAIGNsYXNzIEtleXdvcmRz
IHsKIHB1YmxpYzoKICAgICBib29sIGlzS2V5d29yZChjb25zdCBJZGVudGlmaWVyJiBpZGVudCkg
Y29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShtX3ZtLCBp
ZGVudCk7CisgICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShpZGVudCk7CiAgICAg
fQogICAgIAogICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBnZXRLZXl3b3JkKGNvbnN0IElkZW50
aWZpZXImIGlkZW50KSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxl
LmVudHJ5KG1fdm0sIGlkZW50KTsKKyAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxlLmVudHJ5
KGlkZW50KTsKICAgICB9CiAgICAgCiAgICAgfktleXdvcmRzKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bcmd1bWVudHMuY3BwCmluZGV4IGIyMzJkOTkuLmI0MDZiYjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzLmNwcApAQCAtMzgsNyArMzgs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJn
dW1lbnRzIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcmd1bWVudHMp
IH07CiAKIHZvaWQgQXJndW1lbnRzOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZp
c2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Bcmd1bWVudHNJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCmluZGV4IGFlNjIx
YzcuLmRmN2MxMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
Z3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0
b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19p
bmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgQXJndW1l
bnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwCmlu
ZGV4IDE1MTQ2MzAuLmQ3OWNjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bcmd1bWVudHNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcg
KzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6
c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJh
dG9yKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJn
dW1lbnRzSXRlcmF0b3JQcm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hw
b2ludC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUJ1ZmZlck5ldXRl
cmluZ1dhdGNocG9pbnQuY3BwCmluZGV4IGE2NWE1NDIuLmNhMThiZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2lu
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlCdWZmZXJOZXV0
ZXJpbmdXYXRjaHBvaW50LmNwcApAQCAtMzEsNyArMzEsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAK
IGNvbnN0IENsYXNzSW5mbyBBcnJheUJ1ZmZlck5ldXRlcmluZ1dhdGNocG9pbnQ6OnNfaW5mbyA9
IHsKLSAgICAiQXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwgMCwKKyAgICAi
QXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwKICAgICBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2ludCkKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDQ0
MjkzMC4uY2ZiNjRlZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAK
IFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBcnJheUNvbnN0cnVjdG9y
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEFycmF5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0YXRlOjphcnJheUNvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9N
RVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBBcnJheUNv
bnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gYXJyYXlDb25zdHJ1Y3RvclRhYmxlCkBAIC02OCw3ICs2
OCw3IEBAIHZvaWQgQXJyYXlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcnJh
eVByb3RvdHlwZSogYXJyYXlQcm90b3R5cGUpCiAKIGJvb2wgQXJyYXlDb25zdHJ1Y3Rvcjo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBn
ZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgRXhlY1N0YXRlOjph
cnJheUNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxBcnJheUNvbnN0cnVjdG9y
Kj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVu
Y3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIGFycmF5Q29uc3RydWN0b3JUYWJsZSwg
anNDYXN0PEFycmF5Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwog
fQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzQ1MWRiNi4uMjkx
YzVmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVy
YXRvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFycmF5SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5SXRlcmF0b3JDb25zdHJ1Y3RvcikgfTsKIAogdm9p
ZCBBcnJheUl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclBy
b3RvdHlwZS5jcHAKaW5kZXggZWNjNTdjYi4uYzg4MDBlMyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAg
LTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJh
eUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJB
cnJheSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJy
YXlJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgYXJyYXlJdGVyYXRvclByb3RvdHlwZUl0ZXJhdGUoRXhlY1N0YXRlKik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCBk
OGU0OGJhLi5jMzg2YWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlQcm90b3R5cGUuY3BwCkBAIC04Nyw3ICs4Nyw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBp
c051bWVyaWNDb21wYXJlRnVuY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIGZ1bmN0aW9u
LCBDCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheVByb3RvdHlwZSAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheVByb3Rv
dHlwZTo6c19pbmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6
YXJyYXlQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheVByb3RvdHlwZSl9
OworY29uc3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7IkFycmF5IiwgJkpT
QXJyYXk6OnNfaW5mbywgJmFycmF5UHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJyYXlQcm90b3R5cGUpfTsKIAogLyogU291cmNlIGZvciBBcnJheVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGFycmF5UHJvdG90eXBlVGFibGUgMTYKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEFy
cmF5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiAKIGJvb2wgQXJyYXlQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEpTQXJyYXk+KGV4ZWMsIEV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEFycmF5UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsK
KyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTQXJyYXk+KGV4ZWMsIGFycmF5UHJv
dG90eXBlVGFibGUsIGpzQ2FzdDxBcnJheVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFt
ZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheSBG
dW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYjMxNmJl
MS4uMGEyNTA3NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9v
bGVhbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVj
dG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xl
YW5Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShCb29sZWFuQ29uc3RydWN0b3IpIH07CiAKIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6Qm9vbGVhbkNv
bnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRlcm5hbEZ1
bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Jvb2xlYW5PYmplY3QuY3BwCmluZGV4IDg5ZmI4M2EuLjI4Y2FkNmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoQm9vbGVhbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFuT2JqZWN0Ojpz
X2luZm8gPSB7ICJCb29sZWFuIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVh
bk9iamVjdDo6c19pbmZvID0geyAiQm9vbGVhbiIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0
OjpCb29sZWFuT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dy
YXBwZXJPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5jcHAKaW5kZXggNTYxODJiYS4uYmU3MzdhZSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKQEAgLTM5LDcgKzM5LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Ym9vbGVhblByb3RvRnVuY1ZhbHVlT2YoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIs
ICZCb29sZWFuT2JqZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRh
YmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIsICZCb29sZWFuT2Jq
ZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
Qm9vbGVhblByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gYm9vbGVhblByb3RvdHlwZVRhYmxlCkBAIC02NSw3ICs2NSw3IEBAIHZvaWQg
Qm9vbGVhblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCop
CiAKIGJvb2wgQm9vbGVhblByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBv
YmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVy
dHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8Qm9vbGVh
bk9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpib29sZWFuUHJvdG90eXBlVGFibGUoZXhlYy0+dm0o
KSksIGpzQ2FzdDxCb29sZWFuUHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90
KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJvb2xlYW5PYmplY3Q+KGV4ZWMs
IGJvb2xlYW5Qcm90b3R5cGVUYWJsZSwganNDYXN0PEJvb2xlYW5Qcm90b3R5cGUqPihvYmplY3Qp
LCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAppbmRleCBmN2NhYmU1Li40ZmQ0MzA5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaApAQCAtMTU0LDI1ICsxNTQs
NiBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICAvLyBudWxscHRyaWYgdGhlcmUgaXMgbm9uZS4K
ICAgICBjb25zdCBDbGFzc0luZm8qIHBhcmVudENsYXNzOwogCi0gICAgLy8gU3RhdGljIGhhc2gt
dGFibGUgb2YgcHJvcGVydGllcy4KLSAgICAvLyBGb3IgY2xhc3NlcyB0aGF0IGNhbiBiZSB1c2Vk
IGZyb20gbXVsdGlwbGUgdGhyZWFkcywgaXQgaXMgYWNjZXNzZWQgdmlhIGEgZ2V0dGVyIGZ1bmN0
aW9uCi0gICAgLy8gdGhhdCB3b3VsZCB0eXBpY2FsbHkgcmV0dXJuIGEgcG9pbnRlciB0byBhIHRo
cmVhZC1zcGVjaWZpYyB2YWx1ZS4KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
RXhlY1N0YXRlKiBleGVjKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hU
YWJsZUdldHRlckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFi
bGVHZXR0ZXJGdW5jdGlvbihleGVjLT52bSgpKTsKLQotICAgICAgICByZXR1cm4gc3RhdGljUHJv
cEhhc2hUYWJsZTsKLSAgICB9Ci0KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
Vk0mIHZtKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hUYWJsZUdldHRl
ckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJG
dW5jdGlvbih2bSk7Ci0KLSAgICAgICAgcmV0dXJuIHN0YXRpY1Byb3BIYXNoVGFibGU7Ci0gICAg
fQotCiAgICAgYm9vbCBpc1N1YkNsYXNzT2YoY29uc3QgQ2xhc3NJbmZvKiBvdGhlcikgY29uc3QK
ICAgICB7CiAgICAgICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9
IGNpLT5wYXJlbnRDbGFzcykgewpAQCAtMTg1LDE3ICsxNjYsMTUgQEAgc3RydWN0IENsYXNzSW5m
byB7CiAgICAgYm9vbCBoYXNTdGF0aWNQcm9wZXJ0aWVzKCkgY29uc3QKICAgICB7CiAgICAgICAg
IGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9IGNpLT5wYXJlbnRDbGFz
cykgewotICAgICAgICAgICAgaWYgKGNpLT5zdGF0aWNQcm9wSGFzaFRhYmxlIHx8IGNpLT5jbGFz
c1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikKKyAgICAgICAgICAgIGlmIChjaS0+c3RhdGlj
UHJvcEhhc2hUYWJsZSkKICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgYm9vbCBoYXNTdGF0aWNTZXR0ZXJP
clJlYWRvbmx5UHJvcGVydGllcyhWTSYpIGNvbnN0OworICAgIGJvb2wgaGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSBjb25zdDsKIAogICAgIGNvbnN0IEhhc2hUYWJsZSogc3Rh
dGljUHJvcEhhc2hUYWJsZTsKLSAgICB0eXBlZGVmIGNvbnN0IEhhc2hUYWJsZSYgKCpDbGFzc1By
b3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikoVk0mKTsKLSAgICBjb25zdCBDbGFzc1Byb3BIYXNo
VGFibGVHZXR0ZXJGdW5jdGlvbiBjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbjsKIAog
ICAgIE1ldGhvZFRhYmxlIG1ldGhvZFRhYmxlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db25zb2xlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5cGUuY3BwCmluZGV4IGEyYTFlYzYuLmU5NzUxZWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gQ29uc29sZVByb3RvdHlwZTo6c19pbmZvID0geyAiQ29uc29sZVByb3RvdHlwZSIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBDb25zb2xlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJDb25zb2xl
UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDb25zb2xl
UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
b2xlUHJvdG9GdW5jRGVidWcoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zb2xlUHJvdG9GdW5jRXJyb3IoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcAppbmRl
eCA5MmIwMjE5Li4wZjllMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0N1c3RvbUdldHRlclNldHRlci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShDdXN0b21H
ZXR0ZXJTZXR0ZXIpOwogCi1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVyOjpzX2lu
Zm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEN1c3RvbUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlclNldHRlciIsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB2b2lkIGNhbGxDdXN0b21TZXR0ZXIoRXhl
Y1N0YXRlKiBleGVjLCBKU1ZhbHVlIGN1c3RvbUdldHRlclNldHRlciwgSlNPYmplY3QqIGJhc2Us
IEpTVmFsdWUgdGhpc1ZhbHVlLCBKU1ZhbHVlIHZhbHVlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDc2YTMxYi4uNzQ4
ZTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuY3BwCkBAIC02Niw3ICs2Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGRhdGVVVEMoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5h
bEZ1bmN0aW9uOjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENS
RUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIERh
dGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCAmZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIERhdGVDb25zdHJ1Y3Rvci5sdXQuaAogQGJl
Z2luIGRhdGVDb25zdHJ1Y3RvclRhYmxlCkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBEYXRlQ29u
c3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgRGF0ZVByb3RvdHlwZSogZGF0ZVByb3Rv
dHlwZSkKIAogYm9vbCBEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVj
dCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PElu
dGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUoZXhl
Yy0+dm0oKSksIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUs
IHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlv
bj4oZXhlYywgZGF0ZUNvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihv
YmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyBFQ01BIDE1LjkuMwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggZDAzMTdj
Mi4uYzE3NDlmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVJbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUlu
c3RhbmNlLmNwcApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgV1RGOwogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0geyJE
YXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0g
eyJEYXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OwogCiBEYXRlSW5zdGFuY2U6OkRhdGVJbnN0YW5jZShWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmlu
ZGV4IDljZDczNmEuLjBmYzkzZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC00MjUsNyArNDI1LDcgQEAgc3RhdGljIGJvb2wgZmls
bFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEV4ZWNTdGF0ZSAqZXhlYywgaW50IG1heEFyZ3MsIGRv
dWJsZSAqbXMKICAgICByZXR1cm4gb2s7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90
eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNlOjpzX2luZm8sIDAsIEV4ZWNTdGF0
ZTo6ZGF0ZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVQcm90b3R5cGUpfTsKK2NvbnN0
IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNl
OjpzX2luZm8sICZkYXRlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZVByb3RvdHlwZSl9
OwogCiAvKiBTb3VyY2UgZm9yIERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGFibGUK
QEAgLTQ5NSw3ICs0OTUsNyBAQCB2b2lkIERhdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIERhdGVQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBFeGVjU3RhdGU6OmRhdGVUYWJsZShleGVjLT52
bSgpKSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGRhdGVU
YWJsZSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiAvLyBGdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNw
cAppbmRleCBjN2FjM2E1Li45MzBiNmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FcnJvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RXJyb3IuY3BwCkBAIC0xNjAsNyArMTYwLDcgQEAgSlNPYmplY3QqIHRocm93U3ludGF4RXJyb3Io
RXhlY1N0YXRlKiBleGVjKQogICAgIHJldHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4
ZWMsIGNyZWF0ZVN5bnRheEVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgiU3ludGF4IGVycm9yIikp
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJp
Y3RNb2RlVHlwZUVycm9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RNb2RlVHlwZUVycm9yRnVuY3Rpb24p
IH07CiAKIHZvaWQgU3RyaWN0TW9kZVR5cGVFcnJvckZ1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCog
Y2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKaW5kZXggOWFjYmM0Yy4uNmRhMWE0MiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBFcnJvckNvbnN0cnVjdG9yOjpF
cnJvckNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRl
cm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCmluZGV4IDQyZTdjNTMuLjc0ZjUzZTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCkBAIC0yOCw3
ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoRXJyb3JJbnN0YW5jZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvckluc3Rh
bmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
cnJvckluc3RhbmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKIAogRXJyb3JJbnN0
YW5jZTo6RXJyb3JJbnN0YW5jZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDog
SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IDA4MGI5NzUuLmNmOGZmMmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHAK
QEAgLTQxLDcgKzQxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXJy
b3JQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiRXJyb3IiLCAmRXJyb3JJ
bnN0YW5jZTo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OmVycm9yUHJvdG90eXBlVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gRXJyb3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkVycm9ySW5zdGFuY2U6OnNfaW5mbywgJmVy
cm9yUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgRXJyb3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBlcnJvclByb3Rv
dHlwZVRhYmxlCkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgRXJyb3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIEVycm9yUHJvdG90eXBlOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJu
IGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBFeGVjU3RhdGU6OmVy
cm9yUHJvdG90eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxFcnJvclByb3RvdHlwZSo+KG9i
amVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9u
U2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBlcnJvclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8RXJy
b3JQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0
aW9uSGVscGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25I
ZWxwZXJzLmNwcAppbmRleCA2YTY2OGQ0Li42YjMzYzhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcApAQCAtNDQsNyArNDQsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJ
QkxFKFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBUZXJtaW5h
dGVkRXhlY3V0aW9uRXJyb3I6OnNfaW5mbyA9IHsgIlRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvciIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVybWluYXRlZEV4ZWN1
dGlvbkVycm9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcjo6
c19pbmZvID0geyAiVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yIiwgJkJhc2U6OnNfaW5mbywgMCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZXJtaW5hdGVkRXhlY3V0aW9uRXJyb3IpIH07CiAKIEpTVmFs
dWUgVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yOjpkZWZhdWx0VmFsdWUoY29uc3QgSlNPYmplY3Qq
LCBFeGVjU3RhdGUqIGV4ZWMsIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgaGludCkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5jcHAKaW5kZXggZmY5ZjYxNC4u
MTE4YTEwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0
YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5j
cHAKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAiRXhlY3V0YWJsZSIsIDAsIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0
YWJsZUJhc2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGUiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEV4ZWN1dGFibGVCYXNlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZvaWQgRXhlY3V0YWJs
ZUJhc2U6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQpAQCAtNzgsNyArNzgsNyBAQCBJbnRyaW5zaWMg
RXhlY3V0YWJsZUJhc2U6OmludHJpbnNpYygpIGNvbnN0CiB9CiAjZW5kaWYKIAotY29uc3QgQ2xh
c3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAm
RXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9
IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShOYXRpdmVFeGVjdXRhYmxlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZv
aWQgTmF0aXZlRXhlY3V0YWJsZTo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCkBAIC05NCw3ICs5NCw3
IEBAIEludHJpbnNpYyBOYXRpdmVFeGVjdXRhYmxlOjppbnRyaW5zaWMoKSBjb25zdAogfQogI2Vu
ZGlmCiAKLWNvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJTY3Jp
cHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVj
dXRhYmxlOjpzX2luZm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKIAogI2lm
IEVOQUJMRShKSVQpCiB2b2lkIFNjcmlwdEV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxs
KQpAQCAtMzI1LDcgKzMyNSw3IEBAIEpTT2JqZWN0KiBTY3JpcHRFeGVjdXRhYmxlOjpwcmVwYXJl
Rm9yRXhlY3V0aW9uSW1wbCgKICAgICByZXR1cm4gMDsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEV2
YWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJFdmFsRXhlY3V0YWJsZSIsICZTY3JpcHRFeGVjdXRh
YmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUpIH07
Citjb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkV2YWxFeGVjdXRh
YmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
dmFsRXhlY3V0YWJsZSkgfTsKIAogRXZhbEV4ZWN1dGFibGUqIEV2YWxFeGVjdXRhYmxlOjpjcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaXNJblN0
cmljdENvbnRleHQpIAogewpAQCAtMzU3LDcgKzM1Nyw3IEBAIHZvaWQgRXZhbEV4ZWN1dGFibGU6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogICAgIHN0YXRpY19jYXN0PEV2YWxFeGVjdXRhYmxlKj4o
Y2VsbCktPkV2YWxFeGVjdXRhYmxlOjp+RXZhbEV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSIs
ICZTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJv
Z3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1dGFibGU6OnNf
aW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFtRXhlY3V0YWJsZSkgfTsKIAogUHJvZ3JhbUV4
ZWN1dGFibGU6OlByb2dyYW1FeGVjdXRhYmxlKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgU291cmNl
Q29kZSYgc291cmNlKQogICAgIDogU2NyaXB0RXhlY3V0YWJsZShleGVjLT52bSgpLnByb2dyYW1F
eGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCBleGVjLCBzb3VyY2UsIGZhbHNlKQpAQCAtMzY5LDcg
KzM2OSw3IEBAIHZvaWQgUHJvZ3JhbUV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQog
ICAgIHN0YXRpY19jYXN0PFByb2dyYW1FeGVjdXRhYmxlKj4oY2VsbCktPlByb2dyYW1FeGVjdXRh
YmxlOjp+UHJvZ3JhbUV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9u
RXhlY3V0YWJsZTo6c19pbmZvID0geyAiRnVuY3Rpb25FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1
dGFibGU6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFi
bGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJG
dW5jdGlvbkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKIAogRnVuY3Rpb25FeGVjdXRhYmxl
OjpGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHZtLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiB1bmxpbmtlZEV4ZWN1dGFibGUsIHVuc2lnbmVkIGZp
cnN0TGluZSwgdW5zaWduZWQgbGFzdExpbmUsIHVuc2lnbmVkIHN0YXJ0Q29sdW1uLCB1bnNpZ25l
ZCBlbmRDb2x1bW4sIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzKQogICAgIDogU2NyaXB0RXhlY3V0
YWJsZSh2bS5mdW5jdGlvbkV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIHZtLCBzb3VyY2UsIHVu
bGlua2VkRXhlY3V0YWJsZS0+aXNJblN0cmljdENvbnRleHQoKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggM2Zj
NzI0Mi4uMTBjYWIxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvbkNv
bnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OwogCiBGdW5jdGlvbkNvbnN0cnVjdG9y
OjpGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKaW5kZXggZWI1Nzg0MC4uM2My
NTZmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Q
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9uUHJvdG90eXBlKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Qcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rp
b25Qcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJvdG9GdW5jQmluZChFeGVjU3RhdGUqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDNkZTk1NmEu
LjFjODk3ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRl
clNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0
dGVyLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEdldHRl
clNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZXR0ZXJTZXR0ZXIpIH07CiAKIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxkcmVu
KEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwCmluZGV4IDI0NTE5YzYu
LjZmNTNiYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSW50ZXJuYWxGdW5jdGlvbik7CiAK
LWNvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5j
dGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJuYWxGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNEZXN0cnVjdGlibGVPYmplY3Qodm0sIHN0cnVj
dHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFs
dWVXcmFwcGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFsdWVX
cmFwcGVyLmNwcAppbmRleCA4MGM3NjI2Li42ZTViNTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBUElWYWx1ZVdyYXBwZXIuY3BwCkBAIC0yOSw2ICsyOSw2
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoSlNBUElWYWx1ZVdyYXBwZXIpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBUElWYWx1ZVdy
YXBwZXI6OnNfaW5mbyA9IHsgIkFQSSBXcmFwcGVyIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0FQSVZhbHVlV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQVBJVmFsdWVXcmFwcGVyKSB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FjdGl2YXRpb24uY3BwCmluZGV4IDgyOTY1MDYuLjZj
MDBiMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZh
dGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9u
LmNwcApAQCAtMzgsNyArMzgsNyBAQCB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQWN0aXZhdGlvbjo6c19pbmZvID0geyAiSlNBY3Rp
dmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FjdGl2
YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJKU0Fj
dGl2YXRpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQWN0aXZh
dGlvbikgfTsKIAogdm9pZCBKU0FjdGl2YXRpb246OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxs
LCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJndW1lbnRzSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJdGVyYXRvci5jcHAKaW5kZXggYjkwMmEzZC4uM2VmYWIy
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVu
dHNJdGVyYXRvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcmd1bWVudHNJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcmd1
bWVudHNJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpz
X2luZm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcmd1bWVudHNJdGVyYXRvcikgfTsKIAogdm9pZCBKU0FyZ3VtZW50c0l0
ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEFyZ3VtZW50cyogYXJndW1lbnRzKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAppbmRleCBmNGJjMDkzLi44
ODU3ZGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcApAQCAt
NDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEpTQXJyYXkpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheSl9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9
IHsiQXJyYXkiLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXkpfTsKIAogQnV0dGVyZmx5KiBjcmVhdGVBcnJheUJ1dHRlcmZseUluRGljdGlv
bmFyeUluZGV4aW5nTW9kZSgKICAgICBWTSYgdm0sIEpTQ2VsbCogaW50ZW5kZWRPd25lciwgdW5z
aWduZWQgaW5pdGlhbExlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheUJ1ZmZlci5jcHAKaW5kZXggNjEwNWJkNi4uMzY4YjFlMyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlcjo6c19p
bmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OworICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OwogCiBKU0FycmF5
QnVmZmVyOjpKU0FycmF5QnVmZmVyKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NS
ZWZQdHI8QXJyYXlCdWZmZXI+IGFycmF5QnVmZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZl
ckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlC
dWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjJmNzljOC4uZGMzMGU3MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBKU0Mgewogc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlCdWZmZXJGdW5jSXNWaWV3KEV4ZWNTdGF0ZSop
OwogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwKKyAgICAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCAwLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yKQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcAppbmRleCA4ZWYzYWEzLi41YjUyZmM1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVm
ZmVyUHJvdG90eXBlLmNwcApAQCAtNzAsNyArNzAsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBhcnJheUJ1ZmZlclByb3RvRnVuY1NsaWNlKEV4ZWNTdGF0ZSogZXhlYykK
IH0KIAogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsK
LSAgICAiQXJyYXlCdWZmZXJQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQcm90b3R5cGUpCisgICAgIkFycmF5QnVmZmVyUHJv
dG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVm
ZmVyUHJvdG90eXBlKQogfTsKIAogSlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6SlNBcnJheUJ1ZmZl
clByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwCmluZGV4IGRhMGNk
ZTIuLmM0NGFiNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
QXJyYXlCdWZmZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyVmlldy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0Mgewog
CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlclZpZXc6OnNfaW5mbyA9IHsKLSAgICAiQXJy
YXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0FycmF5QnVmZmVyVmlldykKKyAgICAiQXJyYXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlC
dWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5k
ZXggYzYyMjBmNS4uNzEwODhlNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5SXRlcmF0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fy
cmF5SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8g
PSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0FycmF5SXRlcmF0b3IpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGFycmF5SXRlcmF0b3JOZXh0S2V5KEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlJdGVyYXRvck5leHRWYWx1ZShFeGVjU3RhdGUqKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3BwCmlu
ZGV4IGVmNzljNDIuLjhmYzRhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQm91bmRG
dW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0JvdW5kRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JvdW5k
RnVuY3Rpb24pIH07CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYm91bmRGdW5jdGlv
bkNhbGwoRXhlY1N0YXRlKiBleGVjKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQ29uc29sZS5jcHAKaW5kZXggNTY3MTJmMi4uN2QwNGFiZiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0NvbnNvbGUuY3BwCkBAIC0zMSw2ICszMSw2IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25z
b2xlIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25zb2xlIiwgJkJh
c2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUpIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlldy5jcHAKaW5kZXggYmJkYmJk
Ni4uYjc3ZDQ4ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNE
YXRhVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmll
dy5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0lu
Zm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OworICAgICJEYXRhVmlldyIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OwogCiBK
U0RhdGFWaWV3OjpKU0RhdGFWaWV3KFZNJiB2bSwgQ29uc3RydWN0aW9uQ29udGV4dCYgY29udGV4
dCwgQXJyYXlCdWZmZXIqIGJ1ZmZlcikKICAgICA6IEJhc2Uodm0sIGNvbnRleHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3UHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3Bw
CmluZGV4IDkyOTAwZTYuLjJlMWRiYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCkBAIC0zNiwxMSArMzYsNiBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXdQcm90b3R5cGU6
OnNfaW5mbyA9IHsKLSAgICAiRGF0YVZpZXdQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCBF
eGVjU3RhdGU6OmRhdGFWaWV3VGFibGUsCi0gICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFW
aWV3UHJvdG90eXBlKQotfTsKLQogLyogU291cmNlIGZvciBKU0RhdGFWaWV3UHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gZGF0YVZpZXdUYWJsZQogICBnZXRJbnQ4ICAgICAgICAgICAgICAgZGF0YVZp
ZXdQcm90b0Z1bmNHZXRJbnQ4ICAgICAgICAgICAgIERvbnRFbnVtfEZ1bmN0aW9uICAgICAgIDAK
QEAgLTYyLDYgKzU3LDM0IEBAIGNvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpz
X2luZm8gPSB7CiBAZW5kCiAqLwogCitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBkYXRhVmlld1Byb3RvRnVuY0dldEludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldEludDE2KEV4ZWNTdGF0ZSop
Oworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNH
ZXRJbnQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGRhdGFWaWV3UHJvdG9GdW5jR2V0VWludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldFVpbnQxNihFeGVjU3RhdGUq
KTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5j
R2V0VWludDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDY0KEV4ZWNT
dGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90
b0Z1bmNTZXRJbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRJbnQxNihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0SW50MzIoRXhlY1N0
YXRlKik7CitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3Rv
RnVuY1NldFVpbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRVaW50MTYoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldFVpbnQzMihFeGVj
U3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJv
dG9GdW5jU2V0RmxvYXQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0RmxvYXQ2NChFeGVjU3RhdGUqKTsKKworfQor
CisjaW5jbHVkZSAiSlNEYXRhVmlld1Byb3RvdHlwZS5sdXQuaCIKKworbmFtZXNwYWNlIEpTQyB7
CisKK2NvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7CisgICAg
IkRhdGFWaWV3UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsCisgICAg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFWaWV3UHJvdG90eXBlKQorfTsKKwogSlNEYXRhVmll
d1Byb3RvdHlwZTo6SlNEYXRhVmlld1Byb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQogewpAQCAtODcsNyArMTEwLDcgQEAgYm9v
bCBKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoCiAgICAgSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9w
ZXJ0eVNsb3QmIHNsb3QpCiB7CiAgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09i
amVjdD4oCi0gICAgICAgIGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0YVZpZXdUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEpTRGF0YVZpZXdQcm90b3R5cGUqPihvYmplY3QpLAorICAgICAgICBleGVjLCBk
YXRhVmlld1RhYmxlLCBqc0Nhc3Q8SlNEYXRhVmlld1Byb3RvdHlwZSo+KG9iamVjdCksCiAgICAg
ICAgIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKQEAgLTI2Niw2ICsyODksMyBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldEZsb2F0NjQo
RXhlY1N0YXRlKiBleGVjKQogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKLQotI2luY2x1ZGUgIkpT
RGF0YVZpZXdQcm90b3R5cGUubHV0LmgiCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggMGY0N2FjOS4uNWM2YWRiMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3RvcihF
eGVjU3RhdGUqIGV4ZWMpCiAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihleGVjLCBjcmVhdGVOb3RB
Q29uc3RydWN0b3JFcnJvcihleGVjLCBleGVjLT5jYWxsZWUoKSkpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8g
SlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07CiAKIGJvb2wgSlNGdW5jdGlvbjo6aXNIb3N0
RnVuY3Rpb25Ob25JbmxpbmUoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGZiZjJmZjUuLmNiZjA3YTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKQEAg
LTEzOSw3ICsxMzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBFeGVjU3RhdGU6Omdsb2JhbE9iamVjdFRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1l
dGhvZFRhYmxlIEpTR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAm
YWxsb3dzQWNjZXNzRnJvbSwgJnN1cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNl
SW5mbywgJnNob3VsZEludGVycnVwdFNjcmlwdCwgJmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJs
ZWQsIDAsICZzaG91bGRJbnRlcnJ1cHRTY3JpcHRCZWZvcmVUaW1lb3V0IH07CiAKQEAgLTc0MCw3
ICs3NDAsNyBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjphZGRTdGF0aWNHbG9iYWxzKEdsb2JhbFBy
b3BlcnR5SW5mbyogZ2xvYmFscywgaW50IGNvdW50KQogYm9vbCBKU0dsb2JhbE9iamVjdDo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQogewogICAgIEpTR2xvYmFs
T2JqZWN0KiB0aGlzT2JqZWN0ID0ganNDYXN0PEpTR2xvYmFsT2JqZWN0Kj4ob2JqZWN0KTsKLSAg
ICBpZiAoZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJhc2U+KGV4ZWMsIEV4ZWNTdGF0ZTo6Z2xvYmFs
T2JqZWN0VGFibGUoZXhlYy0+dm0oKSksIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCkp
CisgICAgaWYgKGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBnbG9iYWxPYmplY3RU
YWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgcmV0dXJuIHN5bWJvbFRhYmxlR2V0KHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01h
cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKaW5kZXggNTUw
MGM1Ni4uYzA4YTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcApA
QCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKICAgICAKLWNvbnN0IENsYXNzSW5m
byBKU01hcDo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAi
TWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcCkgfTsKIAog
dm9pZCBKU01hcDo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNp
dG9yKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9y
LmNwcAppbmRleCBkNzMyZWRiLi5lYjRmZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1h
cCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNN
YXBJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcEl0ZXJhdG9yOjpzX2luZm8gPSB7
ICJNYXAgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
TWFwSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNNYXBJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtLCBKU01hcCogaXRlcmF0ZWRPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU05hbWVTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU05hbWVTY29wZS5jcHAKaW5kZXggZGI3MjEzNy4uOWJhN2QxZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYW1lU2NvcGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmFtZVNjb3BlLmNwcApAQCAtMzEsNyArMzEs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpz
X2luZm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTTmFtZVNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpzX2lu
Zm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmFtZVNjb3BlKSB9OwogCiB2b2lkIEpTTmFtZVNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2Vs
bCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCmluZGV4IDIzNjdhMzUuLmFmNDczN2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCkBA
IC0zNiw3ICszNiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoSlNOb3RBbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU05v
dEFuT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTTm90QW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNOb3RB
bk9iamVjdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU05vdEFuT2JqZWN0KSB9OwogCiAvLyBKU1ZhbHVlIG1ldGhvZHMKIEpTVmFs
dWUgSlNOb3RBbk9iamVjdDo6ZGVmYXVsdFZhbHVlKGNvbnN0IEpTT2JqZWN0KiwgRXhlY1N0YXRl
KiBleGVjLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRleCA4N2I5MjM3Li5mNTVjMzUwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNTg4LDcgKzU4OCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpqc29uVGFibGUsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNPTk9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7
ICJKU09OIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU09OT2JqZWN0KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTT05PYmplY3QubHV0
LmgKIEBiZWdpbiBqc29uVGFibGUKQEAgLTYwMSw3ICs2MDEsNyBAQCBjb25zdCBDbGFzc0luZm8g
SlNPTk9iamVjdDo6c19pbmZvID0geyAiSlNPTiIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZQogCiBib29sIEpTT05PYmplY3Q6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCog
b2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3Bl
cnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTT2Jq
ZWN0PihleGVjLCBFeGVjU3RhdGU6Ompzb25UYWJsZShleGVjLT52bSgpKSwganNDYXN0PEpTT05P
YmplY3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0
aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGpzb25UYWJsZSwganNDYXN0PEpTT05PYmpl
Y3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiBjbGFzcyBXYWxrZXIgewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCmluZGV4IDk4NzA3NTAu
LmMxNWZjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAK
QEAgLTcwLDkgKzcwLDkgQEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KEpTRmluYWxPYmplY3QpOwogCiBjb25zdCBjaGFyKiBTdHJpY3RNb2RlUmVhZG9ubHlQcm9wZXJ0
eVdyaXRlRXJyb3IgPSAiQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS4i
OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAs
IDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNP
YmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNP
YmplY3QpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2JqZWN0OjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNGaW5hbE9iamVjdDo6c19pbmZvID0geyAiT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsT2JqZWN0
KSB9OwogCiBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8sIFByb3BlcnR5TmFtZUFycmF5JiBw
cm9wZXJ0eU5hbWVzLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSwgYm9vbCBkaWRSZWlmeSkKIHsKQEAg
LTgwLDExICs4MCwxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVz
KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzcwogCiAgICAgLy8gQWRkIHBy
b3BlcnRpZXMgZnJvbSB0aGUgc3RhdGljIGhhc2h0YWJsZXMgb2YgcHJvcGVydGllcwogICAgIGZv
ciAoOyBjbGFzc0luZm87IGNsYXNzSW5mbyA9IGNsYXNzSW5mby0+cGFyZW50Q2xhc3MpIHsKLSAg
ICAgICAgY29uc3QgSGFzaFRhYmxlKiB0YWJsZSA9IGNsYXNzSW5mby0+cHJvcEhhc2hUYWJsZSh2
bSk7CisgICAgICAgIGNvbnN0IEhhc2hUYWJsZSogdGFibGUgPSBjbGFzc0luZm8tPnN0YXRpY1By
b3BIYXNoVGFibGU7CiAgICAgICAgIGlmICghdGFibGUpCiAgICAgICAgICAgICBjb250aW51ZTsK
IAotICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5iZWdpbih2bSk7IGl0ZXIgIT0gdGFi
bGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5i
ZWdpbigpOyBpdGVyICE9IHRhYmxlLT5lbmQoKTsgKytpdGVyKSB7CiAgICAgICAgICAgICBpZiAo
KCEoaXRlci0+YXR0cmlidXRlcygpICYgRG9udEVudW0pIHx8IChtb2RlID09IEluY2x1ZGVEb250
RW51bVByb3BlcnRpZXMpKSAmJiAhKChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikgJiYgZGlkUmVpZnkpKQogICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKElk
ZW50aWZpZXIoJnZtLCBpdGVyLmtleSgpKSk7CiAgICAgICAgIH0KQEAgLTQwMSw4ICs0MDEsOCBA
QCB2b2lkIEpTT2JqZWN0OjpwdXQoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEpTVgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0K
ICAgICAgICAgY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gb2JqLT5jbGFzc0luZm8oKTsKLSAgICAg
ICAgaWYgKGluZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSkgewot
ICAgICAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IG9iai0+ZmluZFBy
b3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpKSB7CisgICAgICAgIGlmIChpbmZvLT5o
YXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKSB7CisgICAgICAgICAgICBpZiAo
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gb2JqLT5maW5kUHJvcGVydHlIYXNoRW50cnko
cHJvcGVydHlOYW1lKSkgewogICAgICAgICAgICAgICAgIHB1dEVudHJ5KGV4ZWMsIGVudHJ5LCBv
YmosIHByb3BlcnR5TmFtZSwgdmFsdWUsIHNsb3QpOwogICAgICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgICAgIH0KQEAgLTEyOTgsNyArMTI5OCw3IEBAIGJvb2wgSlNPYmplY3Q6OmRlbGV0
ZVByb3BlcnR5KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJv
cGVyCiAgICAgfQogCiAgICAgLy8gTG9vayBpbiB0aGUgc3RhdGljIGhhc2h0YWJsZSBvZiBwcm9w
ZXJ0aWVzCi0gICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGhpc09iamVjdC0+Zmlu
ZFByb3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpOworICAgIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlKiBlbnRyeSA9IHRoaXNPYmplY3QtPmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShwcm9wZXJ0
eU5hbWUpOwogICAgIGlmIChlbnRyeSkgewogICAgICAgICBpZiAoZW50cnktPmF0dHJpYnV0ZXMo
KSAmIERvbnREZWxldGUgJiYgIXZtLmlzSW5EZWZpbmVPd25Qcm9wZXJ0eSgpKQogICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOyAvLyB0aGlzIGJ1aWx0aW4gcHJvcGVydHkgY2FuJ3QgYmUgZGVsZXRl
ZApAQCAtMTQyNiwxMSArMTQyNiwxMSBAQCBKU1ZhbHVlIEpTT2JqZWN0OjpkZWZhdWx0VmFsdWUo
Y29uc3QgSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcmVmZXJyZQogICAgIHJl
dHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVj
LCBBU0NJSUxpdGVyYWwoIk5vIGRlZmF1bHQgdmFsdWUiKSkpOwogfQogCi1jb25zdCBIYXNoVGFi
bGVWYWx1ZSogSlNPYmplY3Q6OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShWTSYgdm0sIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0Citjb25zdCBIYXNoVGFibGVWYWx1ZSogSlNPYmplY3Q6
OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKSBjb25zdAog
ewogICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gY2xhc3NJbmZvKCk7IGluZm87IGlu
Zm8gPSBpbmZvLT5wYXJlbnRDbGFzcykgewotICAgICAgICBpZiAoY29uc3QgSGFzaFRhYmxlKiBw
cm9wSGFzaFRhYmxlID0gaW5mby0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKLSAgICAgICAgICAgIGlm
IChjb25zdCBIYXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeSh2bSwg
cHJvcGVydHlOYW1lKSkKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogcHJvcEhhc2hUYWJs
ZSA9IGluZm8tPnN0YXRpY1Byb3BIYXNoVGFibGUpIHsKKyAgICAgICAgICAgIGlmIChjb25zdCBI
YXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeShwcm9wZXJ0eU5hbWUp
KQogICAgICAgICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICAgfQogICAgIH0KQEAgLTE2
NDYsMTEgKzE2NDYsMTEgQEAgdm9pZCBKU09iamVjdDo6cmVpZnlTdGF0aWNGdW5jdGlvbnNGb3JE
ZWxldGUoRXhlY1N0YXRlKiBleGVjKQogICAgICAgICBzZXRTdHJ1Y3R1cmUodm0sIFN0cnVjdHVy
ZTo6dG9VbmNhY2hlYWJsZURpY3Rpb25hcnlUcmFuc2l0aW9uKHZtLCBzdHJ1Y3R1cmUodm0pKSk7
CiAKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogaW5mbyA9IGNsYXNzSW5mbygpOyBpbmZvOyBp
bmZvID0gaW5mby0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlKiBoYXNo
VGFibGUgPSBpbmZvLT5wcm9wSGFzaFRhYmxlKHZtKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxl
KiBoYXNoVGFibGUgPSBpbmZvLT5zdGF0aWNQcm9wSGFzaFRhYmxlOwogICAgICAgICBpZiAoIWhh
c2hUYWJsZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzKTsKLSAgICAgICAgZm9yIChhdXRvIGl0ZXIgPSBoYXNoVGFibGUtPmJlZ2luKHZtKTsg
aXRlciAhPSBoYXNoVGFibGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8g
aXRlciA9IGhhc2hUYWJsZS0+YmVnaW4oKTsgaXRlciAhPSBoYXNoVGFibGUtPmVuZCgpOyArK2l0
ZXIpIHsKICAgICAgICAgICAgIGlmIChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikKICAgICAgICAgICAgICAgICBzZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdChnbG9iYWxPYmpl
Y3QoKS0+Z2xvYmFsRXhlYygpLCBpdGVyLnZhbHVlKCksIHRoaXMsIElkZW50aWZpZXIoJnZtLCBp
dGVyLmtleSgpKSwgc2xvdCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5oCmluZGV4IGQ1ZDRmNTkuLmRiOGE2YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuaApAQCAtOTY2LDcgKzk2Niw3IEBAIHByaXZhdGU6CiAgICAg
SlNfRVhQT1JUX1BSSVZBVEUgdm9pZCBmaWxsR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xv
dCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBQcm9wZXJ0eU9mZnNldCk7CiAgICAgdm9pZCBmaWxsQ3Vz
dG9tR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xvdCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBT
dHJ1Y3R1cmUmKTsKIAotICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBmaW5kUHJvcGVydHlIYXNo
RW50cnkoVk0mLCBQcm9wZXJ0eU5hbWUpIGNvbnN0OworICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVl
KiBmaW5kUHJvcGVydHlIYXNoRW50cnkoUHJvcGVydHlOYW1lKSBjb25zdDsKICAgICAgICAgCiAg
ICAgdm9pZCBwdXRJbmRleGVkRGVzY3JpcHRvcihFeGVjU3RhdGUqLCBTcGFyc2VBcnJheUVudHJ5
KiwgY29uc3QgUHJvcGVydHlEZXNjcmlwdG9yJiwgUHJvcGVydHlEZXNjcmlwdG9yJiBvbGQpOwog
ICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
bWlzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmlu
ZGV4IDlmMTgyYzkuLmE4ZjU5M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNQcm9taXNlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGlj
IHZvaWQgdHJpZ2dlclByb21pc2VSZWFjdGlvbnMoVk0mLCBKU0dsb2JhbE9iamVjdCosIFZlY3Rv
cjxXcml0ZUJhcnJpZXI8SlNQcm9taXNlUmVhY3Rpb24+PiYsIEpTVmFsdWUpOwogCi1jb25zdCBD
bGFzc0luZm8gSlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywg
MCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07Citjb25zdCBDbGFzc0luZm8g
SlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVh
dGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Byb21pc2VDb25zdHJ1
Y3RvciogY29uc3RydWN0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDAyNjE5Ni4uZGI2OWZkNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNBbGwoRXhlY1N0YXRlKik7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcHJvbWlz
ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlQ29uc3RydWN0
b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSlNQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBwcm9taXNlQ29uc3RydWN0b3JUYWJsZQpAQCAtMTYxLDcgKzE2MSw3IEBAIENhbGxUeXBlIEpT
UHJvbWlzZUNvbnN0cnVjdG9yOjpnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYgY2FsbERh
dGEpCiAKIGJvb2wgSlNQcm9taXNlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6cHJvbWlzZUNvbnN0cnVjdG9yVGFi
bGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxKU1Byb21pc2VDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxJbnRl
cm5hbEZ1bmN0aW9uPihleGVjLCBwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PEpTUHJv
bWlzZUNvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNDYXN0KEV4
ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZURlZmVycmVkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvbWlzZURlZmVycmVkLmNwcAppbmRleCA2N2ZkNTUwLi44OWQ5MTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlRGVmZXJyZWQuY3BwCkBAIC0z
OSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9t
aXNlRGVmZXJyZWQ6OnNfaW5mbyA9IHsgIkpTUHJvbWlzZURlZmVycmVkIiwgMCwgMCwgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VEZWZlcnJlZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb21pc2VEZWZlcnJlZDo6c19pbmZvID0geyAiSlNQcm9taXNlRGVmZXJyZWQiLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZURlZmVycmVkKSB9OwogCiBKU1Byb21pc2VEZWZl
cnJlZCogSlNQcm9taXNlRGVmZXJyZWQ6OmNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcAppbmRleCAwZGVkNTdmLi44NTU4Yzc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3Rv
dHlwZS5jcHAKQEAgLTUxLDcgKzUxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgSlNQcm9taXNlUHJvdG90eXBlRnVuY1RoZW4oRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJQcm9taXNlUHJvdG90eXBlIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNl
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZVByb3RvdHlwZTo6c19pbmZv
ID0geyAiUHJvbWlzZVByb3RvdHlwZSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZwcm9t
aXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBy
b21pc2VQcm90b3R5cGVUYWJsZQpAQCAtODUsNyArODUsNyBAQCB2b2lkIEpTUHJvbWlzZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBTdHJ1Y3R1cmUqKQogCiBib29sIEpTUHJvbWlz
ZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0
ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQog
ewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIEV4ZWNT
dGF0ZTo6cHJvbWlzZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nhc3Q8SlNQcm9taXNl
UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0
U3RhdGljRnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBwcm9taXNlUHJvdG90eXBlVGFibGUs
IGpzQ2FzdDxKU1Byb21pc2VQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTUHJvbWlzZVByb3RvdHlwZUZ1
bmNUaGVuKEV4ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcAppbmRleCAxZDNhYjZmLi4wNWUxY2M4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUmVhY3Rpb24u
Y3BwCkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBFeGVjdXRlUHJvbWlzZVJlYWN0aW9uTWljcm90
YXNrOjpydW4oRXhlY1N0YXRlKiBleGVjKQogfQogCiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VSZWFjdGlvbjo6c19pbmZvID0geyAiSlNQcm9taXNlUmVhY3Rpb24iLCAwLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVJlYWN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
UHJvbWlzZVJlYWN0aW9uOjpzX2luZm8gPSB7ICJKU1Byb21pc2VSZWFjdGlvbiIsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUmVhY3Rpb24pIH07CiAKIEpTUHJvbWlzZVJlYWN0
aW9uKiBKU1Byb21pc2VSZWFjdGlvbjo6Y3JlYXRlKFZNJiB2bSwgSlNQcm9taXNlRGVmZXJyZWQq
IGRlZmVycmVkLCBKU1ZhbHVlIGhhbmRsZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb3BlcnR5TmFtZUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCmluZGV4IGI1OTU5
ODAuLmU3ZjI3MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6c19p
bmZvID0geyAiSlNQcm9wZXJ0eU5hbWVJdGVyYXRvciIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yIiwgMCwg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yKSB9OwogCiBpbmxp
bmUgSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6SlNQcm9wZXJ0eU5hbWVJdGVyYXRvcihFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZUFycmF5RGF0YSogcHJvcGVydHlOYW1lQXJyYXlEYXRhLCBz
aXplX3QgbnVtQ2FjaGVhYmxlU2xvdHMpCiAgICAgOiBKU0NlbGwoZXhlYy0+dm0oKSwgZXhlYy0+
dm0oKS5wcm9wZXJ0eU5hbWVJdGVyYXRvclN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJveHkuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKaW5kZXggNDk0YTc5ZS4uOTU4ODZmMCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShKU1Byb3h5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJveHk6OnNfaW5mbyA9IHsgIkpTUHJv
eHkiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07
Citjb25zdCBDbGFzc0luZm8gSlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKIAogdm9pZCBKU1Byb3h5
Ojp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOWM5YWE1Mi4uM2MxZDEy
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApAQCAtMzMsNyArMzMs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8g
PSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19p
bmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OwogCiB2b2lkIEpTU2V0Ojp2aXNp
dENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldEl0ZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCmluZGV4IDFmZGZl
MjkuLmVjOTJjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2V0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0
SXRlcmF0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTU2V0SXRlcmF0b3I6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXRJdGVyYXRvcikgfTsK
IAogdm9pZCBKU1NldEl0ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTU2V0KiBpdGVy
YXRlZE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3RyaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNw
cAppbmRleCBiNTE0MWIxLi5mZjNiNjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1N0cmluZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNTdHJpbmcuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogICAg
IAotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3Ry
aW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3Ry
aW5nKSB9OwogCiB2b2lkIEpTUm9wZVN0cmluZzo6Um9wZUJ1aWxkZXI6OmV4cGFuZCgpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5
Q29uc3RydWN0b3JzLmNwcAppbmRleCA3YzQ5NTVkLi5mNDJmMzE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiAjZGVmaW5lIE1BS0Vf
U19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMj
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9y
OjpCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0
cnVjdG9yKX0KKyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0K
IAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19JTkZPKEludDE2QXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90
eXBlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90
b3R5cGVzLmNwcAppbmRleCA3OGM2YmFmLi5jMDFkOGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcApAQCAt
MzIsNyArMzIsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFLRV9TX0lORk8odHlw
ZSkgXAotICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBlIyNQcm90b3R5cGU6
OnNfaW5mbyA9IHsjdHlwZSAiUHJvdG90eXBlIiwgJkpTIyN0eXBlIyNQcm90b3R5cGU6OkJhc2U6
OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKUyMjdHlwZSMjUHJvdG90eXBlKX0K
KyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpzX2lu
Zm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1Byb3RvdHlwZSl9CiAKIE1BS0Vf
U19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKaW5kZXggNDk2NDkwNy4u
MmM1YzQ3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBl
ZEFycmF5cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFy
cmF5cy5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFL
RV9TX0lORk8odHlwZSkgXAogICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBl
IyNBcnJheTo6c19pbmZvID0geyBcCi0gICAgICAgICN0eXBlICJBcnJheSIsICZKUyMjdHlwZSMj
QXJyYXk6OkJhc2U6OnNfaW5mbywgMCwgMCwgXAorICAgICAgICAjdHlwZSAiQXJyYXkiLCAmSlMj
I3R5cGUjI0FycmF5OjpCYXNlOjpzX2luZm8sIDAsIFwKICAgICAgICAgQ1JFQVRFX01FVEhPRF9U
QUJMRShKUyMjdHlwZSMjQXJyYXkpIFwKICAgICB9OyBcCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBn
ZXQjI3R5cGUjI0FycmF5Q2xhc3NJbmZvKCkgeyByZXR1cm4gJkpTIyN0eXBlIyNBcnJheTo6c19p
bmZvOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Zhcmlh
YmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVP
YmplY3QuY3BwCmluZGV4IGQxOWM2NTguLmM3ZDRiYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCkBAIC0zMyw2ICszMyw2IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNWYXJpYWJsZU9iamVjdDo6
c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNWYXJp
YWJsZU9iamVjdDo6c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07CiAKIH0gLy8gbmFtZXNw
YWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFr
TWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKaW5k
ZXggZjU0NjUyYi4uODBiNDZjZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNXZWFrTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5m
bywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07CiAKIHZvaWQgSlNXZWFrTWFwOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dp
dGhTY29wZS5jcHAKaW5kZXggNjg5ZjE1Mi4uMjNkNzA4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJX
aXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0
aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJXaXRo
U2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3Bl
KSB9OwogCiB2b2lkIEpTV2l0aFNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xv
dFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Mb29rdXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3Vw
LmNwcAppbmRleCA0ODI4YmNkLi5lZjdhYmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Mb29rdXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0xvb2t1cC5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLXZv
aWQgSGFzaFRhYmxlOjpjcmVhdGVUYWJsZShWTSYpIGNvbnN0Cit2b2lkIEhhc2hUYWJsZTo6Y3Jl
YXRlVGFibGUoKSBjb25zdAogewogICAgIEFTU0VSVCgha2V5cyk7CiAgICAga2V5cyA9IHN0YXRp
Y19jYXN0PGNvbnN0IGNoYXIqKj4oZmFzdE1hbGxvYyhzaXplb2YoY2hhciopICogbnVtYmVyT2ZW
YWx1ZXMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xvb2t1
cC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3VwLmgKaW5kZXggOTA5NzM0
YjQ0Li44NTMzNjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9M
b29rdXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Mb29rdXAuaApAQCAt
ODMsMzEgKzgzLDQwIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKICAgICAgICAgfQogCi0gICAgICAgIEFMV0FZU19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZO
ZWVkZWQoVk0mIHZtKSBjb25zdAorICAgICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgaW5pdGlhbGl6
ZUlmTmVlZGVkKCkgY29uc3QKICAgICAgICAgewogICAgICAgICAgICAgaWYgKCFrZXlzKQotICAg
ICAgICAgICAgICAgIGNyZWF0ZVRhYmxlKHZtKTsKLSAgICAgICAgfQotCi0gICAgICAgIEFMV0FZ
U19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZOZWVkZWQoRXhlY1N0YXRlKiBleGVjKSBjb25zdAot
ICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIWtleXMpCi0gICAgICAgICAgICAgICAgY3JlYXRl
VGFibGUoZXhlYy0+dm0oKSk7CisgICAgICAgICAgICAgICAgY3JlYXRlVGFibGUoKTsKICAgICAg
ICAgfQogCiAgICAgICAgIEpTX0VYUE9SVF9QUklWQVRFIHZvaWQgZGVsZXRlVGFibGUoKSBjb25z
dDsKIAogICAgICAgICAvLyBGaW5kIGFuIGVudHJ5IGluIHRoZSB0YWJsZSwgYW5kIHJldHVybiB0
aGUgZW50cnkuCi0gICAgICAgIEFMV0FZU19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVu
dHJ5KFZNJiB2bSwgUHJvcGVydHlOYW1lIGlkZW50aWZpZXIpIGNvbnN0CisgICAgICAgIEFMV0FZ
U19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpIGNvbnN0CiAgICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2
bSk7Ci0gICAgICAgICAgICByZXR1cm4gZW50cnkoaWRlbnRpZmllcik7Ci0gICAgICAgIH0KKyAg
ICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCgpOwogCi0gICAgICAgIEFMV0FZU19JTkxJTkUg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1l
IGlkZW50aWZpZXIpIGNvbnN0Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5l
ZWRlZChleGVjKTsKLSAgICAgICAgICAgIHJldHVybiBlbnRyeShpZGVudGlmaWVyKTsKKyAgICAg
ICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUudWlkKCk7CisgICAgICAgICAg
ICBpZiAoIWltcGwpCisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIAorICAgICAg
ICAgICAgQVNTRVJUKGtleXMpOworCisgICAgICAgICAgICBpbnQgaW5kZXhFbnRyeSA9IGltcGwt
PmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOworICAgICAgICAgICAgaW50IHZhbHVlSW5kZXgg
PSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKKyAgICAgICAgICAgIGlmICh2YWx1ZUluZGV4ID09
IC0xKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAodHJ1
ZSkgeworICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGltcGwsIGtleXNbdmFsdWVJbmRl
eF0pKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVlc1t2YWx1ZUluZGV4XTsKKwor
ICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRleEVudHJ5XS5uZXh0OworICAg
ICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgICAgICAgICB2YWx1ZUluZGV4ID0gaW5kZXhbaW5kZXhF
bnRyeV0udmFsdWU7CisgICAgICAgICAgICAgICAgQVNTRVJUKHZhbHVlSW5kZXggIT0gLTEpOwor
ICAgICAgICAgICAgfTsKICAgICAgICAgfQogCiAgICAgICAgIGNsYXNzIENvbnN0SXRlcmF0b3Ig
ewpAQCAtMTYxLDQ1ICsxNzAsMjAgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgICAgICBpbnQg
bV9wb3NpdGlvbjsKICAgICAgICAgfTsKIAotICAgICAgICBDb25zdEl0ZXJhdG9yIGJlZ2luKFZN
JiB2bSkgY29uc3QKKyAgICAgICAgQ29uc3RJdGVyYXRvciBiZWdpbigpIGNvbnN0CiAgICAgICAg
IHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2bSk7CisgICAgICAgICAgICBpbml0
aWFsaXplSWZOZWVkZWQoKTsKICAgICAgICAgICAgIHJldHVybiBDb25zdEl0ZXJhdG9yKHRoaXMs
IDApOwogICAgICAgICB9Ci0gICAgICAgIENvbnN0SXRlcmF0b3IgZW5kKFZNJiB2bSkgY29uc3QK
KyAgICAgICAgQ29uc3RJdGVyYXRvciBlbmQoKSBjb25zdAogICAgICAgICB7Ci0gICAgICAgICAg
ICBpbml0aWFsaXplSWZOZWVkZWQodm0pOworICAgICAgICAgICAgaW5pdGlhbGl6ZUlmTmVlZGVk
KCk7CiAgICAgICAgICAgICByZXR1cm4gQ29uc3RJdGVyYXRvcih0aGlzLCBudW1iZXJPZlZhbHVl
cyk7CiAgICAgICAgIH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIEFMV0FZU19JTkxJTkUgY29u
c3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUu
dWlkKCk7Ci0gICAgICAgICAgICBpZiAoIWltcGwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDA7
Ci0gICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGtleXMpOwotCi0gICAgICAgICAgICBpbnQg
aW5kZXhFbnRyeSA9IGltcGwtPmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOwotICAgICAgICAg
ICAgaW50IHZhbHVlSW5kZXggPSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKLSAgICAgICAgICAg
IGlmICh2YWx1ZUluZGV4ID09IC0xKQotICAgICAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgICAgICB3aGlsZSAodHJ1ZSkgewotICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGlt
cGwsIGtleXNbdmFsdWVJbmRleF0pKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVl
c1t2YWx1ZUluZGV4XTsKLQotICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRl
eEVudHJ5XS5uZXh0OwotICAgICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQotICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgICAgICB2YWx1ZUlu
ZGV4ID0gaW5kZXhbaW5kZXhFbnRyeV0udmFsdWU7Ci0gICAgICAgICAgICAgICAgQVNTRVJUKHZh
bHVlSW5kZXggIT0gLTEpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgfQotCiAgICAgICAgIC8v
IENvbnZlcnQgdGhlIGhhc2ggdGFibGUga2V5cyB0byBpZGVudGlmaWVycy4KLSAgICAgICAgSlNf
RVhQT1JUX1BSSVZBVEUgdm9pZCBjcmVhdGVUYWJsZShWTSYpIGNvbnN0OworICAgICAgICBKU19F
WFBPUlRfUFJJVkFURSB2b2lkIGNyZWF0ZVRhYmxlKCkgY29uc3Q7CiAgICAgfTsKIAogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgc2V0VXBTdGF0aWNGdW5jdGlvblNsb3QoRXhlY1N0YXRlKiwg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqLCBKU09iamVjdCogdGhpc09iamVjdCwgUHJvcGVydHlOYW1l
LCBQcm9wZXJ0eVNsb3QmKTsKQEAgLTIxMyw3ICsxOTcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICB0ZW1wbGF0ZSA8Y2xhc3MgVGhpc0ltcCwgY2xhc3MgUGFyZW50SW1wPgogICAgIGlubGluZSBi
b29sIGdldFN0YXRpY1Byb3BlcnR5U2xvdChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEhhc2hUYWJs
ZSYgdGFibGUsIFRoaXNJbXAqIHRoaXNPYmosIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCYgc2xvdCkKICAgICB7Ci0gICAgICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBl
bnRyeSA9IHRhYmxlLmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgICAgIGNvbnN0IEhh
c2hUYWJsZVZhbHVlKiBlbnRyeSA9IHRhYmxlLmVudHJ5KHByb3BlcnR5TmFtZSk7CiAKICAgICAg
ICAgaWYgKCFlbnRyeSkgLy8gbm90IGZvdW5kLCBmb3J3YXJkIHRvIHBhcmVudAogICAgICAgICAg
ICAgcmV0dXJuIFBhcmVudEltcDo6Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmosIGV4ZWMsIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CkBAIC0yNDEsNyArMjI1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAg
ICAgICAgIGlmIChQYXJlbnRJbXA6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqLCBleGVjLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICAgICAg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlO
YW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnko
cHJvcGVydHlOYW1lKTsKICAgICAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKIApAQCAtMjU1LDcgKzIzOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgIHRlbXBsYXRl
IDxjbGFzcyBUaGlzSW1wLCBjbGFzcyBQYXJlbnRJbXA+CiAgICAgaW5saW5lIGJvb2wgZ2V0U3Rh
dGljVmFsdWVTbG90KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSGFzaFRhYmxlJiB0YWJsZSwgVGhp
c0ltcCogdGhpc09iaiwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBz
bG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUu
ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUq
IGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1lKTsKIAogICAgICAgICBpZiAoIWVudHJ5
KSAvLyBub3QgZm91bmQsIGZvcndhcmQgdG8gcGFyZW50CiAgICAgICAgICAgICByZXR1cm4gUGFy
ZW50SW1wOjpnZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iaiwgZXhlYywgcHJvcGVydHlOYW1lLCBz
bG90KTsKQEAgLTI5MSw3ICsyNzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgKi8KICAgICBp
bmxpbmUgYm9vbCBsb29rdXBQdXQoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVy
dHlOYW1lLCBKU09iamVjdCogYmFzZSwgSlNWYWx1ZSB2YWx1ZSwgY29uc3QgSGFzaFRhYmxlJiB0
YWJsZSwgUHV0UHJvcGVydHlTbG90JiBzbG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRh
YmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAg
ICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1l
KTsKIAogICAgICAgICBpZiAoIWVudHJ5KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4
IDA0ZjE3ZDkuLmZiNjgzMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcENvbnN0cnVjdG9y
KSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3Ip
IH07CiAKIHZvaWQgTWFwQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTWFwUHJv
dG90eXBlKiBtYXBQcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cERhdGEuY3BwCmluZGV4IGI5ZTczYWUuLmRkYzYwMjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXBEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcApAQCAtMzgsNyArMzgsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcERhdGE6OnNfaW5mbyA9IHsgIk1hcERhdGEiLCAwLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcERhdGEpIH07Citjb25zdCBDbGFzc0luZm8gTWFw
RGF0YTo6c19pbmZvID0geyAiTWFwRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFw
RGF0YSkgfTsKIAogc3RhdGljIGNvbnN0IGludDMyX3QgbWluaW11bU1hcFNpemUgPSA4OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvckNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29u
c3RydWN0b3IuY3BwCmluZGV4IDQwY2MyMzkuLjBmOTNkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBA
IC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFw
SXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTWFwSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgTWFwSXRlcmF0b3JD
b25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBNYXBJdGVyYXRvclByb3RvdHlwZSog
cHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDc4ZmI2NjkuLjBkZDlkZWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJdGVyYXRvclByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAi
TWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJ
dGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgTWFwSXRlcmF0b3JQcm90b3R5cGVGdW5jSXRlcmF0b3IoRXhlY1N0YXRlKik7CiBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBNYXBJdGVyYXRvclByb3RvdHlwZUZ1bmNOZXh0
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3Rv
dHlwZS5jcHAKaW5kZXggNTIyMTE3Ny4uZDIyMTNmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJN
YXAiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCIsICZC
YXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwUHJvdG90eXBlKSB9OwogCiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBtYXBQcm90b0Z1bmNDbGVhcihFeGVj
U3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG1hcFByb3RvRnVu
Y0RlbGV0ZShFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hdGhPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0
aE9iamVjdC5jcHAKaW5kZXggYmI5NGViNi4uMzc3MzIyNSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgbWF0aFByb3RvRnVuY0lNdWwoRXhlY1N0YXRlKik7
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWF0aE9iamVjdDo6c19pbmZv
ID0geyAiTWF0aCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWF0
aE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXRoT2JqZWN0OjpzX2luZm8gPSB7ICJNYXRo
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9Owog
CiBNYXRoT2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAg
ICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcAppbmRleCAzOTI2ODgzLi5lNDk3
YTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVDb25zdHJ1
Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOYW1lQ29uc3RydWN0b3IpOwogCi1jb25zdCBD
bGFzc0luZm8gTmFtZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIE5hbWVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVDb25zdHJ1Y3RvcikgfTsKIAog
TmFtZUNvbnN0cnVjdG9yOjpOYW1lQ29uc3RydWN0b3IoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICA6IEludGVybmFsRnVuY3Rpb24odm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lSW5zdGFuY2UuY3BwCmluZGV4IGNjNmNlOWIuLmY2
ZDdmNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0
YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZUluc3RhbmNl
LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE5hbWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5h
bWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OwogCiBOYW1lSW5zdGFuY2U6Ok5hbWVJbnN0YW5j
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1N0cmluZyogbmFtZVN0cmluZykKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmFtZVByb3RvdHlwZS5jcHAKaW5kZXggZDAzMGZkMC4uYmYwOGQ5YSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5
LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgcHJpdmF0ZU5hbWVQcm90
b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBOYW1lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJOYW1lIiwgJkJhc2U6OnNfaW5mbywg
MCwgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE5hbWVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gTmFtZVByb3RvdHlwZTo6c19p
bmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sICZwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxl
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
TmFtZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByaXZhdGVOYW1lUHJvdG90eXBlVGFibGUKQEAg
LTYwLDcgKzYwLDcgQEAgdm9pZCBOYW1lUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAKIGJvb2wgTmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmpl
Y3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlT
bG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8QmFzZT4oZXhl
YywgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nh
c3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0
dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBwcml2YXRlTmFtZVByb3RvdHlw
ZVRhYmxlLCBqc0Nhc3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xv
dCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyNjAwNTUuLjMy
YzlmNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVy
cm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05h
dGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRl
cm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3RvcikgfTsKIAogTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6TmF0aXZlRXJyb3JDb25z
dHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSW50ZXJuYWxGdW5j
dGlvbih2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDA0YzUwOTguLmY0ZWFlZGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAK
QEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5m
byBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoTnVtYmVyQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTnVt
YmVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgTnVtYmVyQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBudW1iZXJDb25zdHJ1Y3RvclRhYmxlCkBAIC03NCw3ICs3NCw3IEBAIHZvaWQg
TnVtYmVyQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTnVtYmVyUHJvdG90eXBl
KiBudW1iZXJQcm90b3R5cGUpCiAKIGJvb2wgTnVtYmVyQ29uc3RydWN0b3I6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
VmFsdWVTbG90PE51bWJlckNvbnN0cnVjdG9yLCBJbnRlcm5hbEZ1bmN0aW9uPihleGVjLCBFeGVj
U3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxOdW1iZXJD
b25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdl
dFN0YXRpY1ZhbHVlU2xvdDxOdW1iZXJDb25zdHJ1Y3RvciwgSW50ZXJuYWxGdW5jdGlvbj4oZXhl
YywgbnVtYmVyQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PE51bWJlckNvbnN0cnVjdG9yKj4ob2Jq
ZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIG51
bWJlckNvbnN0cnVjdG9yTmFOVmFsdWUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNW
YWx1ZSwgUHJvcGVydHlOYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlck9iamVjdC5jcHAKaW5kZXggNGRmNThlOC4uMzEzNTBjYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0zMCw3ICszMCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE51bWJlck9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJPYmplY3Q6OnNf
aW5mbyA9IHsgIk51bWJlciIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShOdW1iZXJPYmplY3QpIH07CiAKIE51bWJlck9iamVjdDo6TnVtYmVyT2JqZWN0
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dyYXBwZXJPYmplY3Qodm0s
IHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQ
cm90b3R5cGUuY3BwCmluZGV4IDQyZWUzMGEuLjk0MDM5NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcApAQCAtNTYsNyArNTYsNyBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBudW1iZXJQcm90b0Z1bmNDbHoo
RXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIiLCAmTnVtYmVyT2JqZWN0OjpzX2luZm8sIDAs
IEV4ZWNTdGF0ZTo6bnVtYmVyUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE51bWJlclByb3RvdHlwZTo6c19pbmZv
ID0geyAiTnVtYmVyIiwgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFi
bGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRhYmxlCkBA
IC04Nyw3ICs4Nyw3IEBAIHZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KikKIAogYm9vbCBOdW1iZXJQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PE51bWJlck9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpudW1iZXJQcm90b3R5
cGVUYWJsZShleGVjLT52bSgpKSwganNDYXN0PE51bWJlclByb3RvdHlwZSo+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxOdW1i
ZXJPYmplY3Q+KGV4ZWMsIG51bWJlclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8TnVtYmVyUHJvdG90
eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIEZ1bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9y
LmNwcAppbmRleCBhM2MxOTI3Li5jODhjMzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01OSw3ICs1OSw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
T2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhl
Y1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZvYmplY3RDb25z
dHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdENvbnN0cnVjdG9yKSB9Owog
CiAvKiBTb3VyY2UgZm9yIE9iamVjdENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gb2JqZWN0Q29u
c3RydWN0b3JUYWJsZQpAQCAtOTUsNyArOTUsNyBAQCB2b2lkIE9iamVjdENvbnN0cnVjdG9yOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0sIE9iamVjdFByb3RvdHlwZSogb2JqZWN0UHJvdG90eXBlKQog
CiBib29sIE9iamVjdENvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9i
amVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0
eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVj
dD4oZXhlYywgRXhlY1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlKGV4ZWMtPnZtKCkpLCBq
c0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwor
ICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIG9iamVjdENv
bnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxPYmplY3RDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3Bl
cnR5TmFtZSwgc2xvdCk7CiB9CiAKIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25z
dHJ1Y3RPYmplY3QoRXhlY1N0YXRlKiBleGVjKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKaW5kZXggOWZhNzg2MS4uZTMwMjdkMyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG9i
amVjdFByb3RvRnVuY1RvTG9jYWxlU3RyaW5nKEV4ZWNTdGF0ZSopOwogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0UHJvdG90eXBlKTsKIAotY29uc3QgQ2xh
c3NJbmZvIE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3Qi
LCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dFByb3RvdHlwZSkgfTsKIAogT2JqZWN0UHJvdG90eXBlOjpPYmplY3RQcm90b3R5cGUoVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0dWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3R1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3Bw
CmluZGV4IGM1M2I3MjEuLjIzZTNiMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVy
dHlUYWJsZSIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlUYWJsZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9wZXJ0eVRhYmxl
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9wZXJ0eVRhYmxlKSB9OwogCiBQcm9wZXJ0
eVRhYmxlKiBQcm9wZXJ0eVRhYmxlOjpjcmVhdGUoVk0mIHZtLCB1bnNpZ25lZCBpbml0aWFsQ2Fw
YWNpdHkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAppbmRleCA0
N2M5NzlkLi4wMjkxMmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5j
cHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cDo6c19pbmZvID0geyAiUmVnRXhw
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07CiAKIFJlZ0V4cEZsYWdzIHJl
Z0V4cEZsYWdzKGNvbnN0IFN0cmluZyYgc3RyaW5nKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCmluZGV4IDBjNmJmNDguLjUz
ZTIwYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIHZvaWQgc2V0UmVnRXhwQ29u
c3RydWN0b3JNdWx0aWxpbmUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNWYWx1ZSwK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVj
U3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhw
Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlZ0V4cENvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwQ29uc3RydWN0b3IpIH07CiAK
IC8qIFNvdXJjZSBmb3IgUmVnRXhwQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlCkBAIC0xNTUsNyArMTU1LDcgQEAgSlNWYWx1ZSBSZWdFeHBDb25zdHJ1Y3Rv
cjo6Z2V0UmlnaHRDb250ZXh0KEV4ZWNTdGF0ZSogZXhlYykKICAgICAKIGJvb2wgUmVnRXhwQ29u
c3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUq
IGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsK
LSAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90PFJlZ0V4cENvbnN0cnVjdG9yLCBJbnRlcm5h
bEZ1bmN0aW9uPihleGVjLCBFeGVjU3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUoZXhlYy0+
dm0oKSksIGpzQ2FzdDxSZWdFeHBDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBDb25zdHJ1Y3Rvciwg
SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PFJl
Z0V4cENvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KICAgICAK
IEVuY29kZWRKU1ZhbHVlIHJlZ0V4cENvbnN0cnVjdG9yRG9sbGFyMShFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUsIFByb3BlcnR5TmFtZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3Bw
CmluZGV4IGRlMzRlNWMuLjM0ZWJjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwTWF0Y2hlc0FycmF5LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE1hdGNoZXNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwTWF0Y2hlc0FycmF5KX07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwTWF0Y2hlc0Fy
cmF5OjpzX2luZm8gPSB7IkFycmF5IiwgJkpTQXJyYXk6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBNYXRjaGVzQXJyYXkpfTsKIAogUmVnRXhwTWF0Y2hlc0FycmF5OjpSZWdF
eHBNYXRjaGVzQXJyYXkoVk0mIHZtLCBCdXR0ZXJmbHkqIGJ1dHRlcmZseSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNTdHJpbmcqIGlucHV0LCBSZWdFeHAqIHJlZ0V4cCwgTWF0Y2hS
ZXN1bHQgcmVzdWx0KQogICAgIDogSlNBcnJheSh2bSwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBNYXRj
aGVzQXJyYXlTdHJ1Y3R1cmUoKSwgYnV0dGVyZmx5KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5kZXggNGU0YzAyYy4uMWIwOWIzOCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC01Miw3
ICs1Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoUmVnRXhwT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVj
dDo6c19pbmZvID0geyAiUmVnRXhwIiwgJkJhc2U6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7ICJSZWdFeHAiLCAmQmFzZTo6c19pbmZvLCAm
cmVnRXhwVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiAvKiBT
b3VyY2UgZm9yIFJlZ0V4cE9iamVjdC5sdXQuaAogQGJlZ2luIHJlZ0V4cFRhYmxlCkBAIC05Nyw3
ICs5Nyw3IEBAIGJvb2wgUmVnRXhwT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0CiAgICAgICAgIHNsb3Quc2V0VmFsdWUo
cmVnRXhwLCBhdHRyaWJ1dGVzLCByZWdFeHAtPmdldExhc3RJbmRleCgpKTsKICAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgfQotICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8UmVnRXhwT2Jq
ZWN0LCBKU09iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpyZWdFeHBUYWJsZShleGVjLT52bSgpKSwg
anNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAg
cmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBPYmplY3QsIEpTT2JqZWN0PihleGVjLCBy
ZWdFeHBUYWJsZSwganNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CiAKIGJvb2wgUmVnRXhwT2JqZWN0OjpkZWxldGVQcm9wZXJ0eShKU0NlbGwqIGNl
bGwsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4IDdh
ZWFmZjUuLmU3MmUxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCByZWdFeHBQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlJlZ0V4cCIsICZSZWdFeHBPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gUmVnRXhwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAiLCAm
UmVnRXhwT2JqZWN0OjpzX2luZm8sICZyZWdFeHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVnRXhwUHJvdG90
eXBlLmx1dC5oCiBAYmVnaW4gcmVnRXhwUHJvdG90eXBlVGFibGUKQEAgLTY3LDcgKzY3LDcgQEAg
UmVnRXhwUHJvdG90eXBlOjpSZWdFeHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgUmVnRXhwKiByZWdFeHApCiAKIGJvb2wgUmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9w
ZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRp
Y0Z1bmN0aW9uU2xvdDxSZWdFeHBPYmplY3Q+KGV4ZWMsIEV4ZWNTdGF0ZTo6cmVnRXhwUHJvdG90
eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxSZWdFeHBQcm90b3R5cGUqPihvYmplY3QpLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8UmVn
RXhwT2JqZWN0PihleGVjLCByZWdFeHBQcm90b3R5cGVUYWJsZSwganNDYXN0PFJlZ0V4cFByb3Rv
dHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggOGFkN2U1NC4uNDVlMzQ0MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0Q29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBTZXRDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBT
ZXRQcm90b3R5cGUqIHNldFByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMTlkNzE2
ZS4uY2IxNmZmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTZXRJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFNldEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvckNvbnN0cnVjdG9yKSB9OwogCiB2
b2lkIFNldEl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgU2V0SXRl
cmF0b3JQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMTkzODFkLi4x
MTYwOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVy
YXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNl
dCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoU2V0SXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIFNldEl0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJhdG9yKEV4ZWNT
dGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgU2V0SXRlcmF0b3JQ
cm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TZXRQcm90b3R5cGUuY3BwCmluZGV4IDAxOTcwZTAuLjA1MjMzYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldFByb3RvdHlw
ZTo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc2V0UHJv
dG9GdW5jQWRkKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgc2V0UHJvdG9GdW5jQ2xlYXIoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IGJlODk4ZDku
LjJhMTQ1ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJz
ZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nw
YXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAiU3Bh
cnNlQXJyYXlWYWx1ZU1hcCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJy
YXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2lu
Zm8gPSB7ICJTcGFyc2VBcnJheVZhbHVlTWFwIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
cGFyc2VBcnJheVZhbHVlTWFwKSB9OwogCiBTcGFyc2VBcnJheVZhbHVlTWFwOjpTcGFyc2VBcnJh
eVZhbHVlTWFwKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNwYXJzZUFycmF5VmFsdWVNYXBT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAKaW5kZXggZTA1ZTdkMy4uNDI2ZDI5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0
aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmljdEV2YWxBY3RpdmF0aW9uKTsKIAotY29u
c3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2YWxBY3RpdmF0
aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7
ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2
YWxBY3RpdmF0aW9uKSB9OwogCiBTdHJpY3RFdmFsQWN0aXZhdGlvbjo6U3RyaWN0RXZhbEFjdGl2
YXRpb24oRXhlY1N0YXRlKiBleGVjKQogICAgIDogQmFzZSgKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCBmODIyMWQ3Li40
YmFlOTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5n
Q29uc3RydWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIHN0cmluZ0Zyb21DaGFyQ29kZShFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OnN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgU3RyaW5nQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxl
CkBAIC02Miw3ICs2Miw3IEBAIHZvaWQgU3RyaW5nQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU3RyaW5nUHJvdG90eXBlKiBzdHJpbmdQcm90b3R5cGUpCiAKIGJvb2wgU3RyaW5n
Q29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkK
IHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4
ZWMsIEV4ZWNTdGF0ZTo6c3RyaW5nQ29uc3RydWN0b3JUYWJsZShleGVjLT52bSgpKSwganNDYXN0
PFN0cmluZ0NvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICBy
ZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIHN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxTdHJpbmdDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCmluZGV4IGE1ZTIzZjcuLjMw
YzAxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09i
amVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0
LmNwcApAQCAtMzAsNyArMzAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9J
U19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmluZ09iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5m
byBTdHJpbmdPYmplY3Q6OnNfaW5mbyA9IHsgIlN0cmluZyIsICZKU1dyYXBwZXJPYmplY3Q6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciLCAmSlNXcmFwcGVyT2Jq
ZWN0OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2JqZWN0KSB9OwogCiBT
dHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRleCBmZDE5NDQ3Li4wYWI2
MzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3Rv
dHlwZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmluZ1Byb3RvRnVuY1RyaW1MZWZ0KEV4ZWNTdGF0ZSopOwog
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbVJp
Z2h0KEV4ZWNTdGF0ZSopOwogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTdHJpbmciLCAmU3RyaW5nT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiU3RyaW5nIiwgJlN0cmluZ09iamVjdDo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKIAogLy8gRUNNQSAxNS41LjQKIFN0
cmluZ1Byb3RvdHlwZTo6U3RyaW5nUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcAppbmRleCBl
NTU3OGQyLi4zZDViMGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJ1Y3R1cmUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVj
dHVyZS5jcHAKQEAgLTE2MSw5ICsxNjEsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwogewog
ICAgIHNldERpY3Rpb25hcnlLaW5kKE5vbmVEaWN0aW9uYXJ5S2luZCk7CiAgICAgc2V0SXNQaW5u
ZWRQcm9wZXJ0eVRhYmxlKGZhbHNlKTsKLSAgICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVz
KGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3VzdG9tR2V0dGVyU2V0dGVyUHJv
cGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRp
ZXNFeGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNF
eGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkpOwogICAgIHNldEhhc05vbkVudW1lcmFibGVQcm9wZXJ0aWVzKGZhbHNlKTsKICAgICBz
ZXRBdHRyaWJ1dGVzSW5QcmV2aW91cygwKTsKICAgICBzZXRTcGVjaWZpY0Z1bmN0aW9uVGhyYXNo
Q291bnQoMCk7CkBAIC0xNzUsMTEgKzE3NSwxMSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwog
ICAgIEFTU0VSVChpbmxpbmVDYXBhY2l0eSA8PSBKU0ZpbmFsT2JqZWN0OjptYXhJbmxpbmVDYXBh
Y2l0eSgpKTsKICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8UHJvcGVydHlPZmZzZXQ+KGlubGluZUNh
cGFjaXR5KSA8IGZpcnN0T3V0T2ZMaW5lT2Zmc2V0KTsKICAgICBBU1NFUlQoIWhhc1JhcmVEYXRh
KCkpOwotICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1
ZGluZ1Byb3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJv
cGVydGllcyh2bSkpOwotICAgIEFTU0VSVChoYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwg
IW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcyh2bSkpOwor
ICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1By
b3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGll
cygpKTsKKyAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFtX2NsYXNz
SW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZSIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVy
ZTo6c19pbmZvID0geyAiU3RydWN0dXJlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1
Y3R1cmUpIH07CiAKIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICA6IEpTQ2VsbChD
cmVhdGluZ0Vhcmx5Q2VsbCkKQEAgLTE5Miw5ICsxOTIsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVy
ZShWTSYgdm0pCiB7CiAgICAgc2V0RGljdGlvbmFyeUtpbmQoTm9uZURpY3Rpb25hcnlLaW5kKTsK
ICAgICBzZXRJc1Bpbm5lZFByb3BlcnR5VGFibGUoZmFsc2UpOwotICAgIHNldEhhc0dldHRlclNl
dHRlclByb3BlcnRpZXMobV9jbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcyhtX2NsYXNzSW5m
by0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3Vz
dG9tR2V0dGVyU2V0dGVyUHJvcGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdl
dHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90byhtX2NsYXNzSW5mby0+aGFzU3RhdGlj
U2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAgICBzZXRIYXNSZWFkT25seU9yR2V0
dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1Byb3RvKG1fY2xhc3NJbmZvLT5oYXNTdGF0aWNT
ZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICBzZXRIYXNOb25FbnVtZXJhYmxlUHJv
cGVydGllcyhmYWxzZSk7CiAgICAgc2V0QXR0cmlidXRlc0luUHJldmlvdXMoMCk7CiAgICAgc2V0
U3BlY2lmaWNGdW5jdGlvblRocmFzaENvdW50KDApOwpAQCAtMjA3LDggKzIwNyw4IEBAIFN0cnVj
dHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICBtX2Jsb2IgPSBTdHJ1Y3R1cmVJREJsb2Iodm0u
aGVhcC5zdHJ1Y3R1cmVJRFRhYmxlKCkuYWxsb2NhdGVJRCh0aGlzKSwgMCwgdHlwZUluZm8pOwog
ICAgIG1fb3V0T2ZMaW5lVHlwZUZsYWdzID0gdHlwZUluZm8ub3V0T2ZMaW5lVHlwZUZsYWdzKCk7
CiAKLSAgICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRp
bmdQcm90bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3Bl
cnRpZXModm0pKTsKLSAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFt
X2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90
bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMo
KSk7CisgICAgQVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOwogfQogCiBTdHJ1Y3R1
cmU6OlN0cnVjdHVyZShWTSYgdm0sIFN0cnVjdHVyZSogcHJldmlvdXMpCkBAIC0yNDUsOCArMjQ1
LDggQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHByZXZpb3VzKQog
ICAgIHByZXZpb3VzLT5ub3RpZnlUcmFuc2l0aW9uRnJvbVRoaXNTdHJ1Y3R1cmUoKTsKICAgICBp
ZiAocHJldmlvdXMtPm1fZ2xvYmFsT2JqZWN0KQogICAgICAgICBtX2dsb2JhbE9iamVjdC5zZXQo
dm0sIHRoaXMsIHByZXZpb3VzLT5tX2dsb2JhbE9iamVjdC5nZXQoKSk7Ci0gICAgQVNTRVJUKGhh
c1JlYWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9j
bGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7Ci0gICAg
QVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0luZm8tPmhhc1N0
YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKGhhc1JlYWRP
bmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCho
YXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0
ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKIH0KIAogU3RydWN0dXJlOjp+U3RydWN0dXJlKCkK
QEAgLTU5OSw4ICs1OTksOCBAQCBTdHJ1Y3R1cmUqIFN0cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlv
bihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgICAgICAgICAgaXRlci0+YXR0cmli
dXRlcyB8PSBpdGVyLT5hdHRyaWJ1dGVzICYgQWNjZXNzb3IgPyBEb250RGVsZXRlIDogKERvbnRE
ZWxldGUgfCBSZWFkT25seSk7CiAgICAgfQogCi0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1Jl
YWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNp
dGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZt
KSk7Ci0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8
fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1JlYWRPbmx5T3JHZXR0ZXJT
ZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZv
KCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCh0
cmFuc2l0aW9uLT5oYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIXRyYW5zaXRpb24tPmNs
YXNzSW5mbygpLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICB0
cmFuc2l0aW9uLT5jaGVja09mZnNldENvbnNpc3RlbmN5KCk7CiAgICAgcmV0dXJuIHRyYW5zaXRp
b247CiB9CkBAIC0xMjQ3LDEwICsxMjQ3LDEwIEBAIHZvaWQgU3RydWN0dXJlOjpjaGVja0NvbnNp
c3RlbmN5KCkKIAogI2VuZGlmIC8vIERPX1BST1BFUlRZTUFQX0NPTlNURU5DWV9DSEVDSwogCi1i
b29sIENsYXNzSW5mbzo6aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoVk0mIHZt
KSBjb25zdAorYm9vbCBDbGFzc0luZm86Omhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkgY29uc3QKIHsKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogY2kgPSB0aGlzOyBjaTsg
Y2kgPSBjaS0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogdGFi
bGUgPSBjaS0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJs
ZSogdGFibGUgPSBjaS0+c3RhdGljUHJvcEhhc2hUYWJsZSkgewogICAgICAgICAgICAgaWYgKHRh
YmxlLT5oYXNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcykKICAgICAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlQ2hhaW4uY3BwCmluZGV4IGRjNDI4MzkuLmVmNDMxODkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJl
Q2hhaW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTdHJ1Y3R1cmVDaGFpbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVDaGFp
bjo6c19pbmZvID0geyAiU3RydWN0dXJlQ2hhaW4iLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVDaGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQ2VsbCh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURh
dGEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEu
Y3BwCmluZGV4IDBmNGJkMjcuLjhjM2ZkODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVSYXJlRGF0YTo6c19p
bmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZVJhcmVEYXRhKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZVJhcmVEYXRh
OjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVSYXJlRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RydWN0dXJlUmFyZURhdGEpIH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3ltYm9sVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sVGFibGUuY3BwCmluZGV4IDZiNWVmOWIuLjhmZGEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZvID0geyAi
U3ltYm9sVGFibGUiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbFRhYmxlKSB9
OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFRhYmxlOjpzX2luZm8gPSB7ICJTeW1ib2xUYWJsZSIs
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIFN5bWJvbFRhYmxl
RW50cnkmIFN5bWJvbFRhYmxlRW50cnk6OmNvcHlTbG93KGNvbnN0IFN5bWJvbFRhYmxlRW50cnkm
IG90aGVyKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDFkM2Q3Y2Iu
LjlkMzQ5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTEwOSwyOCAr
MTA5LDYgQEAgdXNpbmcgbmFtZXNwYWNlIFdURjsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWV4dGVy
biBjb25zdCBIYXNoVGFibGUgYXJyYXlDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSBhcnJheVByb3RvdHlwZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIGpzb25UYWJsZTsKLWV4
dGVybiBjb25zdCBIYXNoVGFibGUgZGF0YVZpZXdUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFi
bGUgZGF0ZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBkYXRlQ29uc3RydWN0b3JUYWJs
ZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgZXJyb3JQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBj
b25zdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxl
IG51bWJlckNvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIG51bWJlclBy
b3RvdHlwZVRhYmxlOwotSlNfRVhQT1JUREFUQSBleHRlcm4gY29uc3QgSGFzaFRhYmxlIG9iamVj
dENvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHByaXZhdGVOYW1lUHJv
dG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHJlZ0V4cFRhYmxlOwotZXh0ZXJu
IGNvbnN0IEhhc2hUYWJsZSByZWdFeHBDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSByZWdFeHBQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgc3Ry
aW5nQ29uc3RydWN0b3JUYWJsZTsKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi1leHRlcm4gY29uc3Qg
SGFzaFRhYmxlIHByb21pc2VQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7Ci0jZW5kaWYKLQogLy8gTm90ZTogUGxhdGZvcm0uaCB3
aWxsIGVuZm9yY2UgdGhhdCBFTkFCTEUoQVNTRU1CTEVSKSBpcyB0cnVlIGlmIGVpdGhlcgogLy8g
RU5BQkxFKEpJVCkgb3IgRU5BQkxFKFlBUlJfSklUKSBvciBib3RoIGFyZSBlbmFibGVkLiBUaGUg
Y29kZSBiZWxvdwogLy8ganVzdCBjaGVja3MgZm9yIEVOQUJMRShKSVQpIG9yIEVOQUJMRShZQVJS
X0pJVCkgd2l0aCB0aGlzIHByZW1pc2UgaW4gbWluZC4KQEAgLTE3MiwyNyArMTUwLDYgQEAgVk06
OlZNKFZNVHlwZSB2bVR5cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQogICAgICwgdm1UeXBlKHZtVHlw
ZSkKICAgICAsIGNsaWVudERhdGEoMCkKICAgICAsIHRvcENhbGxGcmFtZShDYWxsRnJhbWU6Om5v
Q2FsbGVyKCkpCi0gICAgLCBhcnJheUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hU
YWJsZShKU0M6OmFycmF5Q29uc3RydWN0b3JUYWJsZSkpKQotICAgICwgYXJyYXlQcm90b3R5cGVU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6YXJyYXlQcm90b3R5cGVUYWJsZSkpKQot
ICAgICwgYm9vbGVhblByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpi
b29sZWFuUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGRhdGFWaWV3VGFibGUoYWRvcHRQdHIobmV3
IEhhc2hUYWJsZShKU0M6OmRhdGFWaWV3VGFibGUpKSkKLSAgICAsIGRhdGVUYWJsZShhZG9wdFB0
cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZVRhYmxlKSkpCi0gICAgLCBkYXRlQ29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUpKSkK
LSAgICAsIGVycm9yUHJvdG90eXBlVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OmVy
cm9yUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGdsb2JhbE9iamVjdFRhYmxlKGFkb3B0UHRyKG5l
dyBIYXNoVGFibGUoSlNDOjpnbG9iYWxPYmplY3RUYWJsZSkpKQotICAgICwganNvblRhYmxlKGFk
b3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpqc29uVGFibGUpKSkKLSAgICAsIG51bWJlckNvbnN0
cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6Om51bWJlckNvbnN0cnVjdG9y
VGFibGUpKSkKLSAgICAsIG51bWJlclByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFi
bGUoSlNDOjpudW1iZXJQcm90b3R5cGVUYWJsZSkpKQotICAgICwgb2JqZWN0Q29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6b2JqZWN0Q29uc3RydWN0b3JUYWJsZSkp
KQotICAgICwgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxl
KEpTQzo6cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSkpKQotICAgICwgcmVnRXhwVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnJlZ0V4cFRhYmxlKSkpCi0gICAgLCByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpyZWdFeHBDb25zdHJ1Y3Rv
clRhYmxlKSkpCi0gICAgLCByZWdFeHBQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRh
YmxlKEpTQzo6cmVnRXhwUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIHN0cmluZ0NvbnN0cnVjdG9y
VGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnN0cmluZ0NvbnN0cnVjdG9yVGFibGUp
KSkKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi0gICAgLCBwcm9taXNlUHJvdG90eXBlVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21pc2VQcm90b3R5cGVUYWJsZSkpKQotICAgICwg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21p
c2VDb25zdHJ1Y3RvclRhYmxlKSkpCi0jZW5kaWYKICAgICAsIG1fYXRvbWljU3RyaW5nVGFibGUo
dm1UeXBlID09IERlZmF1bHQgPyB3dGZUaHJlYWREYXRhKCkuYXRvbWljU3RyaW5nVGFibGUoKSA6
IG5ldyBBdG9taWNTdHJpbmdUYWJsZSkKICAgICAsIHByb3BlcnR5TmFtZXMobnVsbHB0cikKICAg
ICAsIGVtcHR5TGlzdChuZXcgTWFya2VkQXJndW1lbnRCdWZmZXIpCkBAIC0zNjEsMjggKzMxOCw2
IEBAIFZNOjp+Vk0oKQogICAgIGludGVycHJldGVyID0gcmVpbnRlcnByZXRfY2FzdDxJbnRlcnBy
ZXRlcio+KDB4YmJhZGJlZWYpOwogI2VuZGlmCiAKLSAgICBhcnJheVByb3RvdHlwZVRhYmxlLT5k
ZWxldGVUYWJsZSgpOwotICAgIGFycmF5Q29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUoKTsK
LSAgICBib29sZWFuUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZGF0YVZpZXdU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBkYXRlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAg
ZGF0ZUNvbnN0cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZXJyb3JQcm90b3R5cGVU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBnbG9iYWxPYmplY3RUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICBqc29uVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgbnVtYmVyQ29uc3RydWN0b3JU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBudW1iZXJQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFi
bGUoKTsKLSAgICBvYmplY3RDb25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotICAgIHBy
aXZhdGVOYW1lUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwVGFibGUt
PmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwQ29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICByZWdFeHBQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBzdHJpbmdD
b25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotI2lmIEVOQUJMRShQUk9NSVNFUykKLSAg
ICBwcm9taXNlUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcHJvbWlzZUNvbnN0
cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0jZW5kaWYKLQogICAgIGRlbGV0ZSBlbXB0eUxp
c3Q7CiAKICAgICBkZWxldGUgcHJvcGVydHlOYW1lczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9W
TS5oCmluZGV4IGIzYWVjZTQuLmEyMTUwOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
aApAQCAtMjM4LDI4ICsyMzgsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgRXhlY1N0YXRl
KiB0b3BDYWxsRnJhbWU7CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxXYXRjaGRvZz4gd2F0Y2hk
b2c7CiAKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gYXJyYXlDb25zdHJ1
Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBhcnJheVBy
b3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+
IGRhdGFWaWV3VGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGRh
dGVUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gZGF0ZUNvbnN0
cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGVycm9y
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGds
b2JhbE9iamVjdFRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBq
c29uVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51bWJlckNv
bnN0cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51
bWJlclByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxl
PiBvYmplY3RDb25zdHJ1Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFz
aFRhYmxlPiBwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8
Y29uc3QgSGFzaFRhYmxlPiByZWdFeHBUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0
IEhhc2hUYWJsZT4gcmVnRXhwQ29uc3RydWN0b3JUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRy
PGNvbnN0IEhhc2hUYWJsZT4gcmVnRXhwUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93
blB0cjxjb25zdCBIYXNoVGFibGU+IHN0cmluZ0NvbnN0cnVjdG9yVGFibGU7Ci0jaWYgRU5BQkxF
KFBST01JU0VTKQotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBwcm9taXNl
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IHBy
b21pc2VDb25zdHJ1Y3RvclRhYmxlOwotI2VuZGlmCi0KICAgICAgICAgU3Ryb25nPFN0cnVjdHVy
ZT4gc3RydWN0dXJlU3RydWN0dXJlOwogICAgICAgICBTdHJvbmc8U3RydWN0dXJlPiBzdHJ1Y3R1
cmVSYXJlRGF0YVN0cnVjdHVyZTsKICAgICAgICAgU3Ryb25nPFN0cnVjdHVyZT4gZGVidWdnZXJT
Y29wZVN0cnVjdHVyZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IDAzYWY3M2UuLjlkZTg2YmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcApA
QCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdl
YWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBXZWFrTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwQ29uc3RydWN0b3IpIH07CiAK
IHZvaWQgV2Vha01hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFdlYWtNYXBQ
cm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1dlYWtNYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBEYXRhLmNwcAppbmRleCAyMjRiZThhLi5kY2RhZjIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwRGF0YS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcERhdGEuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcERhdGE6OnNfaW5mbyA9
IHsgIldlYWtNYXBEYXRhIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwRGF0
YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrTWFwRGF0YTo6c19pbmZvID0geyAiV2Vha01hcERh
dGEiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBEYXRhKSB9OwogCiBXZWFrTWFw
RGF0YTo6V2Vha01hcERhdGEoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0ud2Vha01hcERhdGFT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrTWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBQcm90b3R5cGUuY3BwCmluZGV4IDY0ZWViOGQuLjkyMTU4MzEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3
ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2Vha01hcFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFr
TWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwQ2xlYXIoRXhlY1N0YXRlKik7CiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwRGVsZXRl
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCmluZGV4IGZjOTVh
NjMuLmRjNjRjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0UmVnRXhw
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAKQEAgLTQ1LDYg
KzQ1LDEwIEBACiAjaW5jbHVkZSA8d2luZG93cy5oPgogI2VuZGlmCiAKK25hbWVzcGFjZSBKU0Mg
eworZXh0ZXJuIGNvbnN0IHN0cnVjdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Cit9CisK
IGNvbnN0IGludCBNYXhMaW5lTGVuZ3RoID0gMTAwICogMTAyNDsKIAogdXNpbmcgbmFtZXNwYWNl
IEpTQzsKQEAgLTEzMyw3ICsxMzcsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2Jq
ZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRI
T0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6
c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmpl
Y3RUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiAKIEdsb2JhbE9i
amVjdDo6R2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBhcmd1bWVudHMpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA4YmJjNjQ3Li45NjUxNWQyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMTAyNCw3ICsxMDI0LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogCiAg
ICAgYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAKICAgICBiaW5kaW5ncy9qcy9DYWxsYmFja0Z1
bmN0aW9uLmNwcAotICAgIGJpbmRpbmdzL2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAKICAg
ICBiaW5kaW5ncy9qcy9ET01XcmFwcGVyV29ybGQuY3BwCiAgICAgYmluZGluZ3MvanMvRGljdGlv
bmFyeS5jcHAKICAgICBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjdjYTdjMC4uNzVjMDllYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwOSBAQAorMjAxNC0wNy0z
MCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAgICAgICAgU3RhdGljIGhh
c2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNvdXBsZWQgd2l0aCBhIFZNLgorICAgICAg
ICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgorCisgICAgICAgIFVwZGF0ZSBmb3IgSlND
OjpDbGFzc0luZm8gY2hhbmdlcy4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZSB0aGUgSlNOb1N0
YXRpY1RhYmxlcyBtb2RlIGZvciBJREwgY29kZSBnZW5lcmF0aW9uLCB3aGljaCB3YXMgdXNlZCB0
bworICAgICAgICBlbnN1cmUgdGhhdCBlYWNoIFZNIGhhZCBpdHMgb3duIHVuaXF1ZSBjb3B5IG9m
IGNlcnRhaW4gc3RhdGljIHRhYmxlcy4KKyAgICAgICAgVGhpcyB3YXMgdXNlZCBmb3IgaW50ZXJm
YWNlcyB0aGF0IGNvdWxkIGJlIHVzZWQgaW4gd29ya2VycywgYW5kIG5vdyB0aGVyZSdzCisgICAg
ICAgIG5vIG5lZWQgdG8gbWFudWFsbHkgYW5ub3RhdGUgdGhlc2UgdGhpbmdzIGFueW1vcmUuCisK
KyAgICAgICAgQWxzbyByZW1vdmUgdGhlIERPTU9iamVjdEhhc2hUYWJsZU1hcCBjbGFzcyB0aGF0
IHdhcyBvbmx5IHVzZWQgZm9yIHRoaXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkg
R2FyZW4uCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJBbnkuaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJEYXRhYmFzZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFj
dG9yeS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCT3BlbkRCUmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIv
SURCUmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rp
b24uaWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVu
dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZS5pZGw6CisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMuaWRsOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0
YWJhc2UvU1FMRXhjZXB0aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFJlc3VsdFNldC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRT
ZXRSb3dMaXN0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0
aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3lu
Yy5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsOgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ET01P
YmplY3RIYXNoVGFibGVNYXAuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RP
TU9iamVjdEhhc2hUYWJsZU1hcC5oOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NQmluZGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRIYXNoVGFibGVGb3JHbG9iYWxE
YXRhKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OmdldFN0YXRpY1ZhbHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmcpOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NV2luZG93Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRE9NV2luZG93OjpnZXRP
d25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAoV2ViQ29yZTo6SlNET01XaW5kb3c6OnB1dCk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5jcHA6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0xvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTTG9jYXRpb246OnB1dERl
bGVnYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SlNTdG9yYWdlOjpkZWxldGVQcm9wZXJ0eSk6CisgICAgICAgIChXZWJD
b3JlOjpKU1N0b3JhZ2U6OnB1dERlbGVnYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1dv
cmtlckdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpT
Q2xpZW50RGF0YS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOgorICAgICAgICAoR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5KToKKyAgICAgICAg
KEdlbmVyYXRlSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2VuZXJhdGVDb25zdHJ1Y3Rvckhl
bHBlck1ldGhvZHMpOgorICAgICAgICAoaGFzaFRhYmxlQWNjZXNzb3IpOiBEZWxldGVkLgorICAg
ICAgICAocHJvdG90eXBlSGFzaFRhYmxlQWNjZXNzb3IpOiBEZWxldGVkLgorICAgICAgICAoY29u
c3RydWN0b3JIYXNoVGFibGVBY2Nlc3Nvcik6IERlbGV0ZWQuCisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBicmlkZ2UvYy9DUnVudGltZU9i
amVjdC5jcHA6CisgICAgICAgICogYnJpZGdlL2MvY19pbnN0YW5jZS5jcHA6CisgICAgICAgICog
YnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW06CisgICAgICAgICogYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW06
CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwOgorICAgICAgICAqIGJyaWRnZS9y
dW50aW1lX21ldGhvZC5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcDoK
KyAgICAgICAgKiBjcnlwdG8vQ3J5cHRvS2V5LmlkbDoKKyAgICAgICAgKiBjc3MvQ1NTRm9udEZh
Y2VMb2FkRXZlbnQuaWRsOgorICAgICAgICAqIGRvbS9ET01Db3JlRXhjZXB0aW9uLmlkbDoKKyAg
ICAgICAgKiBkb20vRE9NU3RyaW5nTGlzdC5pZGw6CisgICAgICAgICogZG9tL0Vycm9yRXZlbnQu
aWRsOgorICAgICAgICAqIGRvbS9FdmVudC5pZGw6CisgICAgICAgICogZG9tL0V2ZW50RXhjZXB0
aW9uLmlkbDoKKyAgICAgICAgKiBkb20vRXZlbnRMaXN0ZW5lci5pZGw6CisgICAgICAgICogZG9t
L01lc3NhZ2VDaGFubmVsLmlkbDoKKyAgICAgICAgKiBkb20vTWVzc2FnZUV2ZW50LmlkbDoKKyAg
ICAgICAgKiBkb20vTWVzc2FnZVBvcnQuaWRsOgorICAgICAgICAqIGRvbS9Qcm9ncmVzc0V2ZW50
LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0Jsb2IuaWRsOgorICAgICAgICAqIGZpbGVhcGkvRmls
ZS5pZGw6CisgICAgICAgICogZmlsZWFwaS9GaWxlRXJyb3IuaWRsOgorICAgICAgICAqIGZpbGVh
cGkvRmlsZUV4Y2VwdGlvbi5pZGw6CisgICAgICAgICogZmlsZWFwaS9GaWxlTGlzdC5pZGw6Cisg
ICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVS
ZWFkZXJTeW5jLmlkbDoKKyAgICAgICAgKiBodG1sL0RPTVVSTC5pZGw6CisgICAgICAgICogcGFn
ZS9FdmVudFNvdXJjZS5pZGw6CisgICAgICAgICogcGFnZS9Xb3JrZXJOYXZpZ2F0b3IuaWRsOgor
ICAgICAgICAqIHdvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAg
ICAqIHdvcmtlcnMvU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtl
cnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyTG9jYXRp
b24uaWRsOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5pZGw6CisgICAgICAgICogeG1s
L1hNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uLmlkbDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVl
c3RQcm9ncmVzc0V2ZW50LmlkbDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQu
aWRsOgorCiAyMDE0LTA3LTMwICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtHVEtdIEJ1aWxkIGRlcGVuZHMgb24gT3BlbkdMIEVTCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBbnkuaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQW55LmlkbAppbmRleCBmYjQ4MGM5Li40OTEx
MWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBbnku
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFueS5pZGwKQEAg
LTI3LDcgKzI3LDYgQEAKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1J
TkRFWEVEX0RBVEFCQVNFLAogICAgIEN1c3RvbVRvSlNPYmplY3QsCi0gICAgSlNOb1N0YXRpY1Rh
YmxlcwogXSBpbnRlcmZhY2UgSURCQW55IHsKICAgICAvLyBUaGlzIHNwYWNlIGlzIGludGVudGlv
bmFsbHkgbGVmdCBibGFuay4KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmlkbAppbmRleCBlMzRlYzgyLi45ODNkYmYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKQEAgLTI1LDcgKzI1LDYgQEAK
IAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1Rh
YmxlcywKIF0gaW50ZXJmYWNlIElEQkN1cnNvciB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIElE
QkFueSBzb3VyY2U7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBkaXJlY3Rpb247
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JX
aXRoVmFsdWUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
V2l0aFZhbHVlLmlkbAppbmRleCA3ZWU5MmRhLi5lMGU5YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGwKQEAg
LTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcwogXSBpbnRlcmZhY2UgSURCQ3Vyc29yV2l0aFZhbHVlIDogSURC
Q3Vyc29yIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYW55IHZhbHVlOwogfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAppbmRleCAwYjVl
NTdlLi44ZWJiODc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJEYXRhYmFzZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2UuaWRsCkBAIC0yOCw3ICsyOCw2IEBACiAgICAgQ29uZGl0aW9uYWw9SU5ERVhF
RF9EQVRBQkFTRSwKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgRXZlbnRUYXJnZXQsCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVy
YXRlVG9OYXRpdmVPYmplY3QsCiBdIGludGVyZmFjZSBJREJEYXRhYmFzZSA6IEV2ZW50VGFyZ2V0
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwK
aW5kZXggYmViN2FiZC4uYTE0NDgwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRp
dGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBs
ZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgSURCRmFjdG9yeSB7CiAgICAgW0Nh
bGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJhaXNlc0V4Y2VwdGlvbl0gSURCT3BlbkRC
UmVxdWVzdCBvcGVuKERPTVN0cmluZyBuYW1lLCBbRW5mb3JjZVJhbmdlXSBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIGxvbmcgdmVyc2lvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJJbmRleC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJJbmRleC5pZGwKaW5kZXggMzQ0ZjUxNi4uOWUzNWMzNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmlkbApAQCAtMjUsNyArMjUsNiBAQAog
CiBbCiAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKLSAgICBKU05vU3RhdGljVGFi
bGVzLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBJREJJbmRl
eCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuYW1lOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsCmluZGV4IGM4MzY3Zjcu
Ljc3ZDE2ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QktleVJhbmdlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlSYW5nZS5pZGwKQEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUlOREVY
RURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxh
Y2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgSURCS2V5UmFuZ2UgewogICAgIFtJbXBsZW1lbnRlZEFz
PWxvd2VyVmFsdWUsQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gcmVhZG9ubHkgYXR0
cmlidXRlIGFueSBsb3dlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQk9iamVjdFN0b3JlLmlkbAppbmRleCBhZTYzNTBkLi42ODM0OTM3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCkBA
IC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIElEQk9iamVjdFN0b3JlIHsKICAgICBbVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdB
cz1OdWxsXSByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCmluZGV4
IGU1NDc5Y2MuLmIwYTMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCkBAIC0yNiw3ICsyNiw2IEBACiBbCiAgICAg
Q29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05v
U3RhdGljVGFibGVzLAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAogICAgIEpTR2VuZXJhdGVU
b05hdGl2ZU9iamVjdAogXSBpbnRlcmZhY2UgSURCT3BlbkRCUmVxdWVzdCA6IElEQlJlcXVlc3Qg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVz
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbApp
bmRleCBkYjEwYTY1Li40MDRlZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbApAQCAtMzEsNyArMzEsNiBAQAogICAgIENvbmRpdGlvbmFs
PUlOREVYRURfREFUQUJBU0UsCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIEV2ZW50VGFyZ2V0
LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAg
SlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0CiBdIGludGVyZmFjZSBJREJSZXF1ZXN0IDogRXZlbnRU
YXJnZXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VHJhbnNhY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJh
bnNhY3Rpb24uaWRsCmluZGV4IGI3NzBmODkuLmQxMzdjYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5pZGwKQEAgLTI4LDcgKzI4
LDYgQEAKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEFjdGl2ZURPTU9i
amVjdCwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEpTR2Vu
ZXJhdGVUb0pTT2JqZWN0LAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKIF0gaW50ZXJm
YWNlIElEQlRyYW5zYWN0aW9uIDogRXZlbnRUYXJnZXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5pZGwKaW5k
ZXggNDkxNjNlMi4uOTlmYmRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsCkBAIC0yNSw3ICsyNSw2
IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiBdIGludGVyZmFjZSBJREJWZXJzaW9uQ2hhbmdlRXZlbnQgOiBFdmVudCB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyBvbGRWZXJzaW9uOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmc/IG5ld1ZlcnNpb247CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuaWRsCmluZGV4IGI2
NTViMDYuLjY4Yzk4MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvRGF0YWJhc2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvRGF0YWJhc2UuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmpl
Y3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNUYWJsZXMs
CiBdIGludGVyZmFjZSBEYXRhYmFzZSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmlu
ZyB2ZXJzaW9uOwogICAgIHZvaWQgY2hhbmdlVmVyc2lvbihET01TdHJpbmcgb2xkVmVyc2lvbiwg
RE9NU3RyaW5nIG5ld1ZlcnNpb24sIG9wdGlvbmFsIFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2sgY2Fs
bGJhY2ssIG9wdGlvbmFsIFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNr
LCBvcHRpb25hbCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbAppbmRleCA0YjVm
ZjJhLi42ODA0MzdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlU3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9EYXRhYmFzZVN5bmMuaWRsCkBAIC0zMSw3ICszMSw2IEBACiBbCiAgICAgTm9JbnRlcmZh
Y2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNU
YWJsZXMsCiBdIGludGVyZmFjZSBEYXRhYmFzZVN5bmMgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgdmVyc2lvbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxh
c3RFcnJvck1lc3NhZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTEVycm9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2Uv
U1FMRXJyb3IuaWRsCmluZGV4IGU0MzNlMDYuLmU2NmNmMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBp
bnRlcmZhY2UgU1FMRXJyb3IgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TEV4Y2VwdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEV4
Y2VwdGlvbi5pZGwKaW5kZXggYjk1MTFiNC4uM2I2YTljMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXhjZXB0aW9uLmlkbApAQCAtMzAsNyArMzAs
NiBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNU
YWJsZXMsCiAgICAgRG9Ob3RDaGVja0NvbnN0YW50cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tz
VlRhYmxlCiBdIGV4Y2VwdGlvbiBTUUxFeGNlcHRpb24gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsCmluZGV4IDBiODRkOWUuLjhh
NmU4OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FM
UmVzdWx0U2V0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFJlc3VsdFNldC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVj
dCwKICAgICBDb25kaXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywK
ICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBTUUxSZXN1bHRTZXQg
ewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTUUxSZXN1bHRTZXRSb3dMaXN0IHJvd3M7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3VsdFNldFJv
d0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRT
ZXRSb3dMaXN0LmlkbAppbmRleCA4MzcwNTY1Li44N2Y4Y2M0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3VsdFNldFJvd0xpc3QuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMUmVzdWx0U2V0Um93TGlzdC5p
ZGwKQEAgLTI5LDcgKzI5LDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25k
aXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1l
bnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgU1FMUmVzdWx0U2V0Um93TGlzdCB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbAppbmRl
eCBiMWJlOGIzLi5lYzRlOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbApAQCAtMjksNyArMjksNiBAQAogWwogICAg
IE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFTRSwKLSAgICBK
U05vU3RhdGljVGFibGVzLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAogXSBpbnRlcmZhY2Ug
U1FMVHJhbnNhY3Rpb24gewogICAgIFtDdXN0b21dIHZvaWQgZXhlY3V0ZVNxbChET01TdHJpbmcg
c3FsU3RhdGVtZW50LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsCmluZGV4IDliMmE0ZjUuLmIyNWNkMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rp
b25TeW5jLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRy
YW5zYWN0aW9uU3luYy5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9i
amVjdCwKICAgICBDb25kaXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgU1FMVHJhbnNh
Y3Rpb25TeW5jIHsKICAgICBbQ3VzdG9tXSBTUUxSZXN1bHRTZXQgZXhlY3V0ZVNxbChET01TdHJp
bmcgc3FsU3RhdGVtZW50LCBPYmplY3RBcnJheSBhcmd1bWVudHMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsCmluZGV4IDNmMjlhNDkuLmNl
MjU4MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9DbG9z
ZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvQ2xvc2VF
dmVudC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKICAqLwogCiBbCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50CiBdIGludGVyZmFjZSBDbG9zZUV2ZW50
IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkg
YXR0cmlidXRlIGJvb2xlYW4gd2FzQ2xlYW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCmluZGV4IGJkNWNiOWUuLmFiOWQxOWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCkBAIC0zOSw3
ICszOSw2IEBACiAgICAgQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRpb24sCiAgICAgQ29uc3RydWN0
b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIEV2ZW50VGFyZ2V0LAotICAg
IEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBXZWJTb2NrZXQgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgVVJMOyAvLyBMb3dlcmNhc2VkIC51cmwgaXMgdGhlIG9uZSBp
biB0aGUgc3BlYywgYnV0IGxlYXZpbmcgLlVSTCBmb3IgY29tcGF0aWJpbGl0eSByZWFzb25zLgog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggNTQ3MGQxNy4uZjhjN2U3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBA
IC0xNjExNSwyMCArMTYxMTUsNiBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRy
dWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXERPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiPgotICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdf
V2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnX1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
RGVidWdTdWZmaXh8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnU3VmZml4fHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
UmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVs
ZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2Vf
V2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Jl
bGVhc2VfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgIDwvQ2xDb21w
aWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NV3JhcHBlcldv
cmxkLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1
aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBA
IC0yMDkyMCw3ICsyMDkwNiw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5n
c1xqc1xDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cYmluZGluZ3NcanNcQ2FsbGJhY2tGdW5jdGlvbi5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRGljdGlvbmFyeS5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xET01XcmFwcGVyV29ybGQuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXEdDQ29udHJvbGxlci5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcSURCQmluZGluZ1V0
aWxpdGllcy5oIiAvPgpAQCAtMjEzNzEsNCArMjEzNTYsNCBAQAogICA8SW1wb3J0R3JvdXAgTGFi
ZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQ
YXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFyZ2V0cyIgLz4KICAgPC9JbXBvcnRHcm91
cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
LmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
LmZpbHRlcnMKaW5kZXggMmMyOGFiMC4uMzZmNGExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtNDI1Nyw5
ICs0MjU3LDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXENhbGxi
YWNrRnVuY3Rpb24uY3BwIj4KICAgICAgIDxGaWx0ZXI+YmluZGluZ3NcanM8L0ZpbHRlcj4KICAg
ICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXERP
TU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiPgotICAgICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmls
dGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cYmluZGlu
Z3NcanNcRE9NV3JhcHBlcldvcmxkLmNwcCI+CiAgICAgICA8RmlsdGVyPmJpbmRpbmdzXGpzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xMTQ3Miw5ICsxMTQ2OSw2IEBACiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xEaWN0aW9uYXJ5LmgiPgogICAgICAgPEZp
bHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgiPgotICAg
ICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NV3JhcHBlcldvcmxkLmgiPgogICAg
ICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTU0
NjQsNCArMTU0NTgsNCBAQAogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAg
ICA8L01BU00+CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAzYmJhYmM0Li4wOWE3ODlkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01MTQzLDgg
KzUxNDMsNiBAQAogCQlCQzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50
RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1
M0Q5MTAxMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCAqLzsgfTsKIAkJ
QkM1M0RBMkUxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0RBMkQxMTQzMTIxRTAwMEQ4
MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUJDNTNEQTQ4MTE0MzEzNEQwMDBEODE3RSAvKiBET01XcmFwcGVy
V29ybGQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAgKi87IH07Ci0J
CUJDNTNEQTYwMTE0MzE0MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTNEQTVGMTE0MzE0
MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlCQzUzREE2MjExNDMxNEJEMDAwRDgxN0Ug
LyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTNEQTYxMTE0MzE0QkQwMDBEODE3RSAvKiBET01PYmplY3RI
YXNoVGFibGVNYXAuY3BwICovOyB9OwogCQlCQzU4MjNGNTBDMEE5OERGMDA1M0YxQjUgLyogSlNI
VE1MRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzU4MjNGNDBDMEE5OERGMDA1M0YxQjUgLyogSlNIVE1MRWxlbWVudEN1c3Rv
bS5jcHAgKi87IH07CiAJCUJDNTgyNUYzMEMwQjg5MzgwMDUzRjFCNSAvKiBKU0NTU1N0eWxlRGVj
bGFyYXRpb25DdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkM1ODI1RjIwQzBCODkzODAwNTNGMUI1IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlv
bkN1c3RvbS5jcHAgKi87IH07CiAJCUJDNUExMkRGMERDMDQxNDgwMEM5QUZBRCAvKiBDU1NSZWZs
ZWN0VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkM1QTEyREQwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxlY3RWYWx1ZS5jcHAgKi87IH07
CkBAIC0xMjUzNCw4ICsxMjUzMiw2IEBACiAJCUJDNTNEOTEwMTE0MzEwQ0MwMDBEODE3RSAvKiBX
ZWJDb3JlSlNDbGllbnREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkNvcmVKU0NsaWVudERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM1M0RB
MkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBET01XcmFwcGVyV29ybGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01XcmFwcGVyV29ybGQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzUzREE1RjExNDMxNDFBMDAwRDgxN0Ug
LyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTU9iamVjdEhhc2hUYWJsZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQlCQzUzREE2MTExNDMxNEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTU9iamVjdEhhc2hUYWJsZU1h
cC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNTgyM0Y0MEMwQTk4REYwMDUz
RjFCNSAvKiBKU0hUTUxFbGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTSFRNTEVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCQzU4MjVGMjBDMEI4OTM4MDA1M0YxQjUgLyogSlNDU1NTdHlsZURlY2xhcmF0
aW9uQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NT
U3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUJDNTlERUY4MTY5REVEQzMwMDE2QUMzNCAvKiBTZXR0aW5ncy5pbiAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXR0aW5ncy5p
bjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNzY0LDggKzIwNzYwLDYgQEAKIAkJ
CQkzMTJENjdCMDE1MzU2OTFGMDA1NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgKi8sCiAJCQkJMzE2
MDIzRUYxNTMyQzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnkuaCAqLywKIAkJCQlCNTY1NzZFNzE3
REE5NEUyMDBBNTZCREMgLyogRE9NQ29uc3RydWN0b3JXaXRoRG9jdW1lbnQuaCAqLywKLQkJCQlC
QzUzREE2MTExNDMxNEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAqLywK
LQkJCQlCQzUzREE1RjExNDMxNDFBMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgg
Ki8sCiAJCQkJQkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAg
Ki8sCiAJCQkJQkM1M0RBMkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICov
LAogCQkJCTE0MzJFODQ4MEM1MTQ5M0YwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuY3BwICovLApA
QCAtMjQwNjYsNyArMjQwNjAsNiBAQAogCQkJCTg1Q0E5NkVBMEE5NjI0RTkwMDY5MENDRiAvKiBE
T01Ob3RhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVFNzExRDQwQUM1RDUzNTAwNTMyNzBG
IC8qIERPTU5vdGF0aW9uSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1NkM4QUU0MEE5
MTI2NDkwMDVDNjg3QiAvKiBET01PYmplY3QuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDNTNEQTYw
MTE0MzE0MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBIZWFkZXJzICov
LAogCQkJCTA3QUI5OTcwMThEQTNDNzQwMDE4NzcxRSAvKiBSVENJY2VTZXJ2ZXJQcml2YXRlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk4NUM3RjVEMDBBQUZCOEQ5MDA0MDE0REQgLyogRE9NT3ZlcmZs
b3dFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODU5ODlEQ0YwQUNDOEJCRDAwQTBCQzUxIC8q
IERPTU92ZXJmbG93RXZlbnRJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzYxNyw3ICsy
NzYxMCw2IEBACiAJCQkJODVBQ0FBOEUwQTlCNzU5QzAwNjcxRTkwIC8qIERPTU5vZGVMaXN0Lm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJODVDQTk2RUIwQTk2MjRFOTAwNjkwQ0NGIC8qIERPTU5vdGF0
aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODU2QzhBRTUwQTkxMjY0OTAwNUM2ODdCIC8qIERP
TU9iamVjdC5tbSBpbiBTb3VyY2VzICovLAotCQkJCUJDNTNEQTYyMTE0MzE0QkQwMDBEODE3RSAv
KiBET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODVDN0Y1RDEw
QUFGQjhEOTAwNDAxNEREIC8qIERPTU92ZXJmbG93RXZlbnQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQlFMTI4NEJENTEwNDRBMDFFMDBFQUVCNTIgLyogRE9NUGFnZVRyYW5zaXRpb25FdmVudC5tbSBp
biBTb3VyY2VzICovLAogCQkJCTFBQ0U1M0U3MEE4RDE4RTcwMDIyOTQ3RCAvKiBET01QYXJzZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
RE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NGQ2YjkxNi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01PYmpl
Y3RIYXNoVGFibGVNYXAuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAq
ICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBIYXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQot
ICogIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAgQ29weXJpZ2h0IChDKSAyMDA3IFNhbXVl
bCBXZWluaWcgPHNhbUB3ZWJraXQub3JnPgotICoKLSAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogIExpY2Vu
c2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgot
ICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0
ZXIgdmVyc2lvbi4KLSAqCi0gKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo
b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqICBNRVJDSEFOVEFCSUxJ
VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotICog
IExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICog
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJh
bCBQdWJsaWMKLSAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdy
aXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5o
IgotCi0jaW5jbHVkZSAiV2ViQ29yZUpTQ2xpZW50RGF0YS5oIgotCi11c2luZyBuYW1lc3BhY2Ug
SlNDOwotCi1uYW1lc3BhY2UgV2ViQ29yZXsKLQotRE9NT2JqZWN0SGFzaFRhYmxlTWFwJiBET01P
YmplY3RIYXNoVGFibGVNYXA6Om1hcEZvcihWTSYgdm0pCi17Ci0gICAgVk06OkNsaWVudERhdGEq
IGNsaWVudERhdGEgPSB2bS5jbGllbnREYXRhOwotICAgIEFTU0VSVChjbGllbnREYXRhKTsKLSAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8V2ViQ29yZUpTQ2xpZW50RGF0YSo+KGNsaWVudERhdGEpLT5o
YXNoVGFibGVNYXA7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDEzYmYyMDcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1
OSArMCwwIEBACi0vKgotICogIENvcHlyaWdodCAoQykgMTk5OS0yMDAxIEhhcnJpIFBvcnRlbiAo
cG9ydGVuQGtkZS5vcmcpCi0gKiAgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2
LCAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqICBDb3B5cmln
aHQgKEMpIDIwMDcgU2FtdWVsIFdlaW5pZyA8c2FtQHdlYmtpdC5vcmc+Ci0gKiAgQ29weXJpZ2h0
IChDKSAyMDA5IEdvb2dsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqICBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
Ci0gKiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFs
IFB1YmxpYwotICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgotICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLSAqCi0gKiAgVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiAgYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
LSAqICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQotICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCi0gKgotICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlv
biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIx
MTAtMTMwMSAgVVNBCi0gKi8KLQotI2lmbmRlZiBET01PYmplY3RIYXNoVGFibGVNYXBfaAotI2Rl
ZmluZSBET01PYmplY3RIYXNoVGFibGVNYXBfaAotCi0jaW5jbHVkZSA8cnVudGltZS9Mb29rdXAu
aD4KLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotCi1uYW1lc3BhY2UgSlNDIHsKLSAgICBjbGFz
cyBWTTsKLX0KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi0vLyBNYXAgZnJvbSBzdGF0aWMgSGFz
aFRhYmxlIGluc3RhbmNlcyB0byBwZXItR2xvYmFsRGF0YSBvbmVzLgotY2xhc3MgRE9NT2JqZWN0
SGFzaFRhYmxlTWFwIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgRE9NT2JqZWN0SGFzaFRhYmxlTWFw
JiBtYXBGb3IoSlNDOjpWTSYpOwotCi0gICAgfkRPTU9iamVjdEhhc2hUYWJsZU1hcCgpCi0gICAg
ewotICAgICAgICBmb3IgKEhhc2hNYXA8Y29uc3QgSlNDOjpIYXNoVGFibGUqLCBKU0M6Okhhc2hU
YWJsZT46Oml0ZXJhdG9yIGl0ZXIgPSBtX21hcC5iZWdpbigpOyBpdGVyICE9IG1fbWFwLmVuZCgp
OyArK2l0ZXIpCi0gICAgICAgICAgICBpdGVyLT52YWx1ZS5kZWxldGVUYWJsZSgpOwotICAgIH0K
LQotICAgIGNvbnN0IEpTQzo6SGFzaFRhYmxlJiBnZXQoY29uc3QgSlNDOjpIYXNoVGFibGUmIHN0
YXRpY1RhYmxlKQotICAgIHsKLSAgICAgICAgSGFzaE1hcDxjb25zdCBKU0M6Okhhc2hUYWJsZSos
IEpTQzo6SGFzaFRhYmxlPjo6aXRlcmF0b3IgaXRlciA9IG1fbWFwLmZpbmQoJnN0YXRpY1RhYmxl
KTsKLSAgICAgICAgaWYgKGl0ZXIgIT0gbV9tYXAuZW5kKCkpCi0gICAgICAgICAgICByZXR1cm4g
aXRlci0+dmFsdWU7Ci0gICAgICAgIHJldHVybiBtX21hcC5zZXQoJnN0YXRpY1RhYmxlLCBzdGF0
aWNUYWJsZS5jb3B5KCkpLml0ZXJhdG9yLT52YWx1ZTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAg
SGFzaE1hcDxjb25zdCBKU0M6Okhhc2hUYWJsZSosIEpTQzo6SGFzaFRhYmxlPiBtX21hcDsKLX07
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIERPTU9iamVjdEhhc2hUYWJs
ZU1hcF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdz
QWxsSW5PbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbElu
T25lLmNwcAppbmRleCAwYTA1ODlkLi4xMzYyNTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKQEAgLTI3LDcgKzI3LDYgQEAKIAog
I2luY2x1ZGUgIkFycmF5VmFsdWUuY3BwIgogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3Bw
IgotI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiCiAjaW5jbHVkZSAiRE9NV3Jh
cHBlcldvcmxkLmNwcCIKICNpbmNsdWRlICJEaWN0aW9uYXJ5LmNwcCIKICNpbmNsdWRlICJHQ0Nv
bnRyb2xsZXIuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01CaW5kaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5j
cHAKaW5kZXggMjdjODBmOS4uNmEwZDdjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJpbmRpbmcuY3BwCkBAIC0yNCw3ICsyNCw2IEBACiAKICNpbmNsdWRlICJDYWNoZWRT
Y3JpcHQuaCIKICNpbmNsdWRlICJET01Db25zdHJ1Y3RvcldpdGhEb2N1bWVudC5oIgotI2luY2x1
ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5oIgogI2luY2x1ZGUgIkRPTVN0cmluZ0xpc3QuaCIK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZURlc2Ny
aXB0aW9uLmgiCkBAIC01OSwxMSArNTgsNiBAQCB2b2lkIGFkZEltcHVyZVByb3BlcnR5KGNvbnN0
IEF0b21pY1N0cmluZyYgcHJvcGVydHlOYW1lKQogICAgIEpTRE9NV2luZG93Ojpjb21tb25WTSgp
LmFkZEltcHVyZVByb3BlcnR5KHByb3BlcnR5TmFtZSk7CiB9CiAKLWNvbnN0IEpTQzo6SGFzaFRh
YmxlJiBnZXRIYXNoVGFibGVGb3JHbG9iYWxEYXRhKFZNJiB2bSwgY29uc3QgSlNDOjpIYXNoVGFi
bGUmIHN0YXRpY1RhYmxlKQotewotICAgIHJldHVybiBET01PYmplY3RIYXNoVGFibGVNYXA6Om1h
cEZvcih2bSkuZ2V0KHN0YXRpY1RhYmxlKTsKLX0KLQogSlNWYWx1ZSBqc1N0cmluZ09yTnVsbChF
eGVjU3RhdGUqIGV4ZWMsIGNvbnN0IFN0cmluZyYgcykKIHsKICAgICBpZiAocy5pc051bGwoKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5kZXggYWI1ZGIwYi4u
MmVmMTM4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5k
aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKQEAg
LTU4OCwxMCArNTg4LDEwIEBAIGlubGluZSBBdG9taWNTdHJpbmcgcHJvcGVydHlOYW1lVG9BdG9t
aWNTdHJpbmcoSlNDOjpQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBET01DbGFzcz4gaW5saW5lIGNvbnN0IEpTQzo6SGFzaFRhYmxlVmFsdWUqIGdldFN0YXRp
Y1ZhbHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmcoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKLSAgICBjb25zdCBKU0M6Okhhc2hUYWJsZSog
dGFibGUgPSBET01DbGFzczo6aW5mbygpLT5wcm9wSGFzaFRhYmxlKGV4ZWMpOworICAgIGNvbnN0
IEpTQzo6SGFzaFRhYmxlKiB0YWJsZSA9IERPTUNsYXNzOjppbmZvKCktPnN0YXRpY1Byb3BIYXNo
VGFibGU7CiAgICAgaWYgKCF0YWJsZSkKICAgICAgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xv
dEVudHJ5V2l0aG91dENhY2hpbmc8dHlwZW5hbWUgRE9NQ2xhc3M6OkJhc2U+KGV4ZWMsIHByb3Bl
cnR5TmFtZSk7Ci0gICAgY29uc3QgSlNDOjpIYXNoVGFibGVWYWx1ZSogZW50cnkgPSB0YWJsZS0+
ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICBjb25zdCBKU0M6Okhhc2hUYWJsZVZhbHVl
KiBlbnRyeSA9IHRhYmxlLT5lbnRyeShwcm9wZXJ0eU5hbWUpOwogICAgIGlmICghZW50cnkpIC8v
IG5vdCBmb3VuZCwgZm9yd2FyZCB0byBwYXJlbnQKICAgICAgICAgcmV0dXJuIGdldFN0YXRpY1Zh
bHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmc8dHlwZW5hbWUgRE9NQ2xhc3M6OkJhc2U+KGV4ZWMs
IHByb3BlcnR5TmFtZSk7CiAgICAgcmV0dXJuIGVudHJ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCmluZGV4IGY1NWZiZWYuLjAxZDQzZDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5j
cHAKQEAgLTM3LDcgKzM3LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1jb25zdCBDbGFzc0luZm8gSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsg
IkRPTUdsb2JhbE9iamVjdCIsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRE9NR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9N
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJET01HbG9iYWxPYmplY3QiLCAmSlNHbG9iYWxPYmpl
Y3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTUdsb2JhbE9iamVjdCkgfTsK
IAogSlNET01HbG9iYWxPYmplY3Q6OkpTRE9NR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8RE9NV3JhcHBlcldvcmxkPiB3b3JsZCwgY29uc3QgR2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUqIGdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKQogICAgIDogSlNH
bG9iYWxPYmplY3Qodm0sIHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAppbmRleCA0YThi
NzEzLi43ODAzYWY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93QmFzZS5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIGJvb2wgc2hvdWxkQWxsb3dBY2Nl
c3NGcm9tKGNvbnN0IEpTR2xvYmFsT2JqZWN0KiB0aGlzT2JqZWN0LCBFeGVjU3RhdGUqIGUKICAg
ICByZXR1cm4gQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2luZG93KGV4
ZWMsIGFzSlNET01XaW5kb3codGhpc09iamVjdCktPmltcGwoKSk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0RPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZKU0RPTUdsb2JhbE9i
amVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93QmFzZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIs
ICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93QmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5k
b3dCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmc2hvdWxkQWxsb3dBY2Nlc3NG
cm9tLCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLCAmc2hvdWxk
SW50ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwgJnF1ZXVlVGFz
a1RvRXZlbnRMb29wLCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0QmVmb3JlVGltZW91dCB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAKaW5k
ZXggMmM5NzFlMy4uMjkyNTZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XaW5kb3dDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NV2luZG93Q3VzdG9tLmNwcApAQCAtMTgyLDcgKzE4Miw3IEBAIGJvb2wgSlNET01XaW5k
b3c6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMs
IFByb3BlcnR5CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBjb25zdCBIYXNoVGFibGVWYWx1ZSog
ZW50cnkgPSBKU0RPTVdpbmRvdzo6aW5mbygpLT5wcm9wSGFzaFRhYmxlKGV4ZWMpLT5lbnRyeShl
eGVjLCBwcm9wZXJ0eU5hbWUpOworICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IEpT
RE9NV2luZG93OjppbmZvKCktPnN0YXRpY1Byb3BIYXNoVGFibGUtPmVudHJ5KHByb3BlcnR5TmFt
ZSk7CiAgICAgaWYgKGVudHJ5KSB7CiAgICAgICAgIHNsb3Quc2V0Q2FjaGVhYmxlQ3VzdG9tKHRo
aXNPYmplY3QsIGFsbG93c0FjY2VzcyA/IGVudHJ5LT5hdHRyaWJ1dGVzKCkgOiBSZWFkT25seSB8
IERvbnREZWxldGUgfCBEb250RW51bSwgZW50cnktPnByb3BlcnR5R2V0dGVyKCkpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKQEAgLTM0NSw3ICszNDUsNyBAQCB2b2lkIEpTRE9NV2luZG93OjpwdXQo
SlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAobG9va3VwUHV0KGV4ZWMsIHByb3Bl
cnR5TmFtZSwgdGhpc09iamVjdCwgdmFsdWUsICpzX2luZm8ucHJvcEhhc2hUYWJsZShleGVjKSwg
c2xvdCkpCisgICAgaWYgKGxvb2t1cFB1dChleGVjLCBwcm9wZXJ0eU5hbWUsIHRoaXNPYmplY3Qs
IHZhbHVlLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHNsb3QpKQogICAgICAgICByZXR1
cm47CiAKICAgICBpZiAoQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2lu
ZG93KGV4ZWMsIHRoaXNPYmplY3QtPmltcGwoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCmluZGV4IDJkOGEwZWEuLjUzNjhhM2UgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCkBAIC00
MSw3ICs0MSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93U2hlbGw6OnNfaW5mbyA9IHsgIkpTRE9NV2lu
ZG93U2hlbGwiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93U2hlbGwpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dTaGVsbDo6c19pbmZv
ID0geyAiSlNET01XaW5kb3dTaGVsbCIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNET01XaW5kb3dTaGVsbCkgfTsKIAogSlNET01XaW5kb3dTaGVsbDo6SlNET01XaW5k
b3dTaGVsbChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBET01XcmFwcGVyV29ybGQmIHdv
cmxkKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzAwNzUyNS4uNzNjY2IzZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTSW1hZ2VDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU0ltYWdlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkltYWdlQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1hZ2VDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ltYWdlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkltYWdlQ29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTSW1hZ2VDb25zdHJ1Y3RvcikgfTsKIAogSlNJbWFnZUNvbnN0cnVjdG9yOjpKU0ltYWdl
Q29uc3RydWN0b3IoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiAgICAgOiBET01Db25zdHJ1Y3RvcldpdGhEb2N1bWVudChzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTG9j
YXRpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1
c3RvbS5jcHAKaW5kZXggOWYwNDRjNC4uZjE1OGEyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAKQEAgLTgyLDcgKzgyLDcgQEAgYm9vbCBK
U0xvY2F0aW9uOjpwdXREZWxlZ2F0ZShFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9w
ZXJ0eU5hbWUsIEpTVmFsdWUKIAogICAgIGJvb2wgc2FtZURvbWFpbkFjY2VzcyA9IHNob3VsZEFs
bG93QWNjZXNzVG9GcmFtZShleGVjLCBmcmFtZSk7CiAKLSAgICBjb25zdCBIYXNoVGFibGVWYWx1
ZSogZW50cnkgPSBKU0xvY2F0aW9uOjppbmZvKCktPnByb3BIYXNoVGFibGUoZXhlYyktPmVudHJ5
KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0g
SlNMb2NhdGlvbjo6aW5mbygpLT5zdGF0aWNQcm9wSGFzaFRhYmxlLT5lbnRyeShwcm9wZXJ0eU5h
bWUpOwogICAgIGlmICghZW50cnkpIHsKICAgICAgICAgaWYgKHNhbWVEb21haW5BY2Nlc3MpCiAg
ICAgICAgICAgICBKU09iamVjdDo6cHV0KHRoaXMsIGV4ZWMsIHByb3BlcnR5TmFtZSwgdmFsdWUs
IHNsb3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNTdG9yYWdl
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU3RvcmFnZUN1c3RvbS5j
cHAKaW5kZXggZGVhMDJlNS4uOTQyYzRkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNTdG9yYWdlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwCkBAIC02NCw3ICs2NCw3IEBAIGJvb2wgSlNTdG9yYWdl
OjpkZWxldGVQcm9wZXJ0eShKU0NlbGwqIGNlbGwsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlO
YW1lIHByb3BlCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHkoKSB3b3VsZCBlbmQgdXAgY2FsbGlu
ZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVkLCB3ZSBuZWVkIHRvIGNoZWNrCiAg
ICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51YWxseS4KICAgICBQcm9wZXJ0eVNs
b3Qgc2xvdCh0aGlzT2JqZWN0KTsKLSAgICBpZiAoZ2V0U3RhdGljVmFsdWVTbG90PEpTU3RvcmFn
ZSwgQmFzZT4oZXhlYywgKnNfaW5mby5wcm9wSGFzaFRhYmxlKGV4ZWMpLCB0aGlzT2JqZWN0LCBw
cm9wZXJ0eU5hbWUsIHNsb3QpKQorICAgIGlmIChnZXRTdGF0aWNWYWx1ZVNsb3Q8SlNTdG9yYWdl
LCBCYXNlPihleGVjLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHRoaXNPYmplY3QsIHBy
b3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgCiAgICAg
SlNWYWx1ZSBwcm90b3R5cGUgPSB0aGlzT2JqZWN0LT5wcm90b3R5cGUoKTsKQEAgLTEwNiw3ICsx
MDYsNyBAQCBib29sIEpTU3RvcmFnZTo6cHV0RGVsZWdhdGUoRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBKU1ZhbHVlCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHko
KSB3b3VsZCBlbmQgdXAgY2FsbGluZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVk
LCB3ZSBuZWVkIHRvIGNoZWNrCiAgICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51
YWxseS4KICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzKTsKLSAgICBpZiAoZ2V0U3RhdGljVmFs
dWVTbG90PEpTU3RvcmFnZSwgQmFzZT4oZXhlYywgKnNfaW5mby5wcm9wSGFzaFRhYmxlKGV4ZWMp
LCB0aGlzLCBwcm9wZXJ0eU5hbWUsIHNsb3QpKQorICAgIGlmIChnZXRTdGF0aWNWYWx1ZVNsb3Q8
SlNTdG9yYWdlLCBCYXNlPihleGVjLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHRoaXMs
IHByb3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIEpTVmFs
dWUgcHJvdG90eXBlID0gdGhpcy0+cHJvdG90eXBlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKaW5kZXggOTRmMTg5
Mi4uYTM0ZDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3Jr
ZXJHbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
V29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcApAQCAtNDUsNyArNDUsNyBAQCB1c2luZyBuYW1lc3Bh
Y2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtl
ckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmSlNET01H
bG9iYWxPYmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckds
b2JhbFNjb3BlQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlQmFz
ZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsK
IAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6
OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxvd3NBY2Nlc3NGcm9tLCAmc3VwcG9y
dHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLCAmc2hvdWxkSW50ZXJydXB0U2Ny
aXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwgJnF1ZXVlVGFza1RvRXZlbnRMb29w
LCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0QmVmb3JlVGltZW91dCB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmgKaW5kZXggOTg5OThhNy4u
NjU0NTEzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpT
Q2xpZW50RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0Ns
aWVudERhdGEuaApAQCAtMjMsNyArMjMsNiBAQAogI2RlZmluZSBXZWJDb3JlSlNDbGllbnREYXRh
X2gKIAogI2luY2x1ZGUgIkRPTVdyYXBwZXJXb3JsZC5oIgotI2luY2x1ZGUgIkRPTU9iamVjdEhh
c2hUYWJsZU1hcC5oIgogI2luY2x1ZGUgIldlYkNvcmVUeXBlZEFycmF5Q29udHJvbGxlci5oIgog
I2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNzIs
OCArNzEsNiBAQCBwdWJsaWM6CiAgICAgICAgIG1fd29ybGRTZXQucmVtb3ZlKCZ3b3JsZCk7CiAg
ICAgfQogCi0gICAgRE9NT2JqZWN0SGFzaFRhYmxlTWFwIGhhc2hUYWJsZU1hcDsKLQogcHJpdmF0
ZToKICAgICBIYXNoU2V0PERPTVdyYXBwZXJXb3JsZCo+IG1fd29ybGRTZXQ7CiAgICAgUmVmUHRy
PERPTVdyYXBwZXJXb3JsZD4gbV9ub3JtYWxXb3JsZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNDk1YTQ3YS4uNmJlOWVk
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KQEAgLTMzNCwzOSArMzM0LDYgQEAgc3ViIEFkZENsYXNzRm9yd2FyZElmTmVlZGVk
CiAgICAgfQogfQogCi1zdWIgaGFzaFRhYmxlQWNjZXNzb3IKLXsKLSAgICBteSAkbm9TdGF0aWNU
YWJsZXMgPSBzaGlmdDsKLSAgICBteSAkY2xhc3NOYW1lID0gc2hpZnQ7Ci0gICAgaWYgKCRub1N0
YXRpY1RhYmxlcykgewotICAgICAgICByZXR1cm4gImdldCR7Y2xhc3NOYW1lfVRhYmxlKGV4ZWMt
PnZtKCkpIjsKLSAgICB9IGVsc2UgewotICAgICAgICByZXR1cm4gIiR7Y2xhc3NOYW1lfVRhYmxl
IjsKLSAgICB9Ci19Ci0KLXN1YiBwcm90b3R5cGVIYXNoVGFibGVBY2Nlc3NvcgotewotICAgIG15
ICRub1N0YXRpY1RhYmxlcyA9IHNoaWZ0OwotICAgIG15ICRjbGFzc05hbWUgPSBzaGlmdDsKLSAg
ICBpZiAoJG5vU3RhdGljVGFibGVzKSB7Ci0gICAgICAgIHJldHVybiAiZ2V0JHtjbGFzc05hbWV9
UHJvdG90eXBlVGFibGUodm0pIjsKLSAgICB9IGVsc2UgewotICAgICAgICByZXR1cm4gIiR7Y2xh
c3NOYW1lfVByb3RvdHlwZVRhYmxlIjsKLSAgICB9Ci19Ci0KLXN1YiBjb25zdHJ1Y3Rvckhhc2hU
YWJsZUFjY2Vzc29yCi17Ci0gICAgbXkgJG5vU3RhdGljVGFibGVzID0gc2hpZnQ7Ci0gICAgbXkg
JGNvbnN0cnVjdG9yQ2xhc3NOYW1lID0gc2hpZnQ7Ci0gICAgaWYgKCRub1N0YXRpY1RhYmxlcykg
ewotICAgICAgICByZXR1cm4gImdldCR7Y29uc3RydWN0b3JDbGFzc05hbWV9VGFibGUoZXhlYy0+
dm0oKSkiOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHJldHVybiAiJHtjb25zdHJ1Y3RvckNsYXNz
TmFtZX1UYWJsZSI7Ci0gICAgfQotfQotCiBzdWIgR2V0R2VuZXJhdGVJc1JlYWNoYWJsZQogewog
ICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKQEAgLTQ2MCwxMCArNDI3LDkgQEAgc3ViIEdlbmVy
YXRlR2V0T3duUHJvcGVydHlTbG90Qm9keQogCiAgICAgaWYgKCRoYXNBdHRyaWJ1dGVzKSB7CiAg
ICAgICAgIGlmICgkaW5saW5lZCkgewotICAgICAgICAgICAgZGllICJDYW5ub3QgaW5saW5lIGlm
IE5vU3RhdGljVGFibGVzIGlzIHNldC4iIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KTsKICAgICAgICAgICAgIHB1c2goQGdldE93blByb3Bl
cnR5U2xvdEltcGwsICIgICAgcmV0dXJuICR7bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVT
bG90PCRjbGFzc05hbWUsIEJhc2U+KGV4ZWMsICppbmZvKCktPnN0YXRpY1Byb3BIYXNoVGFibGUs
IHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAgfSBlbHNlIHsK
LSAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdEltcGwsICIgICAgcmV0dXJuICR7
bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVTbG90PCRjbGFzc05hbWUsIEJhc2U+KGV4ZWMs
ICIgLiBoYXNoVGFibGVBY2Nlc3NvcigkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SlNOb1N0YXRpY1RhYmxlcyJ9LCAkY2xhc3NOYW1lKSAuICIsIHRoaXNPYmplY3QsIHByb3BlcnR5
TmFtZSwgc2xvdCk7XG4iKTsKKyAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdElt
cGwsICIgICAgcmV0dXJuICR7bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVTbG90PCRjbGFz
c05hbWUsIEJhc2U+KGV4ZWMsICR7Y2xhc3NOYW1lfVRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0
eU5hbWUsIHNsb3QpO1xuIik7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBwdXNo
KEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgIHJldHVybiBCYXNlOjpnZXRPd25Qcm9wZXJ0
eVNsb3QodGhpc09iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOwpAQCAtMTk4
MiwxNSArMTk0OCw5IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXCVjb25kaXRpb25hbHMsICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5
KTsKIAogICAgIGlmICgkanVzdEdlbmVyYXRlVmFsdWVBcnJheSkgewotICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgImNvbnN0IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5m
byA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZv
LCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxu
Iik7Ci0gICAgfSBlbHNpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTTm9T
dGF0aWNUYWJsZXMifSkgewotICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgInN0YXRpYyBjb25z
dCBIYXNoVGFibGUmIGdldCR7Y2xhc3NOYW1lfVByb3RvdHlwZVRhYmxlKFZNJiB2bSlcbiIpOwot
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwotICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICByZXR1cm4gZ2V0SGFzaFRhYmxlRm9yR2xvYmFsRGF0YSh2bSwgJHtjbGFzc05h
bWV9UHJvdG90eXBlVGFibGUpO1xuIik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxu
XG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFz
c05hbWV9UHJvdG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Qcm90
b3R5cGVcIiwgJkJhc2U6OnNfaW5mbywgMCwgZ2V0JHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUs
IENSRUFURV9NRVRIT0RfVEFCTEUoJHtjbGFzc05hbWV9UHJvdG90eXBlKSB9O1xuXG4iKTsKKyAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFzc05hbWV9UHJv
dG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Qcm90b3R5cGVcIiwg
JkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5
cGUpIH07XG5cbiIpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
Y29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlz
aWJsZUludGVyZmFjZU5hbWV9UHJvdG90eXBlXCIsICZCYXNlOjpzX2luZm8sICYke2NsYXNzTmFt
ZX1Qcm90b3R5cGVUYWJsZSwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90
b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNvbnN0IENsYXNz
SW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZh
Y2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZvLCAmJHtjbGFzc05hbWV9UHJvdG90eXBl
VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtjbGFzc05hbWV9UHJvdG90eXBlKSB9O1xuXG4i
KTsKICAgICB9CiAKICAgICBpZiAoUHJvdG90eXBlT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90
KCRpbnRlcmZhY2UpKSB7CkBAIC0yMDA1LDExICsxOTY1LDExIEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAgICAgICAgICAgICBpZiAoJG51bUNvbnN0YW50cyBlcSAwICYmICRudW1GdW5j
dGlvbnMgZXEgMCAmJiAkbnVtUHJvdG90eXBlQXR0cmlidXRlcyBlcSAwKSB7CiAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5
U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7ICAgICAgICAK
ICAgICAgICAgICAgIH0gZWxzaWYgKCRudW1Db25zdGFudHMgZXEgMCAmJiAkbnVtUHJvdG90eXBl
QXR0cmlidXRlcyBlcSAwKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVjdD4oZXhlYywgIiAuIHByb3Rv
dHlwZUhhc2hUYWJsZUFjY2Vzc29yKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U05vU3RhdGljVGFibGVzIn0sICRjbGFzc05hbWUpIC4gIiwgdGhpc09iamVjdCwgcHJvcGVydHlO
YW1lLCBzbG90KTtcbiIpOworICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsICR7Y2xhc3NOYW1l
fVByb3RvdHlwZVRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7CiAg
ICAgICAgICAgICB9IGVsc2lmICgkbnVtRnVuY3Rpb25zIGVxIDAgJiYgJG51bVByb3RvdHlwZUF0
dHJpYnV0ZXMgZXEgMCkgewotICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8JHtjbGFzc05hbWV9UHJvdG90eXBlLCBKU09iamVj
dD4oZXhlYywgIiAuIHByb3RvdHlwZUhhc2hUYWJsZUFjY2Vzc29yKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0sICRjbGFzc05hbWUpIC4gIiwgdGhp
c09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOworICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8JHtjbGFzc05hbWV9
UHJvdG90eXBlLCBKU09iamVjdD4oZXhlYywgJHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUsIHRo
aXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdldFN0YXRp
Y1Byb3BlcnR5U2xvdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUsIEpTT2JqZWN0PihleGVjLCAiIC4g
cHJvdG90eXBlSGFzaFRhYmxlQWNjZXNzb3IoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkpTTm9TdGF0aWNUYWJsZXMifSwgJGNsYXNzTmFtZSkgLiAiLCB0aGlzT2JqZWN0LCBwcm9w
ZXJ0eU5hbWUsIHNsb3QpO1xuIik7CisgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgcmV0dXJuIGdldFN0YXRpY1Byb3BlcnR5U2xvdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUs
IEpTT2JqZWN0PihleGVjLCAke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSwgdGhpc09iamVjdCwg
cHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICJ9XG5cbiIpOwogICAgICAgICB9IGVsc2lmICgkbnVtQ29uc3RhbnRz
ID4gMCB8fCAkbnVtRnVuY3Rpb25zID4gMCB8fCAkbnVtUHJvdG90eXBlQXR0cmlidXRlcyA+IDAp
IHsKQEAgLTIwNTEsMjUgKzIwMTEsMTMgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAg
ICB9CiAKICAgICAjIC0gSW5pdGlhbGl6ZSBzdGF0aWMgQ2xhc3NJbmZvIG9iamVjdAotICAgIGlm
ICgkbnVtSW5zdGFuY2VBdHRyaWJ1dGVzID4gMCAmJiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAic3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgZ2V0JHtjbGFzc05hbWV9VGFibGUoVk0mIHZtKVxu
Iik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7Ci0gICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIHJldHVybiBnZXRIYXNoVGFibGVGb3JHbG9iYWxEYXRhKHZtLCAke2Ns
YXNzTmFtZX1UYWJsZSk7XG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5cbiIp
OwotICAgIH0KLQogICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFz
c05hbWUiIC4gIjo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNl
OjpzX2luZm8sICIpOwogCi0gICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAwICYmICEk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KSB7Cisg
ICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAwKSB7CiAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiJiR7Y2xhc3NOYW1lfVRhYmxlIik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIwIik7CiAgICAgfQotICAgIGlmICgkbnVtSW5zdGFuY2VBdHRyaWJ1
dGVzID4gMCAmJiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1Rh
YmxlcyJ9KSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiLCBnZXQke2NsYXNzTmFtZX1U
YWJsZSAiKTsKLSAgICB9IGVsc2UgewotICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiwgMCAi
KTsKLSAgICB9CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIsIENSRUFURV9NRVRIT0RfVEFCTEUo
JGNsYXNzTmFtZSkgfTtcblxuIik7CiAKICAgICBteSAkaW1wbFR5cGUgPSAkaW50ZXJmYWNlTmFt
ZTsKQEAgLTQ3MjgsNyArNDY3Niw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0
aG9kcwogICAgICAgICAkbGVhc3RDb25zdHJ1Y3Rvckxlbmd0aCA9IDA7CiAgICAgfQogCi0gICAg
cHVzaChAJG91dHB1dEFycmF5LCAiY29uc3QgQ2xhc3NJbmZvICR7Y29uc3RydWN0b3JDbGFzc05h
bWV9OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Db25zdHJ1Y3RvclwiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCRjb25zdHJ1Y3RvckNsYXNz
TmFtZSkgfTtcblxuIik7CisgICAgcHVzaChAJG91dHB1dEFycmF5LCAiY29uc3QgQ2xhc3NJbmZv
ICR7Y29uc3RydWN0b3JDbGFzc05hbWV9OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNl
TmFtZX1Db25zdHJ1Y3RvclwiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KCRjb25zdHJ1Y3RvckNsYXNzTmFtZSkgfTtcblxuIik7CiAKICAgICBwdXNoKEAkb3V0cHV0QXJy
YXksICIke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6JHtjb25zdHJ1Y3RvckNsYXNzTmFtZX0oU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpXG4iKTsK
ICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgOiAke2NvbnN0cnVjdG9yUGFyZW50Q2xhc3NO
YW1lfShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdClcbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKaW5kZXggOGVkZjVlZC4uYjkwNzkw
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1
dGVzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0
ZXMudHh0CkBAIC04Miw3ICs4Miw2IEBAIEpTQ3VzdG9tVG9OYXRpdmVPYmplY3QKIEpTR2VuZXJh
dGVUb0pTT2JqZWN0CiBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QKIEpTTGVnYWN5UGFyZW50PSoK
LUpTTm9TdGF0aWNUYWJsZXMKIEpTV2luZG93RXZlbnRMaXN0ZW5lcgogTWFzcXVlcmFkZXNBc1Vu
ZGVmaW5lZAogTmFtZWRDb25zdHJ1Y3Rvcj0qCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvYy9DUnVudGltZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9DUnVu
dGltZU9iamVjdC5jcHAKaW5kZXggMmQ5NjY0NS4uZDQwYTk1OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9jL0NSdW50aW1lT2JqZWN0LmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNl
IEpTQyB7CiBuYW1lc3BhY2UgQmluZGluZ3MgewogCi1jb25zdCBDbGFzc0luZm8gQ1J1bnRpbWVP
YmplY3Q6OnNfaW5mbyA9IHsgIkNSdW50aW1lT2JqZWN0IiwgJlJ1bnRpbWVPYmplY3Q6OnNfaW5m
bywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDUnVudGltZU9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBDUnVudGltZU9iamVjdDo6c19pbmZvID0geyAiQ1J1bnRpbWVPYmplY3QiLCAmUnVu
dGltZU9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENSdW50aW1lT2JqZWN0
KSB9OwogCiBDUnVudGltZU9iamVjdDo6Q1J1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxDSW5zdGFuY2U+IGluc3RhbmNlKQogICAgIDogUnVudGlt
ZU9iamVjdCh2bSwgc3RydWN0dXJlLCBpbnN0YW5jZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9jL2NfaW5zdGFuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19p
bnN0YW5jZS5jcHAKaW5kZXggNmViMWVmZi4uNGIzZWY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL2MvY19pbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L2MvY19pbnN0YW5jZS5jcHAKQEAgLTE0Myw3ICsxNDMsNyBAQCBwcml2YXRlOgogCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gQ1J1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIkNSdW50aW1lTWV0aG9k
IiwgJlJ1bnRpbWVNZXRob2Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDUnVu
dGltZU1ldGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBDUnVudGltZU1ldGhvZDo6c19pbmZvID0g
eyAiQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1ldGhvZDo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKENSdW50aW1lTWV0aG9kKSB9OwogCiBKU1ZhbHVlIENJbnN0YW5jZTo6Z2V0TWV0
aG9kKEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0KaW5kZXggMGQw
YmJhNS4uYTQzOTQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2Jq
Q1J1bnRpbWVPYmplY3QubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1
bnRpbWVPYmplY3QubW0KQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogbmFtZXNw
YWNlIEJpbmRpbmdzIHsKIAotY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2lu
Zm8gPSB7ICJPYmpDUnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gT2JqQ1J1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lT2JqZWN0IiwgJlJ1
bnRpbWVPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU9i
amVjdCkgfTsKIAogT2JqQ1J1bnRpbWVPYmplY3Q6Ok9iakNSdW50aW1lT2JqZWN0KFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8T2JqY0luc3RhbmNlPiBpbnN0YW5jZSkK
ICAgICA6IFJ1bnRpbWVPYmplY3Qodm0sIHN0cnVjdHVyZSwgaW5zdGFuY2UpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tIGIvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQppbmRleCAzZmIzMzYyLi4wMTVhNmZi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KQEAgLTIx
OCw3ICsyMTgsNyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpD
UnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1l
dGhvZDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lTWV0aG9k
KSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJPYmpD
UnVudGltZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07CiAKIEpTVmFsdWUgT2JqY0luc3RhbmNlOjpnZXRN
ZXRob2QoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tIGIvU291
cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCmluZGV4IDM3Mjg2MjEuLmZj
NjhkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGlt
ZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KQEAg
LTE4OCw3ICsxODgsNyBAQCB1bnNpZ25lZCBpbnQgT2JqY0FycmF5OjpnZXRMZW5ndGgoKSBjb25z
dAogICAgIHJldHVybiBbX2FycmF5LmdldCgpIGNvdW50XTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IE9iamNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpjRmFsbGJhY2tPYmpl
Y3RJbXApIH07Citjb25zdCBDbGFzc0luZm8gT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpzX2luZm8g
PSB7ICJPYmpjRmFsbGJhY2tPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsKIAogT2JqY0ZhbGxiYWNrT2JqZWN0SW1w
OjpPYmpjRmFsbGJhY2tPYmplY3RJbXAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIE9iamNJbnN0YW5jZSogaSwgY29uc3QgU3RyaW5nJiBwcm9wZXJ0
eU5hbWUpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAppbmRleCBkOGZm
OWUyLi5mZWVhYjg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9h
cnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCkBA
IC0zNSw3ICszNSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFy
cmF5IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJy
YXkpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1l
QXJyYXkiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJh
eSkgfTsKIAogUnVudGltZUFycmF5OjpSdW50aW1lQXJyYXkoRXhlY1N0YXRlKiBleGVjLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQXJyYXkoZXhlYy0+dm0oKSwgc3RydWN0dXJlLCAw
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAKaW5kZXggNTRkMzYxMy4u
YThhZDlhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9k
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCkBAIC0z
OSw3ICszOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiB1c2luZyBuYW1lc3BhY2UgQmluZGluZ3M7
CiAKLWNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1lTWV0
aG9kIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVNZXRob2Q6OnNfaW5m
byA9IHsgIlJ1bnRpbWVNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07CiAKIFJ1bnRpbWVNZXRob2Q6OlJ1bnRp
bWVNZXRob2QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIE1ldGhvZCogbWV0aG9kKQogICAgIC8vIENhbGxlcnMgd2lsbCBuZWVkIHRvIHBhc3MgaW4g
dGhlIHJpZ2h0IGdsb2JhbCBvYmplY3QgY29ycmVzcG9uZGluZyB0byB0aGlzIG5hdGl2ZSBvYmpl
Y3QgIm1ldGhvZCIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9v
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAppbmRl
eCA0OGMyYzVlLi4xMGIwMWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVu
dGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVj
dC5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBuYW1lc3Bh
Y2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSdW50aW1l
T2JqZWN0OjpzX2luZm8gPSB7ICJSdW50aW1lT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFJ1
bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVPYmplY3QpIH07CiAKIFJ1bnRpbWVPYmplY3Q6
OlJ1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxJ
bnN0YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleS5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAppbmRleCBiYzE0ZGE4Li4zOTc0MmM4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbApAQCAtNDQsNyArNDQsNiBAQCBlbnVt
IEtleVVzYWdlIHsKICAgICBDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLAogICAgIEdlbmVyYXRl
SXNSZWFjaGFibGU9SW1wbCwKICAgICBJbnRlcmZhY2VOYW1lPUtleSwKLSAgICBKU05vU3RhdGlj
VGFibGVzLAogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9u
CiBdIGludGVyZmFjZSBDcnlwdG9LZXkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZUxvYWRFdmVudC5pZGwKaW5kZXggMTQ4ZWExZi4uYmMxNTA5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTRm9udEZhY2VMb2FkRXZlbnQuaWRsCkBAIC0zMSw3ICszMSw2IEBACiBbCiAgICAg
Tm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9Rk9OVF9MT0FEX0VWRU5UUywKLSAg
ICBKU05vU3RhdGljVGFibGVzLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKIF0gaW50
ZXJmYWNlIENTU0ZvbnRGYWNlTG9hZEV2ZW50IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5
RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIENTU0ZvbnRGYWNlUnVsZSBmb250
ZmFjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbAppbmRleCA1NjY0ZmUz
Li5lNGQyZTk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQ29yZUV4Y2VwdGlv
bi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaWRsCkBAIC0y
Nyw3ICsyNyw2IEBACiAgKi8KIAogWwotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgRG9Ob3RD
aGVja0NvbnN0YW50cywKICAgICBJbnRlcmZhY2VOYW1lPURPTUV4Y2VwdGlvbiwKICAgICBJbXBs
ZW1lbnRhdGlvbkxhY2tzVlRhYmxlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RP
TVN0cmluZ0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTVN0cmluZ0xpc3QuaWRsCmlu
ZGV4IDk2MThlMjQuLjI2ZWQ4YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01T
dHJpbmdMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwK
QEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIEpTQ3VzdG9tVG9OYXRpdmVPYmplY3QsCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRl
cmZhY2UgRE9NU3RyaW5nTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxv
bmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Vycm9yRXZlbnQuaWRs
IGIvU291cmNlL1dlYkNvcmUvZG9tL0Vycm9yRXZlbnQuaWRsCmluZGV4IDFjN2JiNzkuLjU5NDFi
ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FcnJvckV2ZW50LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKICAqLwog
CiBbCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50
CiBdIGludGVyZmFjZSBFcnJvckV2ZW50IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZl
bnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBtZXNzYWdlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudC5pZGwKaW5kZXggZWQ5ZDc0Yy4uOGI4OTYwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCkBA
IC0yMiw3ICsyMiw2IEBACiBbCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKICAgICBDb25zdHJ1Y3Rv
clRlbXBsYXRlPUV2ZW50LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgT2JqQ1BvbHltb3Jw
aGljLAogXSBpbnRlcmZhY2UgRXZlbnQgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RXhjZXB0aW9u
LmlkbAppbmRleCBlMDcyNzI2Li5lNzljMTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEV4Y2Vw
dGlvbi5pZGwKQEAgLTI4LDcgKzI4LDYgQEAKIAogLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwg
MjoKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIERvTm90Q2hlY2tDb25zdGFudHMsCiAg
ICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gZXhjZXB0aW9uIEV2ZW50RXhjZXB0aW9u
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudExpc3RlbmVyLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudExpc3RlbmVyLmlkbAppbmRleCA4ZTcxNDhiLi42Y2FhMjVl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRMaXN0ZW5lci5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TGlzdGVuZXIuaWRsCkBAIC0yMSw3ICsyMSw2IEBACiAv
LyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgT2JqQ1Byb3RvY29sLAogICAgIENQUFB1cmVJbnRl
cmZhY2UsCiBdIGludGVyZmFjZSBFdmVudExpc3RlbmVyIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZUNoYW5uZWwuaWRsCmluZGV4IDEzMTEyN2IuLmY0MmYwOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01l
c3NhZ2VDaGFubmVsLmlkbApAQCAtMzAsNyArMzAsNiBAQAogICAgIENvbnN0cnVjdG9yLAogICAg
IENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBKU0N1c3Rv
bU1hcmtGdW5jdGlvbiwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIE1lc3NhZ2VDaGFubmVsIHsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VFdmVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZUV2ZW50LmlkbAppbmRleCA3YzdjMWI0Li4yMjVlYzg4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTWVzc2FnZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZUV2ZW50LmlkbApAQCAtMjcsNyArMjcsNiBAQAogCiBbCiAgICAgR2xvYmFsQ29udGV4
dD1ET01XaW5kb3cmV29ya2VyR2xvYmFsU2NvcGUsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAg
ICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAogXSBpbnRlcmZhY2UgTWVzc2FnZUV2ZW50IDog
RXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBvcmlnaW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZVBvcnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0LmlkbAppbmRl
eCAyYjM0OWNiLi5kOGU5MDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZVBvcnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5pZGwKQEAgLTMw
LDcgKzMwLDYgQEAKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgQWN0aXZlRE9N
T2JqZWN0LAogICAgIEV2ZW50VGFyZ2V0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVy
ZmFjZSBNZXNzYWdlUG9ydCB7CiAvLyBXZSBuZWVkIHRvIGhhdmUgc29tZXRoaW5nIGFzIGFuIE9i
akMgYmluZGluZywgYmVjYXVzZSBNZXNzYWdlUG9ydCBpcyB1c2VkIGluIE1lc3NhZ2VFdmVudCwg
d2hpY2ggYWxyZWFkeSBoYXMgb25lLAogLy8gYnV0IHdlIGRvbid0IHdhbnQgdG8gYWN0dWFsbHkg
ZXhwb3NlIHRoZSBBUEkgd2hpbGUgaXQgaXMgaW4gZmx1eC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Qcm9ncmVzc0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9ncmVz
c0V2ZW50LmlkbAppbmRleCBlMmRkZmJiLi5lM2ExMjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vUHJvZ3Jlc3NFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1Byb2dy
ZXNzRXZlbnQuaWRsCkBAIC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25zdHJ1Y3RvclRlbXBs
YXRlPUV2ZW50LAotICAgIEpTTm9TdGF0aWNUYWJsZXMKIF0gaW50ZXJmYWNlIFByb2dyZXNzRXZl
bnQgOiBFdmVudCB7CiAgICAgW0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yXSByZWFkb25s
eSBhdHRyaWJ1dGUgYm9vbGVhbiBsZW5ndGhDb21wdXRhYmxlOwogICAgIFtJbml0aWFsaXplZEJ5
RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyBs
b2FkZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuaWRsIGIvU291
cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmlkbAppbmRleCBhYzc3YWJkLi43MDc4YzMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2ZpbGVhcGkvQmxvYi5pZGwKQEAgLTMyLDcgKzMyLDYgQEAKICAgICBHbG9iYWxDb250ZXh0
PURPTVdpbmRvdyZXb3JrZXJHbG9iYWxTY29wZSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUlt
cGwsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEN1
c3RvbUNvbnN0cnVjdG9yLAogICAgIEN1c3RvbUNvbnN0cnVjdG9yKHNlcXVlbmNlPGFueT4gYmxv
YlBhcnRzLCBvcHRpb25hbCBCbG9iUHJvcGVydHlCYWcgb3B0aW9ucyksCiBdIGludGVyZmFjZSBC
bG9iIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGUuaWRsCmluZGV4IDQ0NDYyZWUuLjhlMDk4OTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvZmlsZWFwaS9GaWxlLmlkbApAQCAtMjYsNyArMjYsNiBAQAogWwogICAgIEpTR2VuZXJhdGVU
b05hdGl2ZU9iamVjdCwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGlj
VGFibGVzCiBdIGludGVyZmFjZSBGaWxlIDogQmxvYiB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBuYW1lOwogI2lmICFkZWZpbmVkKExBTkdVQUdFX0dPQkpFQ1QpIHx8ICFMQU5H
VUFHRV9HT0JKRUNUCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVFcnJv
ci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVFcnJvci5pZGwKaW5kZXggZDk2NTBm
OS4uYTRkYjA4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlRXJyb3Iu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUVycm9yLmlkbApAQCAtMjksNyAr
MjksNiBAQAogICovCiAKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIEZpbGVFcnJvciB7CiAjaWYgIWRlZmluZWQoTEFO
R1VBR0VfT0JKRUNUSVZFX0MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGVFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlRXhjZXB0aW9uLmlk
bAppbmRleCA2Y2FlN2E1Li43N2E1YTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxl
YXBpL0ZpbGVFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUV4
Y2VwdGlvbi5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwK
ICAgICBEb05vdENoZWNrQ29uc3RhbnRzLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1w
bGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gZXhjZXB0aW9uIEZpbGVFeGNlcHRpb24gewogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCmluZGV4IDI1OGY5Y2MuLjQyZDU1MzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCkBAIC0yNCw3ICsyNCw2IEBACiAgKi8KIAogWwot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIEZpbGVMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9u
ZyBsZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIu
aWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmlkbAppbmRleCAwMGI5MWEz
Li44YjMzMGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5pZGwKQEAgLTM1LDcg
KzM1LDYgQEAKICAgICBDb25zdHJ1Y3RvciwKICAgICBDb25zdHJ1Y3RvckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsCiAgICAgRXZlbnRUYXJnZXQsCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKIF0gaW50ZXJmYWNlIEZpbGVSZWFkZXIgewogICAgIC8vIHJlYWR5IHN0YXRlcwogICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IEVNUFRZID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVJlYWRlclN5bmMuaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxl
UmVhZGVyU3luYy5pZGwKaW5kZXggMWY3NzQxYy4uNWEwMjgyNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBHbG9i
YWxDb250ZXh0PVdvcmtlckdsb2JhbFNjb3BlLAogICAgIENvbnN0cnVjdG9yLAotICAgIEpTTm9T
dGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBGaWxlUmVhZGVyU3luYyB7CiAgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJhaXNlc0V4Y2VwdGlvbl0gQXJyYXlCdWZmZXIgcmVh
ZEFzQXJyYXlCdWZmZXIoQmxvYiBibG9iKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgcmVhZEFzQmluYXJ5U3RyaW5nKEJs
b2IgYmxvYik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwKaW5kZXggODc2YjM0Yi4uMDg1ODA0MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvRE9NVVJMLmlkbApAQCAtMzIsNyArMzIsNiBAQAogICAgIENvbnN0cnVjdG9yUmFp
c2VzRXhjZXB0aW9uLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU0dlbmVy
YXRlVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEludGVyZmFjZU5hbWU9
VVJMLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBET01VUkwg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbAppbmRleCAxYzhhZGM5Li5lYTg4OGI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbApAQCAtMzYsNyArMzYsNiBAQAogICAgIENv
bnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBDb25zdHJ1Y3Rv
clJhaXNlc0V4Y2VwdGlvbiwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVz
LAogXSBpbnRlcmZhY2UgRXZlbnRTb3VyY2UgewogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBVUkw7IC8vIExvd2VyY2FzZWQgLnVybCBpcyB0aGUgb25lIGluIHRoZSBzcGVjLCBi
dXQgbGVhdmluZyAuVVJMIGZvciBjb21wYXRpYmlsaXR5IHJlYXNvbnMuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1dvcmtlck5hdmlnYXRvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1dvcmtlck5hdmlnYXRvci5pZGwKaW5kZXggNmY0YWQ1Ni4uODZhMWE0YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Xb3JrZXJOYXZpZ2F0b3IuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvV29ya2VyTmF2aWdhdG9yLmlkbApAQCAtMjksNyArMjksNiBAQAogWwogICAg
IE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKLSAgICBK
U05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgV29ya2VyTmF2aWdhdG9yIHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFwcE5hbWU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBhcHBWZXJzaW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbAppbmRleCBmZDNlYjlmLi5kZjdmOTY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmlkbApAQCAtMzIsNyArMzIsNiBAQAogICAgIEdsb2JhbENvbnRleHQ9RGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUsCiAgICAgQ3VzdG9tUHJveHlUb0pTT2JqZWN0LAogICAgIEpTR2Vu
ZXJhdGVUb05hdGl2ZU9iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2Ug
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CiAKICNpZiBk
ZWZpbmVkKExBTkdVQUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJUFQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaWRs
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9TaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5k
ZXggNDM5NWFmYy4uZDFhMTAzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9T
aGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9T
aGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTMzLDcgKzMzLDYgQEAKICAgICBDdXN0b21Q
cm94eVRvSlNPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U0hBUkVEX1dPUktFUlMsCiAgICAgSlNH
ZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFj
ZSBTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSA6IFdvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggNjY4ZDg4NS4uMDVlMzVhYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTMxLDcgKzMxLDYg
QEAKICAgICBKU0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IsCiAgICAgRXZl
bnRUYXJnZXQsCiAgICAgSlNMZWdhY3lQYXJlbnQ9SlNXb3JrZXJHbG9iYWxTY29wZUJhc2UsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIFdvcmtlckdsb2JhbFNjb3BlIHsKIAog
I2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5pZGwgYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbAppbmRleCA1NDUxMGQxLi44
NmM3N2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbApAQCAt
MjksNyArMjksNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V29ya2VyR2xvYmFsU2NvcGUsCiAg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFdvcmtlckxvY2F0aW9uIHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGhyZWY7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmlkbAppbmRleCA4ZGRkMzI2Li4yMTQ4NDlmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdC5pZGwKQEAgLTQyLDcgKzQyLDYgQEAgZW51bSBYTUxIdHRwUmVxdWVz
dFJlc3BvbnNlVHlwZSB7CiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25D
b250ZXh0LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIEV2ZW50VGFyZ2V0LAotICAg
IEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBYTUxIdHRwUmVxdWVzdCB7CiAgICAgLy8g
RnJvbSBYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0CiAgICAgLy8gZXZlbnQgaGFuZGxlciBhdHRy
aWJ1dGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RFeGNl
cHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uLmlk
bAppbmRleCA5ZDdmYmVmLi5mMDY5NDFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxI
dHRwUmVxdWVzdEV4Y2VwdGlvbi5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKICAqLwogCiBbCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBEb05vdENoZWNrQ29uc3RhbnRzLAogICAgIEltcGxlbWVu
dGF0aW9uTGFja3NWVGFibGUsCiBdIGV4Y2VwdGlvbiBYTUxIdHRwUmVxdWVzdEV4Y2VwdGlvbiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQu
aWRsCmluZGV4IDNmZDhlN2IuLjIxMTYyNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaWRsCkBAIC0yNCw3ICsyNCw2IEBACiAgKi8K
IAogWwotICAgIEpTTm9TdGF0aWNUYWJsZXMKIC8vIFdlIHNob3VsZCBhbHNvIGluaGVyaXQgZnJv
bSBMU1Byb2dyZXNzRXZlbnQgd2hlbiB0aGUgaWRsIGlzIGFkZGVkLgogXSBpbnRlcmZhY2UgWE1M
SHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50IDogUHJvZ3Jlc3NFdmVudCB7CiAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmcgcG9zaXRpb247CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQuaWRsIGIvU291cmNlL1dlYkNvcmUv
eG1sL1hNTEh0dHBSZXF1ZXN0VXBsb2FkLmlkbAppbmRleCA1YWRjMDExLi5hMDU1OWM4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFVwbG9hZC5pZGwKQEAgLTI5LDcgKzI5
LDYgQEAKIFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgRXZlbnRUYXJnZXQs
Ci0gICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIFhNTEh0dHBSZXF1ZXN0VXBsb2Fk
IHsKICAgICAvLyBGcm9tIFhNTEh0dHBSZXF1ZXN0RXZlbnRUYXJnZXQKICAgICAvLyBldmVudCBo
YW5kbGVyIGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA0MmEwMjM1Li5hMWI3NDI3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMDctMzAgIEFuZHJlYXMgS2xp
bmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIFN0YXRpYyBoYXNoIHRhYmxlcyBubyBs
b25nZXIgbmVlZCB0byBiZSBjb3VwbGVkIHdpdGggYSBWTS4KKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEzNTQyMT4KKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4K
KworICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL1Byb3h5SW5zdGFuY2UubW06CisgICAgICAgICog
UGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tOgorCiAyMDE0LTA3LTI3ICBQcmF0
aWsgU29sYW5raSAgPHBzb2xhbmtpQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgdW51c2Vk
IHByZWZlcmVuY2Uga2V5cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9I
b3N0ZWQvUHJveHlJbnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVk
L1Byb3h5SW5zdGFuY2UubW0KaW5kZXggNzgzMTYzZS4uMGRmMGRlYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlJbnN0YW5jZS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94eUluc3RhbmNlLm1tCkBAIC0yMDgsNyAr
MjA4LDcgQEAgcHJpdmF0ZToKICAgICB9CiB9OwogCi1jb25zdCBDbGFzc0luZm8gUHJveHlSdW50
aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJQcm94eVJ1bnRpbWVNZXRob2QiLCAmUnVudGltZU1ldGhv
ZDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFByb3h5UnVudGltZU1ldGhvZCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eVJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIlByb3h5
UnVudGltZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoUHJveHlSdW50aW1lTWV0aG9kKSB9OwogCiBKU1ZhbHVlIFByb3h5SW5zdGFuY2U6Omdl
dE1ldGhvZChKU0M6OkV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5UnVu
dGltZU9iamVjdC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5UnVu
dGltZU9iamVjdC5tbQppbmRleCBhZmFmY2RmLi5lNjZjOWYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94eVJ1bnRpbWVPYmplY3QubW0KKysrIGIvU291
cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tCkBAIC0z
NCw3ICszNCw3IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
Ci1jb25zdCBDbGFzc0luZm8gUHJveHlSdW50aW1lT2JqZWN0OjpzX2luZm8gPSB7ICJQcm94eVJ1
bnRpbWVPYmplY3QiLCAmUnVudGltZU9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFByb3h5UnVudGltZU9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBQcm94eVJ1bnRp
bWVPYmplY3Q6OnNfaW5mbyA9IHsgIlByb3h5UnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlSdW50aW1lT2JqZWN0KSB9Owog
CiBQcm94eVJ1bnRpbWVPYmplY3Q6OlByb3h5UnVudGltZU9iamVjdChWTSYgdm0sIFN0cnVjdHVy
ZSogc3RydWN0dXJlLCBQYXNzUmVmUHRyPFByb3h5SW5zdGFuY2U+IGluc3RhbmNlKQogICAgIDog
UnVudGltZU9iamVjdCh2bSwgc3RydWN0dXJlLCBpbnN0YW5jZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAwZjJj
MDViLi4yMGRhMGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMDctMzAgIEFu
ZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIFN0YXRpYyBoYXNoIHRh
YmxlcyBubyBsb25nZXIgbmVlZCB0byBiZSBjb3VwbGVkIHdpdGggYSBWTS4KKyAgICAgICAgPGh0
dHBzOi8vd2Via2l0Lm9yZy9iLzEzNTQyMT4KKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJl
eSBHYXJlbi4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0
aG9kLmNwcDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVj
dC5jcHA6CisKIDIwMTQtMDctMzAgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFtHVEtdIFJFR1JFU1NJT04ocjE3MTc0Mik6IFRlc3QgL3dlYmtp
dDIvV2ViS2l0V2ViVmlldy9kaXNhbGxvdy1tb2RhbC1kaWFsb2dzIGZhaWxzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE1ldGhvZC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE1ldGhv
ZC5jcHAKaW5kZXggNTc2YWQzZi4uMjE0ODM4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBNZXRob2QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmNwcApAQCAtNDMs
NyArNDMsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEpTTlBNZXRob2QpOwogCi1jb25zdCBDbGFzc0luZm8gSlNOUE1ldGhv
ZDo6c19pbmZvID0geyAiTlBNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBNZXRob2QpIH07Citjb25zdCBDbGFzc0luZm8gSlNO
UE1ldGhvZDo6c19pbmZvID0geyAiTlBNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZv
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBNZXRob2QpIH07CiAKIEpTTlBNZXRob2Q6OkpT
TlBNZXRob2QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIE5QSWRlbnRpZmllciBucElkZW50aWZpZXIpCiAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKGds
b2JhbE9iamVjdC0+dm0oKSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCmluZGV4IDFhYzZm
ZGEuLmNlZDkzMjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgc3RhdGlj
IE5QSWRlbnRpZmllciBucElkZW50aWZpZXJGcm9tSWRlbnRpZmllcihQcm9wZXJ0eU5hbWUgcHJv
cGVydHlOYW1lKQogICAgIHJldHVybiBzdGF0aWNfY2FzdDxOUElkZW50aWZpZXI+KElkZW50aWZp
ZXJSZXA6OmdldChuYW1lLnV0ZjgoKS5kYXRhKCkpKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEpT
TlBPYmplY3Q6OnNfaW5mbyA9IHsgIk5QT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU05QT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTlBPYmpl
Y3Q6OnNfaW5mbyA9IHsgIk5QT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShKU05QT2JqZWN0KSB9OwogCiBKU05QT2JqZWN0OjpKU05QT2JqZWN0KEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBOUFJ1bnRpbWVPYmpl
Y3RNYXAqIG9iamVjdE1hcCwgTlBPYmplY3QqIG5wT2JqZWN0KQogICAgIDogSlNEZXN0cnVjdGli
bGVPYmplY3QoZ2xvYmFsT2JqZWN0LT52bSgpLCBzdHJ1Y3R1cmUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235762</attachid>
            <date>2014-07-30 14:28:49 -0700</date>
            <delta_ts>2014-07-30 15:52:59 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-135344-3.diff</filename>
            <type>text/plain</type>
            <size>201900</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNBUElXcmFwcGVyT2JqZWN0
Lm1tIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0FQSVdyYXBwZXJPYmplY3QubW0KaW5k
ZXggODk3ZTk2Zi4uMjEyZjFhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS9KU0FQSVdyYXBwZXJPYmplY3QubW0KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9K
U0FQSVdyYXBwZXJPYmplY3QubW0KQEAgLTY4LDcgKzY4LDcgQEAgYm9vbCBKU0FQSVdyYXBwZXJP
YmplY3RIYW5kbGVPd25lcjo6aXNSZWFjaGFibGVGcm9tT3BhcXVlUm9vdHMoSlNDOjpIYW5kbGU8
SlNDOjoKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi10ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0lu
Zm8gSlNDYWxsYmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQ
SVdyYXBwZXJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQ2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxs
YmFja09iamVjdDxKU0FQSVdyYXBwZXJPYmplY3Q+OjpzX2luZm8gPSB7ICJKU0FQSVdyYXBwZXJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQ2FsbGJhY2tP
YmplY3QpIH07CiAKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNrT2JqZWN0PEpTQVBJ
V3JhcHBlck9iamVjdD46Om5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHAKaW5kZXggYjVh
ZWVlNC4uNjVlNjZkYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
YWxsYmFja0NvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
Q2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJh
Y2tDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQ2FsbGJhY2tDb25zdHJ1Y3RvciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0NvbnN0cnVjdG9yKSB9Owog
CiBKU0NhbGxiYWNrQ29uc3RydWN0b3I6OkpTQ2FsbGJhY2tDb25zdHJ1Y3RvcihKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgSlNDbGFzc1JlZiBqc0Ns
YXNzLCBKU09iamVjdENhbGxBc0NvbnN0cnVjdG9yQ2FsbGJhY2sgY2FsbGJhY2spCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVjdHVyZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0Z1bmN0aW9uLmNwcAppbmRleCBh
ZmRhYzYzLi4wNDdmY2QwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
Q2FsbGJhY2tGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0Nh
bGxiYWNrRnVuY3Rpb24uY3BwCkBAIC00Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2Fs
bGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTQ2Fs
bGJhY2tGdW5jdGlvbjo6c19pbmZvID0geyAiQ2FsbGJhY2tGdW5jdGlvbiIsICZJbnRlcm5hbEZ1
bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja0Z1bmN0aW9u
KSB9OwogCiBKU0NhbGxiYWNrRnVuY3Rpb246OkpTQ2FsbGJhY2tGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlLCBKU09iamVjdENhbGxBc0Z1bmN0aW9uQ2FsbGJhY2sgY2FsbGJh
Y2spCiAgICAgOiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0LmNwcAppbmRleCA1M2U1MWU3Li4yOWE2
MDI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja09iamVjdC5j
cHAKQEAgLTM0LDggKzM0LDggQEAKIG5hbWVzcGFjZSBKU0MgewogCiAvLyBEZWZpbmUgdGhlIHR3
byB0eXBlcyBvZiBKU0NhbGxiYWNrT2JqZWN0cyB3ZSBzdXBwb3J0LgotdGVtcGxhdGUgPD4gY29u
c3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+OjpzX2lu
Zm8gPSB7ICJDYWxsYmFja09iamVjdCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKLXRlbXBsYXRlIDw+IGNvbnN0IENsYXNzSW5m
byBKU0NhbGxiYWNrT2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6c19pbmZvID0geyAiQ2FsbGJhY2tH
bG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
Q2FsbGJhY2tPYmplY3QpIH07Cit0ZW1wbGF0ZSA8PiBjb25zdCBDbGFzc0luZm8gSlNDYWxsYmFj
a09iamVjdDxKU0Rlc3RydWN0aWJsZU9iamVjdD46OnNfaW5mbyA9IHsgIkNhbGxiYWNrT2JqZWN0
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NhbGxiYWNrT2JqZWN0
KSB9OwordGVtcGxhdGUgPD4gY29uc3QgQ2xhc3NJbmZvIEpTQ2FsbGJhY2tPYmplY3Q8SlNHbG9i
YWxPYmplY3Q+OjpzX2luZm8gPSB7ICJDYWxsYmFja0dsb2JhbE9iamVjdCIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNDYWxsYmFja09iamVjdCkgfTsKIAogdGVtcGxh
dGU8PiBjb25zdCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8SlNEZXN0cnVjdGlibGVPYmplY3Q+Ojpu
ZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKIHRlbXBsYXRlPD4gY29uc3QgYm9vbCBKU0NhbGxiYWNr
T2JqZWN0PEpTR2xvYmFsT2JqZWN0Pjo6bmVlZHNEZXN0cnVjdGlvbiA9IGZhbHNlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbSBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvT2JqQ0NhbGxiYWNrRnVuY3Rpb24ubW0KaW5kZXgg
YzYyYjczMS4uZWYxOTIyMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9P
YmpDQ2FsbGJhY2tGdW5jdGlvbi5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL09i
akNDYWxsYmFja0Z1bmN0aW9uLm1tCkBAIC01MDEsNyArNTAxLDcgQEAgc3RhdGljIEpTT2JqZWN0
UmVmIG9iakNDYWxsYmFja0Z1bmN0aW9uQ2FsbEFzQ29uc3RydWN0b3IoSlNDb250ZXh0UmVmIGNh
bGxlckNvbnQKICAgICByZXR1cm4gKEpTT2JqZWN0UmVmKXJlc3VsdDsKIH0KIAotY29uc3QgSlND
OjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rpb246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNDYWxs
YmFja0Z1bmN0aW9uKSB9OworY29uc3QgSlNDOjpDbGFzc0luZm8gT2JqQ0NhbGxiYWNrRnVuY3Rp
b246OnNfaW5mbyA9IHsgIkNhbGxiYWNrRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKE9iakNDYWxsYmFja0Z1bmN0aW9uKSB9OwogCiBPYmpDQ2FsbGJhY2tG
dW5jdGlvbjo6T2JqQ0NhbGxiYWNrRnVuY3Rpb24oSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3RDYWxsQXNGdW5jdGlvbkNhbGxiYWNrIGZ1bmN0
aW9uQ2FsbGJhY2ssIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0b3JDYWxsYmFjayBjb25zdHJ1Y3RD
YWxsYmFjaywgUGFzc093blB0cjxPYmpDQ2FsbGJhY2tGdW5jdGlvbkltcGw+IGltcGwpCiAgICAg
OiBCYXNlKHZtLCBnbG9iYWxPYmplY3QtPm9iamNDYWxsYmFja0Z1bmN0aW9uU3RydWN0dXJlKCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2MjM4NjcwLi5hYTgwMzU0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMDUgQEAKKzIwMTQtMDctMzAgIEFuZHJlYXMgS2xp
bmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIFN0YXRpYyBoYXNoIHRhYmxlcyBubyBs
b25nZXIgbmVlZCB0byBiZSBjb3VwbGVkIHdpdGggYSBWTS4KKyAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEzNTQyMT4KKworICAgICAgICBOb3cgdGhhdCB0aGUgc3RhdGljIGhhc2ggdGFi
bGVzIGFyZSB1c2luZyBjaGFyKiogaW5zdGVhZCBvZiBTdHJpbmdJbXBsKiosCisgICAgICAgIGl0
J3Mgbm8gbG9uZ2VyIG5lY2Vzc2FyeSB0byBtYWtlIHRoZW0gcGVyLVZNLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggcmVtb3ZlcyB0aGUgaG9vayBpbiBDbGFzc0luZm8gZm9yIHByb3ZpZGluZyB5b3Vy
IG93biBzdGF0aWMKKyAgICAgICAgaGFzaCB0YWJsZSBnZXR0ZXIuIEV2ZXJ5b25lIG5vdyB1c2Vz
IENsYXNzSW5mbzo6c3RhdGljUHJvcEhhc2hUYWJsZS4KKyAgICAgICAgTW9zdCBvZiB0aGlzIHBh
dGNoIGlzIHR3ZWFraW5nIENsYXNzSW5mbyBjb25zdHJ1Y3Rpb24gc2l0ZXMgdG8gcGFzcyBvbmUK
KyAgICAgICAgbGVzcyBudWxsIHBvaW50ZXIuCisKKyAgICAgICAgQWxzbyBzaW1wbGlmaWVkIExv
b2t1cC5oIHRvIHN0b3AgcmVxdWlyaW5nIEV4ZWNTdGF0ZS9WTSB0byBhY2Nlc3MgdGhlCisgICAg
ICAgIHN0YXRpYyBoYXNoIHRhYmxlcy4KKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBH
YXJlbi4KKworICAgICAgICAqIEFQSS9KU0FQSVdyYXBwZXJPYmplY3QubW06CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tG
dW5jdGlvbi5jcHA6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tPYmplY3QuY3BwOgorICAgICAg
ICAqIEFQSS9PYmpDQ2FsbGJhY2tGdW5jdGlvbi5tbToKKyAgICAgICAgKiBieXRlY29kZS9Vbmxp
bmtlZENvZGVCbG9jay5jcHA6CisgICAgICAgICogY3JlYXRlX2hhc2hfdGFibGU6CisgICAgICAg
ICogZGVidWdnZXIvRGVidWdnZXJTY29wZS5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0pTSW5q
ZWN0ZWRTY3JpcHRIb3N0LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlw
dEhvc3RQcm90b3R5cGUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxs
RnJhbWUuY3BwOgorICAgICAgICAqIGluc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90
b3R5cGUuY3BwOgorICAgICAgICAqIGludGVycHJldGVyL0NhbGxGcmFtZS5oOgorICAgICAgICAo
SlNDOjpFeGVjU3RhdGU6OmFycmF5Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAg
IChKU0M6OkV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6RXhlY1N0YXRlOjpkYXRhVmlld1RhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6RXhlY1N0YXRlOjpkYXRlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3Rh
dGU6OmRhdGVDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjplcnJvclByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpnbG9iYWxPYmplY3RUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0
ZTo6anNvblRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1iZXJD
b25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRlOjpudW1i
ZXJQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6b2Jq
ZWN0Q29uc3RydWN0b3JUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNTdGF0ZTo6
cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkV4ZWNT
dGF0ZTo6cmVnRXhwVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6OnJl
Z0V4cENvbnN0cnVjdG9yVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVjU3RhdGU6
OnJlZ0V4cFByb3RvdHlwZVRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0YXRl
OjpzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6RXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpFeGVj
U3RhdGU6OnByb21pc2VDb25zdHJ1Y3RvclRhYmxlKTogRGVsZXRlZC4KKyAgICAgICAgKiBqc2Mu
Y3BwOgorICAgICAgICAqIHBhcnNlci9MZXhlci5oOgorICAgICAgICAoSlNDOjpLZXl3b3Jkczo6
aXNLZXl3b3JkKToKKyAgICAgICAgKEpTQzo6S2V5d29yZHM6OmdldEtleXdvcmQpOgorICAgICAg
ICAqIHJ1bnRpbWUvQXJndW1lbnRzLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FyZ3VtZW50c0l0
ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJndW1lbnRzSXRlcmF0
b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlCdWZmZXJOZXV0ZXJpbmdX
YXRjaHBvaW50LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpBcnJheUNvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAg
ICAgICAqIHJ1bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0FycmF5SXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvQXJy
YXlQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpBcnJheVByb3RvdHlwZTo6Z2V0T3duUHJv
cGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgICogcnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Jv
b2xlYW5Qcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpCb29sZWFuUHJvdG90eXBlOjpnZXRP
d25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvQ2xhc3NJbmZvLmg6CisgICAgICAg
IChKU0M6OkNsYXNzSW5mbzo6aGFzU3RhdGljUHJvcGVydGllcyk6CisgICAgICAgIChKU0M6OkNs
YXNzSW5mbzo6cHJvcEhhc2hUYWJsZSk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9Db25z
b2xlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0N1c3RvbUdldHRlclNldHRlci5j
cHA6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
OjpEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGlt
ZS9EYXRlSW5zdGFuY2UuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZVByb3RvdHlwZS5jcHA6
CisgICAgICAgIChKU0M6OkRhdGVQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAg
ICAgICogcnVudGltZS9FcnJvci5jcHA6CisgICAgICAgICogcnVudGltZS9FcnJvckNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpFcnJvclByb3RvdHlw
ZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL0V4Y2VwdGlvbkhlbHBl
cnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvRXhlY3V0YWJsZS5jcHA6CisgICAgICAgICogcnVu
dGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0dldHRlclNldHRlci5jcHA6CisgICAg
ICAgICogcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pT
QVBJVmFsdWVXcmFwcGVyLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTQWN0aXZhdGlvbi5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FyZ3VtZW50c0l0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHA6
CisgICAgICAgICogcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU0FycmF5QnVmZmVyVmlldy5jcHA6CisgICAgICAgICogcnVudGltZS9KU0FycmF5SXRlcmF0
b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcDoKKyAgICAgICAg
KiBydW50aW1lL0pTQ29uc29sZS5jcHA6CisgICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3LmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAq
IHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVj
dC5jcHA6CisgICAgICAgIChKU0M6OkpTR2xvYmFsT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3Qp
OgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXAuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHA6CisgICAgICAgICogcnVudGltZS9KU05hbWVTY29wZS5jcHA6CisgICAgICAg
ICogcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTT05PYmpl
Y3QuY3BwOgorICAgICAgICAoSlNDOjpKU09OT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgor
ICAgICAgICAqIHJ1bnRpbWUvSlNPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpnZXRDbGFzc1By
b3BlcnR5TmFtZXMpOgorICAgICAgICAoSlNDOjpKU09iamVjdDo6cHV0KToKKyAgICAgICAgKEpT
Qzo6SlNPYmplY3Q6OmRlbGV0ZVByb3BlcnR5KToKKyAgICAgICAgKEpTQzo6SlNPYmplY3Q6OmZp
bmRQcm9wZXJ0eUhhc2hFbnRyeSk6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpyZWlmeVN0YXRp
Y0Z1bmN0aW9uc0ZvckRlbGV0ZSk6CisgICAgICAgICogcnVudGltZS9KU09iamVjdC5oOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNQcm9taXNlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJvbWlz
ZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNQcm9taXNlQ29uc3RydWN0b3I6Omdl
dE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5j
cHA6CisgICAgICAgICogcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwOgorICAgICAgICAo
SlNDOjpKU1Byb21pc2VQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICog
cnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9KU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTUHJveHkuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvSlNTZXQuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNTZXRJdGVyYXRv
ci5jcHA6CisgICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgICogcnVudGlt
ZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvSlNUeXBl
ZEFycmF5UHJvdG90eXBlcy5jcHA6CisgICAgICAgICogcnVudGltZS9KU1R5cGVkQXJyYXlzLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwOgorICAgICAgICAqIHJ1
bnRpbWUvSlNXZWFrTWFwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0pTV2l0aFNjb3BlLmNwcDoK
KyAgICAgICAgKiBydW50aW1lL0xvb2t1cC5jcHA6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6
Y3JlYXRlVGFibGUpOgorICAgICAgICAqIHJ1bnRpbWUvTG9va3VwLmg6CisgICAgICAgIChKU0M6
Okhhc2hUYWJsZTo6aW5pdGlhbGl6ZUlmTmVlZGVkKToKKyAgICAgICAgKEpTQzo6SGFzaFRhYmxl
OjplbnRyeSk6CisgICAgICAgIChKU0M6Okhhc2hUYWJsZTo6YmVnaW4pOgorICAgICAgICAoSlND
OjpIYXNoVGFibGU6OmVuZCk6CisgICAgICAgIChKU0M6OmdldFN0YXRpY1Byb3BlcnR5U2xvdCk6
CisgICAgICAgIChKU0M6OmdldFN0YXRpY0Z1bmN0aW9uU2xvdCk6CisgICAgICAgIChKU0M6Omdl
dFN0YXRpY1ZhbHVlU2xvdCk6CisgICAgICAgIChKU0M6Omxvb2t1cFB1dCk6CisgICAgICAgICog
cnVudGltZS9NYXBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9NYXBEYXRhLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwOgorICAgICAg
ICAqIHJ1bnRpbWUvTWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKiBydW50aW1lL01hdGhPYmplY3QuY3BwOgorICAg
ICAgICAqIHJ1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL05h
bWVJbnN0YW5jZS5jcHA6CisgICAgICAgICogcnVudGltZS9OYW1lUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6TmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAg
KiBydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
TnVtYmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOdW1iZXJDb25zdHJ1Y3Rvcjo6
Z2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL051bWJlck9iamVjdC5jcHA6
CisgICAgICAgICogcnVudGltZS9OdW1iZXJQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpO
dW1iZXJQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdCk6CisgICAgICAgICogcnVudGltZS9P
YmplY3RDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6Ok9iamVjdENvbnN0cnVjdG9yOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cDoKKyAgICAgICAgKiBydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwLmNwcDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoK
KyAgICAgICAgKEpTQzo6UmVnRXhwQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdCk6Cisg
ICAgICAgICogcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3BwOgorICAgICAgICAqIHJ1bnRp
bWUvUmVnRXhwT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6UmVnRXhwT2JqZWN0OjpnZXRPd25Q
cm9wZXJ0eVNsb3QpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwUHJvdG90eXBlLmNwcDoKKyAg
ICAgICAgKEpTQzo6UmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QpOgorICAgICAg
ICAqIHJ1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRJdGVyYXRvclByb3Rv
dHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TZXRQcm90b3R5cGUuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3BhcnNlQXJyYXlWYWx1ZU1hcC5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJp
Y3RFdmFsQWN0aXZhdGlvbi5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ0NvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNs
b3QpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoKKyAgICAgICAgKiBydW50
aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgICogcnVudGltZS9TdHJ1Y3R1cmUuY3Bw
OgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmU6OlN0cnVjdHVyZSk6CisgICAgICAgIChKU0M6OlN0
cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlvbik6CisgICAgICAgIChKU0M6OkNsYXNzSW5mbzo6aGFz
U3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMpOgorICAgICAgICAqIHJ1bnRpbWUvU3Ry
dWN0dXJlQ2hhaW4uY3BwOgorICAgICAgICAqIHJ1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEuY3Bw
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sVGFibGUuY3BwOgorICAgICAgICAqIHJ1bnRpbWUv
Vk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorICAgICAgICAoSlNDOjpWTTo6flZNKToK
KyAgICAgICAgKiBydW50aW1lL1ZNLmg6CisgICAgICAgICogcnVudGltZS9XZWFrTWFwQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAqIHJ1bnRpbWUvV2Vha01hcERhdGEuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvV2Vha01hcFByb3RvdHlwZS5jcHA6CisgICAgICAgICogdGVzdFJlZ0V4cC5jcHA6
CisKIDIwMTQtMDctMjkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW1dpbl0gTW9kaWZ5IHZlcnNpb24gbnVtYmVyaW5nIHNjaGVtZSB0byBzdXBwb3J0IDUt
dHVwbGUgdmVyc2lvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29k
ZS9VbmxpbmtlZENvZGVCbG9jay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
VW5saW5rZWRDb2RlQmxvY2suY3BwCmluZGV4IDVjMmNjNWYuLmY1YTc5YjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcApA
QCAtNDIsMTIgKzQyLDEyIEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8g
VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2VkRnVuY3Rpb25F
eGVjdXRhYmxlIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1bmN0aW9u
RXhlY3V0YWJsZSkgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6c19pbmZv
ID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFVu
bGlua2VkQ29kZUJsb2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29kZUJs
b2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Ci1j
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKLWNvbnN0IENsYXNzSW5mbyBVbmxp
bmtlZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJs
b2NrKSB9OwotY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5m
byA9IHsgIlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07Citjb25zdCBD
bGFzc0luZm8gVW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIlVubGlua2Vk
RnVuY3Rpb25FeGVjdXRhYmxlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShVbmxpbmtlZEZ1
bmN0aW9uRXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtlZENvZGVCbG9jazo6
c19pbmZvID0geyAiVW5saW5rZWRDb2RlQmxvY2siLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFVubGlua2VkQ29kZUJsb2NrKSB9OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkR2xvYmFsQ29k
ZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jayIsICZCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRHbG9iYWxDb2RlQmxvY2spIH07Citj
b25zdCBDbGFzc0luZm8gVW5saW5rZWRQcm9ncmFtQ29kZUJsb2NrOjpzX2luZm8gPSB7ICJVbmxp
bmtlZFByb2dyYW1Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFVubGlua2VkUHJvZ3JhbUNvZGVCbG9jaykgfTsKK2NvbnN0IENsYXNzSW5mbyBVbmxpbmtl
ZEV2YWxDb2RlQmxvY2s6OnNfaW5mbyA9IHsgIlVubGlua2VkRXZhbENvZGVCbG9jayIsICZCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVW5saW5rZWRFdmFsQ29kZUJsb2NrKSB9
OworY29uc3QgQ2xhc3NJbmZvIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2s6OnNfaW5mbyA9IHsg
IlVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2siLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2spIH07CiAKIHN0YXRpYyBVbmxpbmtl
ZEZ1bmN0aW9uQ29kZUJsb2NrKiBnZW5lcmF0ZUZ1bmN0aW9uQ29kZUJsb2NrKFZNJiB2bSwgVW5s
aW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUqIGV4ZWN1dGFibGUsIGNvbnN0IFNvdXJjZUNvZGUmIHNv
dXJjZSwgQ29kZVNwZWNpYWxpemF0aW9uS2luZCBraW5kLCBEZWJ1Z2dlck1vZGUgZGVidWdnZXJN
b2RlLCBQcm9maWxlck1vZGUgcHJvZmlsZXJNb2RlLCBVbmxpbmtlZEZ1bmN0aW9uS2luZCBmdW5j
dGlvbktpbmQsIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzLCBQYXJzZXJFcnJvciYgZXJyb3IpCiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvY3JlYXRlX2hhc2hfdGFibGUKaW5kZXggODhlODQ0Ny4uN2Fm
NTYzOCAxMDA3NTUKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2NyZWF0ZV9oYXNoX3RhYmxl
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9jcmVhdGVfaGFzaF90YWJsZQpAQCAtMzIwLDcg
KzMyMCw3IEBAIHN1YiBvdXRwdXQoKSB7CiAgICAgICAgICRpKys7CiAgICAgfQogICAgIHByaW50
ICJ9O1xuXG4iOwotICAgIHByaW50ICJleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSAkbmFt
ZSA9XG4iOworICAgIHByaW50ICJKU19FWFBPUlRfUFJJVkFURSBleHRlcm4gY29uc3Qgc3RydWN0
IEhhc2hUYWJsZSAkbmFtZSA9XG4iOwogICAgIHByaW50ICIgICAgXHsgJHBhY2tlZFNpemUsICRj
b21wYWN0SGFzaFNpemVNYXNrLCAkaGFzU2V0dGVyLCAkbmFtZUVudHJpZXMsIDAsICRuYW1lSW5k
ZXggXH07XG4iOwogICAgIHByaW50ICJ9IC8vIG5hbWVzcGFjZVxuIjsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dlclNjb3BlLmNwcAppbmRleCA3NmZmMzNi
Li45NTdjYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVi
dWdnZXJTY29wZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVn
Z2VyU2NvcGUuY3BwCkBAIC0zMyw3ICszMyw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoRGVidWdnZXJTY29wZSk7CiAKLWNvbnN0
IENsYXNzSW5mbyBEZWJ1Z2dlclNjb3BlOjpzX2luZm8gPSB7ICJEZWJ1Z2dlclNjb3BlIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShEZWJ1Z2dlclNjb3BlKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIERlYnVnZ2VyU2NvcGU6OnNfaW5mbyA9IHsgIkRlYnVnZ2VyU2NvcGUi
LCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERlYnVnZ2VyU2NvcGUpIH07
CiAKIERlYnVnZ2VyU2NvcGU6OkRlYnVnZ2VyU2NvcGUoVk0mIHZtKQogICAgIDogSlNOb25GaW5h
bE9iamVjdCh2bSwgdm0uZGVidWdnZXJTY29wZVN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3QuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5j
cHAKaW5kZXggMGU5NTU1Zi4uYjU4NjAxYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdC5jcHAKQEAgLTQ1LDcgKzQ1
LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIEluc3BlY3RvciB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9zdDo6c19pbmZvID0geyAiSW5qZWN0ZWRT
Y3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0lu
amVjdGVkU2NyaXB0SG9zdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0luamVjdGVkU2NyaXB0SG9z
dDo6c19pbmZvID0geyAiSW5qZWN0ZWRTY3JpcHRIb3N0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU0luamVjdGVkU2NyaXB0SG9zdCkgfTsKIAogSlNJbmplY3RlZFNj
cmlwdEhvc3Q6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIFBhc3NSZWZQdHI8SW5qZWN0ZWRTY3JpcHRIb3N0PiBpbXBsKQogICAgIDogSlNEZXN0cnVj
dGlibGVPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9pbnNwZWN0b3IvSlNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5j
cHAKaW5kZXggYjA3OTcwYS4uYWI5MTVlYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0luamVjdGVkU2NyaXB0SG9zdFByb3RvdHlw
ZS5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5cGVGdW5jdGlvbklzSFRNTEEKIAogc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNJbmplY3RlZFNjcmlwdEhvc3RQcm90b3R5
cGVBdHRyaWJ1dGVFdmFsdWF0ZShFeGVjU3RhdGUqKTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTSW5q
ZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3Qi
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3Jp
cHRIb3N0UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSW5qZWN0ZWRTY3JpcHRIb3N0
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJJbmplY3RlZFNjcmlwdEhvc3QiLCAmQmFzZTo6c19pbmZv
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlKSB9
OwogCiB2b2lkIEpTSW5qZWN0ZWRTY3JpcHRIb3N0UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihW
TSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxGcmFtZS5jcHAK
aW5kZXggMDhmZDYxOC4uNDllMWI3MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lLmNwcApAQCAtMzgsNyArMzgs
NyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBuYW1lc3BhY2UgSW5zcGVjdG9yIHsKIAotY29u
c3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxGcmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlw
dENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNK
YXZhU2NyaXB0Q2FsbEZyYW1lKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTSmF2YVNjcmlwdENhbGxG
cmFtZTo6c19pbmZvID0geyAiSmF2YVNjcmlwdENhbGxGcmFtZSIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoSlNKYXZhU2NyaXB0Q2FsbEZyYW1lKSB9OwogCiBKU0phdmFT
Y3JpcHRDYWxsRnJhbWU6OkpTSmF2YVNjcmlwdENhbGxGcmFtZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlLCBQYXNzUmVmUHRyPEphdmFTY3JpcHRDYWxsRnJhbWU+IGltcGwpCiAgICAgOiBK
U0Rlc3RydWN0aWJsZU9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9KU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGUuY3BwCmluZGV4IGY3ZmMyMWUuLjQwOWM2OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0pTSmF2YVNjcmlwdENhbGxG
cmFtZVByb3RvdHlwZS5jcHAKQEAgLTYwLDcgKzYwLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwganNKYXZhU2NyaXB0Q2FsbEZyYW1lQ29uc3RhbnRXSVRIX1NDT1BFKEV4
ZWMKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxG
cmFtZUNvbnN0YW50Q0xPU1VSRV9TQ09QRShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGpzSmF2YVNjcmlwdENhbGxGcmFtZUNvbnN0YW50Q0FUQ0hfU0NP
UEUoRXhlY1N0YXRlKik7CiAKLWNvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZv
LCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0phdmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGU6OnNf
aW5mbyA9IHsgIkphdmFTY3JpcHRDYWxsRnJhbWUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3RvdHlwZSkgfTsKIAogI2RlZmlu
ZSBKU0NfTkFUSVZFX05PTl9JTkRFWF9BQ0NFU1NPUihqc05hbWUsIGNwcE5hbWUsIGF0dHJpYnV0
ZXMpIFwKICAgICB7IFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnBy
ZXRlci9DYWxsRnJhbWUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9DYWxs
RnJhbWUuaAppbmRleCA2M2Q2YTQ4Li44MDEzMWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ludGVycHJldGVyL0NhbGxGcmFtZS5oCkBAIC04NywyNyArODcsNiBAQCBuYW1lc3BhY2Ug
SlNDICB7CiAgICAgICAgIEludGVycHJldGVyKiBpbnRlcnByZXRlcigpIHsgcmV0dXJuIHZtKCku
aW50ZXJwcmV0ZXI7IH0KICAgICAgICAgSGVhcCogaGVhcCgpIHsgcmV0dXJuICZ2bSgpLmhlYXA7
IH0KIAotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBhcnJheUNvbnN0cnVjdG9yVGFi
bGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYXJyYXlDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGFycmF5UHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0uYXJyYXlQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFz
aFRhYmxlJiBib29sZWFuUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uYm9vbGVh
blByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGFW
aWV3VGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0YVZpZXdUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBkYXRlVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0uZGF0
ZVRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGRhdGVDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLmRhdGVDb25zdHJ1Y3RvclRhYmxlOyB9Ci0gICAg
ICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIGVycm9yUHJvdG90eXBlVGFibGUoVk0mIHZtKSB7
IHJldHVybiAqdm0uZXJyb3JQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3Qg
SGFzaFRhYmxlJiBnbG9iYWxPYmplY3RUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5nbG9iYWxP
YmplY3RUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBqc29uVGFibGUo
Vk0mIHZtKSB7IHJldHVybiAqdm0uanNvblRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBI
YXNoVGFibGUmIG51bWJlckNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ubnVt
YmVyQ29uc3RydWN0b3JUYWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBu
dW1iZXJQcm90b3R5cGVUYWJsZShWTSYgdm0pIHsgcmV0dXJuICp2bS5udW1iZXJQcm90b3R5cGVU
YWJsZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiBvYmplY3RDb25zdHJ1Y3Rv
clRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZtLm9iamVjdENvbnN0cnVjdG9yVGFibGU7IH0KLSAg
ICAgICAgc3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOyB9Ci0gICAgICAg
IHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cFRhYmxlKFZNJiB2bSkgeyByZXR1cm4gKnZt
LnJlZ0V4cFRhYmxlOyB9Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHJlZ0V4cENv
bnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJldHVybiAqdm0ucmVnRXhwQ29uc3RydWN0b3JUYWJs
ZTsgfQotICAgICAgICBzdGF0aWMgY29uc3QgSGFzaFRhYmxlJiByZWdFeHBQcm90b3R5cGVUYWJs
ZShWTSYgdm0pIHsgcmV0dXJuICp2bS5yZWdFeHBQcm90b3R5cGVUYWJsZTsgfQotICAgICAgICBz
dGF0aWMgY29uc3QgSGFzaFRhYmxlJiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxlKFZNJiB2bSkgeyBy
ZXR1cm4gKnZtLnN0cmluZ0NvbnN0cnVjdG9yVGFibGU7IH0KLSNpZiBFTkFCTEUoUFJPTUlTRVMp
Ci0gICAgICAgIHN0YXRpYyBjb25zdCBIYXNoVGFibGUmIHByb21pc2VQcm90b3R5cGVUYWJsZShW
TSYgdm0pIHsgcmV0dXJuICp2bS5wcm9taXNlUHJvdG90eXBlVGFibGU7IH0KLSAgICAgICAgc3Rh
dGljIGNvbnN0IEhhc2hUYWJsZSYgcHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoVk0mIHZtKSB7IHJl
dHVybiAqdm0ucHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7IH0KLSNlbmRpZgogCiAgICAgICAgIHN0
YXRpYyBDYWxsRnJhbWUqIGNyZWF0ZShSZWdpc3RlciogY2FsbEZyYW1lQmFzZSkgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8Q2FsbEZyYW1lKj4oY2FsbEZyYW1lQmFzZSk7IH0KICAgICAgICAgUmVnaXN0
ZXIqIHJlZ2lzdGVycygpIHsgcmV0dXJuIHRoaXM7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXgg
MjA0YjhiMi4uMTE4NWVjZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTk0LDYgKzk0LDEwIEBA
CiB1c2luZyBuYW1lc3BhY2UgSlNDOwogdXNpbmcgbmFtZXNwYWNlIFdURjsKIAorbmFtZXNwYWNl
IEpTQyB7CitleHRlcm4gY29uc3Qgc3RydWN0IEhhc2hUYWJsZSBnbG9iYWxPYmplY3RUYWJsZTsK
K30KKwogbmFtZXNwYWNlIHsKIAogTk9fUkVUVVJOX1dJVEhfVkFMVUUgc3RhdGljIHZvaWQganNj
RXhpdChpbnQgc3RhdHVzKQpAQCAtNDA1LDExICs0MDksMTEgQEAgcHJpdmF0ZToKICAgICBWZWN0
b3I8aW50PiBtX3ZlY3RvcjsKIH07CiAKLWNvbnN0IENsYXNzSW5mbyBFbGVtZW50OjpzX2luZm8g
PSB7ICJFbGVtZW50IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
bGVtZW50KSB9OwotY29uc3QgQ2xhc3NJbmZvIE1hc3F1ZXJhZGVyOjpzX2luZm8gPSB7ICJNYXNx
dWVyYWRlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFzcXVl
cmFkZXIpIH07Ci1jb25zdCBDbGFzc0luZm8gUm9vdDo6c19pbmZvID0geyAiUm9vdCIsICZCYXNl
OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUm9vdCkgfTsKLWNvbnN0IENsYXNz
SW5mbyBJbXB1cmVHZXR0ZXI6OnNfaW5mbyA9IHsgIkltcHVyZUdldHRlciIsICZCYXNlOjpzX2lu
Zm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW1wdXJlR2V0dGVyKSB9OwotY29uc3QgQ2xh
c3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFycmF5IiwgJkJhc2U6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJyYXkpIH07Citjb25zdCBD
bGFzc0luZm8gRWxlbWVudDo6c19pbmZvID0geyAiRWxlbWVudCIsICZCYXNlOjpzX2luZm8sIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRWxlbWVudCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXNxdWVy
YWRlcjo6c19pbmZvID0geyAiTWFzcXVlcmFkZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKE1hc3F1ZXJhZGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIFJvb3Q6OnNfaW5m
byA9IHsgIlJvb3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJvb3Qp
IH07Citjb25zdCBDbGFzc0luZm8gSW1wdXJlR2V0dGVyOjpzX2luZm8gPSB7ICJJbXB1cmVHZXR0
ZXIiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEltcHVyZUdldHRlcikg
fTsKK2NvbnN0IENsYXNzSW5mbyBSdW50aW1lQXJyYXk6OnNfaW5mbyA9IHsgIlJ1bnRpbWVBcnJh
eSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUnVudGltZUFycmF5KSB9
OwogCiBFbGVtZW50SGFuZGxlT3duZXIqIEVsZW1lbnQ6OmhhbmRsZU93bmVyKCkKIHsKQEAgLTY0
Niw3ICs2NTAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3QgQ2xhc3NJbmZvIEds
b2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAi
Z2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmplY3RUYWJsZSwgQ1JF
QVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiBjb25zdCBHbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSBHbG9iYWxPYmplY3Q6OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxv
d3NBY2Nlc3NGcm9tLCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZv
LCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwg
MCwgJnNob3VsZEludGVycnVwdFNjcmlwdEJlZm9yZVRpbWVvdXQgfTsKIAogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL0xleGVyLmgKaW5kZXggMDcyNDFhZS4uM2ZkZDY2MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvTGV4ZXIuaApAQCAtMzcsMTIgKzM3LDEyIEBAIGNsYXNzIEtleXdvcmRz
IHsKIHB1YmxpYzoKICAgICBib29sIGlzS2V5d29yZChjb25zdCBJZGVudGlmaWVyJiBpZGVudCkg
Y29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShtX3ZtLCBp
ZGVudCk7CisgICAgICAgIHJldHVybiBtX2tleXdvcmRUYWJsZS5lbnRyeShpZGVudCk7CiAgICAg
fQogICAgIAogICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBnZXRLZXl3b3JkKGNvbnN0IElkZW50
aWZpZXImIGlkZW50KSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxl
LmVudHJ5KG1fdm0sIGlkZW50KTsKKyAgICAgICAgcmV0dXJuIG1fa2V5d29yZFRhYmxlLmVudHJ5
KGlkZW50KTsKICAgICB9CiAgICAgCiAgICAgfktleXdvcmRzKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Bcmd1bWVudHMuY3BwCmluZGV4IGIyMzJkOTkuLmI0MDZiYjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzLmNwcApAQCAtMzgsNyArMzgs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJV
Q1RJQkxFKEFyZ3VtZW50cyk7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHM6OnNfaW5mbyA9
IHsgIkFyZ3VtZW50cyIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJndW1lbnRzKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50czo6c19pbmZvID0geyAiQXJn
dW1lbnRzIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcmd1bWVudHMp
IH07CiAKIHZvaWQgQXJndW1lbnRzOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZp
c2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Bcmd1bWVudHNJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCmluZGV4IGFlNjIx
YzcuLmRmN2MxMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Fy
Z3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zNSw3ICszNSw3
IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0
b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19p
bmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0
b3IpIH07Citjb25zdCBDbGFzc0luZm8gQXJndW1lbnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19p
bmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgQXJndW1l
bnRzSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZSogcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUuY3BwCmlu
ZGV4IDE1MTQ2MzAuLmQ3OWNjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0FyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Bcmd1bWVudHNJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAgLTMxLDcg
KzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcmd1bWVudHNJ
dGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiQXJndW1lbnRzSXRlcmF0b3IiLCAmQmFzZTo6
c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90
eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoQXJndW1lbnRzSXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFyZ3VtZW50c0l0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJh
dG9yKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJn
dW1lbnRzSXRlcmF0b3JQcm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hw
b2ludC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUJ1ZmZlck5ldXRl
cmluZ1dhdGNocG9pbnQuY3BwCmluZGV4IGE2NWE1NDIuLmNhMThiZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2lu
dC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlCdWZmZXJOZXV0
ZXJpbmdXYXRjaHBvaW50LmNwcApAQCAtMzEsNyArMzEsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAK
IGNvbnN0IENsYXNzSW5mbyBBcnJheUJ1ZmZlck5ldXRlcmluZ1dhdGNocG9pbnQ6OnNfaW5mbyA9
IHsKLSAgICAiQXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwgMCwKKyAgICAi
QXJyYXlCdWZmZXJOZXV0ZXJpbmdXYXRjaHBvaW50IiwgMCwgMCwKICAgICBDUkVBVEVfTUVUSE9E
X1RBQkxFKEFycmF5QnVmZmVyTmV1dGVyaW5nV2F0Y2hwb2ludCkKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDQ0
MjkzMC4uY2ZiNjRlZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAK
IFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShBcnJheUNvbnN0cnVjdG9y
KTsKIAotY29uc3QgQ2xhc3NJbmZvIEFycmF5Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0YXRlOjphcnJheUNvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKK2Nv
bnN0IENsYXNzSW5mbyBBcnJheUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZhcnJheUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9N
RVRIT0RfVEFCTEUoQXJyYXlDb25zdHJ1Y3RvcikgfTsKIAogLyogU291cmNlIGZvciBBcnJheUNv
bnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gYXJyYXlDb25zdHJ1Y3RvclRhYmxlCkBAIC02OCw3ICs2
OCw3IEBAIHZvaWQgQXJyYXlDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBBcnJh
eVByb3RvdHlwZSogYXJyYXlQcm90b3R5cGUpCiAKIGJvb2wgQXJyYXlDb25zdHJ1Y3Rvcjo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBn
ZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgRXhlY1N0YXRlOjph
cnJheUNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxBcnJheUNvbnN0cnVjdG9y
Kj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVu
Y3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIGFycmF5Q29uc3RydWN0b3JUYWJsZSwg
anNDYXN0PEFycmF5Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwog
fQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0FycmF5SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMzQ1MWRiNi4uMjkx
YzVmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVy
YXRvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoQXJyYXlJdGVyYXRvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEFycmF5SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEFycmF5SXRlcmF0b3JDb25zdHJ1Y3RvcikgfTsKIAogdm9p
ZCBBcnJheUl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5SXRlcmF0b3JQcm90
b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclBy
b3RvdHlwZS5jcHAKaW5kZXggZWNjNTdjYi4uYzg4MDBlMyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlJdGVyYXRvclByb3RvdHlwZS5jcHAKQEAg
LTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBBcnJh
eUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJBcnJheSBJdGVyYXRvciIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJyYXlJdGVyYXRvclByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBBcnJheUl0ZXJhdG9yUHJvdG90eXBlOjpzX2luZm8gPSB7ICJB
cnJheSBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQXJy
YXlJdGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgYXJyYXlJdGVyYXRvclByb3RvdHlwZUl0ZXJhdGUoRXhlY1N0YXRlKik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5UHJvdG90eXBlLmNwcAppbmRleCBk
OGU0OGJhLi5jMzg2YWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9BcnJheVByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlQcm90b3R5cGUuY3BwCkBAIC04Nyw3ICs4Nyw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBp
c051bWVyaWNDb21wYXJlRnVuY3Rpb24oRXhlY1N0YXRlKiBleGVjLCBKU1ZhbHVlIGZ1bmN0aW9u
LCBDCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheVByb3RvdHlwZSAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNvbnN0IENsYXNzSW5mbyBBcnJheVByb3Rv
dHlwZTo6c19pbmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6
YXJyYXlQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShBcnJheVByb3RvdHlwZSl9
OworY29uc3QgQ2xhc3NJbmZvIEFycmF5UHJvdG90eXBlOjpzX2luZm8gPSB7IkFycmF5IiwgJkpT
QXJyYXk6OnNfaW5mbywgJmFycmF5UHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
QXJyYXlQcm90b3R5cGUpfTsKIAogLyogU291cmNlIGZvciBBcnJheVByb3RvdHlwZS5sdXQuaAog
QGJlZ2luIGFycmF5UHJvdG90eXBlVGFibGUgMTYKQEAgLTE0Myw3ICsxNDMsNyBAQCB2b2lkIEFy
cmF5UHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiAKIGJvb2wgQXJyYXlQcm90b3R5cGU6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEpTQXJyYXk+KGV4ZWMsIEV4ZWNTdGF0ZTo6YXJyYXlQcm90b3R5cGVUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEFycmF5UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsK
KyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTQXJyYXk+KGV4ZWMsIGFycmF5UHJv
dG90eXBlVGFibGUsIGpzQ2FzdDxBcnJheVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFt
ZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBcnJheSBG
dW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYjMxNmJl
MS4uMGEyNTA3NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9v
bGVhbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9C
b29sZWFuQ29uc3RydWN0b3IuY3BwCkBAIC0yOSw3ICsyOSw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
CiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoQm9vbGVhbkNvbnN0cnVj
dG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xl
YW5Db25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBCb29sZWFuQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShCb29sZWFuQ29uc3RydWN0b3IpIH07CiAKIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6Qm9vbGVhbkNv
bnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRlcm5hbEZ1
bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Cb29sZWFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Jvb2xlYW5PYmplY3QuY3BwCmluZGV4IDg5ZmI4M2EuLjI4Y2FkNmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5PYmplY3QuY3BwCkBAIC0yOCw3ICsyOCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoQm9vbGVhbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBCb29sZWFuT2JqZWN0Ojpz
X2luZm8gPSB7ICJCb29sZWFuIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gQm9vbGVh
bk9iamVjdDo6c19pbmZvID0geyAiQm9vbGVhbiIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShCb29sZWFuT2JqZWN0KSB9OwogCiBCb29sZWFuT2JqZWN0
OjpCb29sZWFuT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dy
YXBwZXJPYmplY3Qodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Jvb2xlYW5Qcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5jcHAKaW5kZXggNTYxODJiYS4uYmU3MzdhZSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhblByb3RvdHlwZS5j
cHAKQEAgLTM5LDcgKzM5LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Ym9vbGVhblByb3RvRnVuY1ZhbHVlT2YoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci1jb25zdCBDbGFzc0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIs
ICZCb29sZWFuT2JqZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Ym9vbGVhblByb3RvdHlwZVRh
YmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEJvb2xlYW5Qcm90b3R5cGUpIH07Citjb25zdCBDbGFz
c0luZm8gQm9vbGVhblByb3RvdHlwZTo6c19pbmZvID0geyAiQm9vbGVhbiIsICZCb29sZWFuT2Jq
ZWN0OjpzX2luZm8sICZib29sZWFuUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUo
Qm9vbGVhblByb3RvdHlwZSkgfTsKIAogLyogU291cmNlIGZvciBCb29sZWFuUHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gYm9vbGVhblByb3RvdHlwZVRhYmxlCkBAIC02NSw3ICs2NSw3IEBAIHZvaWQg
Qm9vbGVhblByb3RvdHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBKU0dsb2JhbE9iamVjdCop
CiAKIGJvb2wgQm9vbGVhblByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBv
YmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVy
dHlTbG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8Qm9vbGVh
bk9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpib29sZWFuUHJvdG90eXBlVGFibGUoZXhlYy0+dm0o
KSksIGpzQ2FzdDxCb29sZWFuUHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90
KTsKKyAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJvb2xlYW5PYmplY3Q+KGV4ZWMs
IGJvb2xlYW5Qcm90b3R5cGVUYWJsZSwganNDYXN0PEJvb2xlYW5Qcm90b3R5cGUqPihvYmplY3Qp
LCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2xhc3NJbmZvLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAppbmRleCBmN2NhYmU1Li40ZmQ0MzA5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaApAQCAtMTU0LDI1ICsxNTQs
NiBAQCBzdHJ1Y3QgQ2xhc3NJbmZvIHsKICAgICAvLyBudWxscHRyaWYgdGhlcmUgaXMgbm9uZS4K
ICAgICBjb25zdCBDbGFzc0luZm8qIHBhcmVudENsYXNzOwogCi0gICAgLy8gU3RhdGljIGhhc2gt
dGFibGUgb2YgcHJvcGVydGllcy4KLSAgICAvLyBGb3IgY2xhc3NlcyB0aGF0IGNhbiBiZSB1c2Vk
IGZyb20gbXVsdGlwbGUgdGhyZWFkcywgaXQgaXMgYWNjZXNzZWQgdmlhIGEgZ2V0dGVyIGZ1bmN0
aW9uCi0gICAgLy8gdGhhdCB3b3VsZCB0eXBpY2FsbHkgcmV0dXJuIGEgcG9pbnRlciB0byBhIHRo
cmVhZC1zcGVjaWZpYyB2YWx1ZS4KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
RXhlY1N0YXRlKiBleGVjKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hU
YWJsZUdldHRlckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFi
bGVHZXR0ZXJGdW5jdGlvbihleGVjLT52bSgpKTsKLQotICAgICAgICByZXR1cm4gc3RhdGljUHJv
cEhhc2hUYWJsZTsKLSAgICB9Ci0KLSAgICBjb25zdCBIYXNoVGFibGUqIHByb3BIYXNoVGFibGUo
Vk0mIHZtKSBjb25zdAotICAgIHsKLSAgICAgICAgaWYgKGNsYXNzUHJvcEhhc2hUYWJsZUdldHRl
ckZ1bmN0aW9uKQotICAgICAgICAgICAgcmV0dXJuICZjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJG
dW5jdGlvbih2bSk7Ci0KLSAgICAgICAgcmV0dXJuIHN0YXRpY1Byb3BIYXNoVGFibGU7Ci0gICAg
fQotCiAgICAgYm9vbCBpc1N1YkNsYXNzT2YoY29uc3QgQ2xhc3NJbmZvKiBvdGhlcikgY29uc3QK
ICAgICB7CiAgICAgICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9
IGNpLT5wYXJlbnRDbGFzcykgewpAQCAtMTg1LDE3ICsxNjYsMTUgQEAgc3RydWN0IENsYXNzSW5m
byB7CiAgICAgYm9vbCBoYXNTdGF0aWNQcm9wZXJ0aWVzKCkgY29uc3QKICAgICB7CiAgICAgICAg
IGZvciAoY29uc3QgQ2xhc3NJbmZvKiBjaSA9IHRoaXM7IGNpOyBjaSA9IGNpLT5wYXJlbnRDbGFz
cykgewotICAgICAgICAgICAgaWYgKGNpLT5zdGF0aWNQcm9wSGFzaFRhYmxlIHx8IGNpLT5jbGFz
c1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikKKyAgICAgICAgICAgIGlmIChjaS0+c3RhdGlj
UHJvcEhhc2hUYWJsZSkKICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgYm9vbCBoYXNTdGF0aWNTZXR0ZXJP
clJlYWRvbmx5UHJvcGVydGllcyhWTSYpIGNvbnN0OworICAgIGJvb2wgaGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSBjb25zdDsKIAogICAgIGNvbnN0IEhhc2hUYWJsZSogc3Rh
dGljUHJvcEhhc2hUYWJsZTsKLSAgICB0eXBlZGVmIGNvbnN0IEhhc2hUYWJsZSYgKCpDbGFzc1By
b3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbikoVk0mKTsKLSAgICBjb25zdCBDbGFzc1Byb3BIYXNo
VGFibGVHZXR0ZXJGdW5jdGlvbiBjbGFzc1Byb3BIYXNoVGFibGVHZXR0ZXJGdW5jdGlvbjsKIAog
ICAgIE1ldGhvZFRhYmxlIG1ldGhvZFRhYmxlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9Db25zb2xlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5cGUuY3BwCmluZGV4IGEyYTFlYzYuLmU5NzUxZWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbnNvbGVQcm90b3R5
cGUuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFz
c0luZm8gQ29uc29sZVByb3RvdHlwZTo6c19pbmZvID0geyAiQ29uc29sZVByb3RvdHlwZSIsICZC
YXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoQ29uc29sZVByb3RvdHlwZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBDb25zb2xlUHJvdG90eXBlOjpzX2luZm8gPSB7ICJDb25zb2xl
UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDb25zb2xl
UHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
b2xlUHJvdG9GdW5jRGVidWcoRXhlY1N0YXRlKik7CiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zb2xlUHJvdG9GdW5jRXJyb3IoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ3VzdG9tR2V0dGVyU2V0dGVyLmNwcAppbmRl
eCA5MmIwMjE5Li4wZjllMWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9DdXN0b21HZXR0ZXJTZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0N1c3RvbUdldHRlclNldHRlci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNl
IEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShDdXN0b21H
ZXR0ZXJTZXR0ZXIpOwogCi1jb25zdCBDbGFzc0luZm8gQ3VzdG9tR2V0dGVyU2V0dGVyOjpzX2lu
Zm8gPSB7ICJDdXN0b21HZXR0ZXJTZXR0ZXIiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEN1c3RvbUdldHRlclNldHRlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBDdXN0b21HZXR0ZXJTZXR0
ZXI6OnNfaW5mbyA9IHsgIkN1c3RvbUdldHRlclNldHRlciIsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoQ3VzdG9tR2V0dGVyU2V0dGVyKSB9OwogCiB2b2lkIGNhbGxDdXN0b21TZXR0ZXIoRXhl
Y1N0YXRlKiBleGVjLCBKU1ZhbHVlIGN1c3RvbUdldHRlclNldHRlciwgSlNPYmplY3QqIGJhc2Us
IEpTVmFsdWUgdGhpc1ZhbHVlLCBKU1ZhbHVlIHZhbHVlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDc2YTMxYi4uNzQ4
ZTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuY3BwCkBAIC02Niw3ICs2Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGRhdGVVVEMoRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBD
bGFzc0luZm8gRGF0ZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5h
bEZ1bmN0aW9uOjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENS
RUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIERh
dGVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6
c19pbmZvLCAmZGF0ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZUNv
bnN0cnVjdG9yKSB9OwogCiAvKiBTb3VyY2UgZm9yIERhdGVDb25zdHJ1Y3Rvci5sdXQuaAogQGJl
Z2luIGRhdGVDb25zdHJ1Y3RvclRhYmxlCkBAIC0xMTQsNyArMTE0LDcgQEAgdm9pZCBEYXRlQ29u
c3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgRGF0ZVByb3RvdHlwZSogZGF0ZVByb3Rv
dHlwZSkKIAogYm9vbCBEYXRlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVj
dCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PElu
dGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUoZXhl
Yy0+dm0oKSksIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUs
IHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SW50ZXJuYWxGdW5jdGlv
bj4oZXhlYywgZGF0ZUNvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxEYXRlQ29uc3RydWN0b3IqPihv
YmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyBFQ01BIDE1LjkuMwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZS5jcHAKaW5kZXggZDAzMTdj
Mi4uYzE3NDlmNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Rh
dGVJbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUlu
c3RhbmNlLmNwcApAQCAtMzIsNyArMzIsNyBAQCB1c2luZyBuYW1lc3BhY2UgV1RGOwogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0geyJE
YXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OworY29uc3QgQ2xhc3NJbmZvIERhdGVJbnN0YW5jZTo6c19pbmZvID0g
eyJEYXRlIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KERhdGVJbnN0YW5jZSl9OwogCiBEYXRlSW5zdGFuY2U6OkRhdGVJbnN0YW5jZShWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlUHJvdG90eXBl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCmlu
ZGV4IDljZDczNmEuLjBmYzkzZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0RhdGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0RhdGVQcm90b3R5cGUuY3BwCkBAIC00MjUsNyArNDI1LDcgQEAgc3RhdGljIGJvb2wgZmls
bFN0cnVjdHVyZXNVc2luZ0RhdGVBcmdzKEV4ZWNTdGF0ZSAqZXhlYywgaW50IG1heEFyZ3MsIGRv
dWJsZSAqbXMKICAgICByZXR1cm4gb2s7CiB9CiAKLWNvbnN0IENsYXNzSW5mbyBEYXRlUHJvdG90
eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNlOjpzX2luZm8sIDAsIEV4ZWNTdGF0
ZTo6ZGF0ZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKERhdGVQcm90b3R5cGUpfTsKK2NvbnN0
IENsYXNzSW5mbyBEYXRlUHJvdG90eXBlOjpzX2luZm8gPSB7IkRhdGUiLCAmRGF0ZUluc3RhbmNl
OjpzX2luZm8sICZkYXRlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRGF0ZVByb3RvdHlwZSl9
OwogCiAvKiBTb3VyY2UgZm9yIERhdGVQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBkYXRlVGFibGUK
QEAgLTQ5NSw3ICs0OTUsNyBAQCB2b2lkIERhdGVQcm90b3R5cGU6OmZpbmlzaENyZWF0aW9uKFZN
JiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIERhdGVQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBFeGVjU3RhdGU6OmRhdGVUYWJsZShleGVjLT52
bSgpKSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGRhdGVU
YWJsZSwganNDYXN0PERhdGVQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiAvLyBGdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmNw
cAppbmRleCBjN2FjM2E1Li45MzBiNmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FcnJvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RXJyb3IuY3BwCkBAIC0xNjAsNyArMTYwLDcgQEAgSlNPYmplY3QqIHRocm93U3ludGF4RXJyb3Io
RXhlY1N0YXRlKiBleGVjKQogICAgIHJldHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4
ZWMsIGNyZWF0ZVN5bnRheEVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgiU3ludGF4IGVycm9yIikp
KTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbjo6c19p
bmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKFN0cmljdE1vZGVUeXBlRXJyb3JGdW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJp
Y3RNb2RlVHlwZUVycm9yRnVuY3Rpb246OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpY3RNb2RlVHlwZUVycm9yRnVuY3Rpb24p
IH07CiAKIHZvaWQgU3RyaWN0TW9kZVR5cGVFcnJvckZ1bmN0aW9uOjpkZXN0cm95KEpTQ2VsbCog
Y2VsbCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKaW5kZXggOWFjYmM0Yy4uNmRhMWE0MiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNU
SUJMRShFcnJvckNvbnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29uc3RydWN0
b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEVycm9yQ29u
c3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShFcnJvckNvbnN0cnVjdG9yKSB9OwogCiBFcnJvckNvbnN0cnVjdG9yOjpF
cnJvckNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBJbnRl
cm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9FcnJvckluc3RhbmNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCmluZGV4IDQyZTdjNTMuLjc0ZjUzZTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9ySW5zdGFuY2UuY3BwCkBAIC0yOCw3
ICsyOCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoRXJyb3JJbnN0YW5jZSk7CiAKLWNvbnN0IENsYXNzSW5mbyBFcnJvckluc3Rh
bmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBF
cnJvckluc3RhbmNlOjpzX2luZm8gPSB7ICJFcnJvciIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JJbnN0YW5jZSkgfTsKIAogRXJyb3JJbnN0
YW5jZTo6RXJyb3JJbnN0YW5jZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDog
SlNOb25GaW5hbE9iamVjdCh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3JQcm90b3R5cGUuY3BwCmluZGV4IDA4MGI5NzUuLmNmOGZmMmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvclByb3RvdHlwZS5jcHAK
QEAgLTQxLDcgKzQxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZXJy
b3JQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBFcnJvclByb3RvdHlwZTo6c19pbmZvID0geyAiRXJyb3IiLCAmRXJyb3JJ
bnN0YW5jZTo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OmVycm9yUHJvdG90eXBlVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gRXJyb3JQ
cm90b3R5cGU6OnNfaW5mbyA9IHsgIkVycm9yIiwgJkVycm9ySW5zdGFuY2U6OnNfaW5mbywgJmVy
cm9yUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoRXJyb3JQcm90b3R5cGUpIH07
CiAKIC8qIFNvdXJjZSBmb3IgRXJyb3JQcm90b3R5cGUubHV0LmgKIEBiZWdpbiBlcnJvclByb3Rv
dHlwZVRhYmxlCkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgRXJyb3JQcm90b3R5cGU6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqKQogCiBib29sIEVycm9yUHJvdG90eXBlOjpn
ZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJu
IGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBFeGVjU3RhdGU6OmVy
cm9yUHJvdG90eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxFcnJvclByb3RvdHlwZSo+KG9i
amVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9u
U2xvdDxFcnJvckluc3RhbmNlPihleGVjLCBlcnJvclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8RXJy
b3JQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiAvLyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhjZXB0
aW9uSGVscGVycy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25I
ZWxwZXJzLmNwcAppbmRleCA2YTY2OGQ0Li42YjMzYzhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FeGNlcHRpb25IZWxwZXJzLmNwcApAQCAtNDQsNyArNDQsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJ
QkxFKFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBUZXJtaW5h
dGVkRXhlY3V0aW9uRXJyb3I6OnNfaW5mbyA9IHsgIlRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvciIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVybWluYXRlZEV4ZWN1
dGlvbkVycm9yKSB9OworY29uc3QgQ2xhc3NJbmZvIFRlcm1pbmF0ZWRFeGVjdXRpb25FcnJvcjo6
c19pbmZvID0geyAiVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yIiwgJkJhc2U6OnNfaW5mbywgMCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShUZXJtaW5hdGVkRXhlY3V0aW9uRXJyb3IpIH07CiAKIEpTVmFs
dWUgVGVybWluYXRlZEV4ZWN1dGlvbkVycm9yOjpkZWZhdWx0VmFsdWUoY29uc3QgSlNPYmplY3Qq
LCBFeGVjU3RhdGUqIGV4ZWMsIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgaGludCkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0V4ZWN1dGFibGUuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5jcHAKaW5kZXggZmY5ZjYxNC4u
MTE4YTEwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0
YWJsZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXhlY3V0YWJsZS5j
cHAKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBFeGVjdXRhYmxlQmFzZTo6c19pbmZvID0geyAiRXhlY3V0YWJsZSIsIDAsIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoRXhlY3V0YWJsZUJhc2UpIH07Citjb25zdCBDbGFzc0luZm8gRXhlY3V0
YWJsZUJhc2U6OnNfaW5mbyA9IHsgIkV4ZWN1dGFibGUiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEV4ZWN1dGFibGVCYXNlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZvaWQgRXhlY3V0YWJs
ZUJhc2U6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQpAQCAtNzgsNyArNzgsNyBAQCBJbnRyaW5zaWMg
RXhlY3V0YWJsZUJhc2U6OmludHJpbnNpYygpIGNvbnN0CiB9CiAjZW5kaWYKIAotY29uc3QgQ2xh
c3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAm
RXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShOYXRpdmVF
eGVjdXRhYmxlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5hdGl2ZUV4ZWN1dGFibGU6OnNfaW5mbyA9
IHsgIk5hdGl2ZUV4ZWN1dGFibGUiLCAmRXhlY3V0YWJsZUJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShOYXRpdmVFeGVjdXRhYmxlKSB9OwogCiAjaWYgRU5BQkxFKEpJVCkKIHZv
aWQgTmF0aXZlRXhlY3V0YWJsZTo6ZGVzdHJveShKU0NlbGwqIGNlbGwpCkBAIC05NCw3ICs5NCw3
IEBAIEludHJpbnNpYyBOYXRpdmVFeGVjdXRhYmxlOjppbnRyaW5zaWMoKSBjb25zdAogfQogI2Vu
ZGlmCiAKLWNvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJTY3Jp
cHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBTY3JpcHRFeGVj
dXRhYmxlOjpzX2luZm8gPSB7ICJTY3JpcHRFeGVjdXRhYmxlIiwgJkV4ZWN1dGFibGVCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2NyaXB0RXhlY3V0YWJsZSkgfTsKIAogI2lm
IEVOQUJMRShKSVQpCiB2b2lkIFNjcmlwdEV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxs
KQpAQCAtMzI1LDcgKzMyNSw3IEBAIEpTT2JqZWN0KiBTY3JpcHRFeGVjdXRhYmxlOjpwcmVwYXJl
Rm9yRXhlY3V0aW9uSW1wbCgKICAgICByZXR1cm4gMDsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEV2
YWxFeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJFdmFsRXhlY3V0YWJsZSIsICZTY3JpcHRFeGVjdXRh
YmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRXZhbEV4ZWN1dGFibGUpIH07
Citjb25zdCBDbGFzc0luZm8gRXZhbEV4ZWN1dGFibGU6OnNfaW5mbyA9IHsgIkV2YWxFeGVjdXRh
YmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShF
dmFsRXhlY3V0YWJsZSkgfTsKIAogRXZhbEV4ZWN1dGFibGUqIEV2YWxFeGVjdXRhYmxlOjpjcmVh
dGUoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIGJvb2wgaXNJblN0
cmljdENvbnRleHQpIAogewpAQCAtMzU3LDcgKzM1Nyw3IEBAIHZvaWQgRXZhbEV4ZWN1dGFibGU6
OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQogICAgIHN0YXRpY19jYXN0PEV2YWxFeGVjdXRhYmxlKj4o
Y2VsbCktPkV2YWxFeGVjdXRhYmxlOjp+RXZhbEV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xh
c3NJbmZvIFByb2dyYW1FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJQcm9ncmFtRXhlY3V0YWJsZSIs
ICZTY3JpcHRFeGVjdXRhYmxlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJv
Z3JhbUV4ZWN1dGFibGUpIH07Citjb25zdCBDbGFzc0luZm8gUHJvZ3JhbUV4ZWN1dGFibGU6OnNf
aW5mbyA9IHsgIlByb2dyYW1FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1dGFibGU6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9ncmFtRXhlY3V0YWJsZSkgfTsKIAogUHJvZ3JhbUV4
ZWN1dGFibGU6OlByb2dyYW1FeGVjdXRhYmxlKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgU291cmNl
Q29kZSYgc291cmNlKQogICAgIDogU2NyaXB0RXhlY3V0YWJsZShleGVjLT52bSgpLnByb2dyYW1F
eGVjdXRhYmxlU3RydWN0dXJlLmdldCgpLCBleGVjLCBzb3VyY2UsIGZhbHNlKQpAQCAtMzY5LDcg
KzM2OSw3IEBAIHZvaWQgUHJvZ3JhbUV4ZWN1dGFibGU6OmRlc3Ryb3koSlNDZWxsKiBjZWxsKQog
ICAgIHN0YXRpY19jYXN0PFByb2dyYW1FeGVjdXRhYmxlKj4oY2VsbCktPlByb2dyYW1FeGVjdXRh
YmxlOjp+UHJvZ3JhbUV4ZWN1dGFibGUoKTsKIH0KIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9u
RXhlY3V0YWJsZTo6c19pbmZvID0geyAiRnVuY3Rpb25FeGVjdXRhYmxlIiwgJlNjcmlwdEV4ZWN1
dGFibGU6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvbkV4ZWN1dGFi
bGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25FeGVjdXRhYmxlOjpzX2luZm8gPSB7ICJG
dW5jdGlvbkV4ZWN1dGFibGUiLCAmU2NyaXB0RXhlY3V0YWJsZTo6c19pbmZvLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEZ1bmN0aW9uRXhlY3V0YWJsZSkgfTsKIAogRnVuY3Rpb25FeGVjdXRhYmxl
OjpGdW5jdGlvbkV4ZWN1dGFibGUoVk0mIHZtLCBjb25zdCBTb3VyY2VDb2RlJiBzb3VyY2UsIFVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiB1bmxpbmtlZEV4ZWN1dGFibGUsIHVuc2lnbmVkIGZp
cnN0TGluZSwgdW5zaWduZWQgbGFzdExpbmUsIHVuc2lnbmVkIHN0YXJ0Q29sdW1uLCB1bnNpZ25l
ZCBlbmRDb2x1bW4sIGJvb2wgYm9keUluY2x1ZGVzQnJhY2VzKQogICAgIDogU2NyaXB0RXhlY3V0
YWJsZSh2bS5mdW5jdGlvbkV4ZWN1dGFibGVTdHJ1Y3R1cmUuZ2V0KCksIHZtLCBzb3VyY2UsIHVu
bGlua2VkRXhlY3V0YWJsZS0+aXNJblN0cmljdENvbnRleHQoKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggM2Zj
NzI0Mi4uMTBjYWIxYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTM3LDcgKzM3LDcgQEAgbmFtZXNwYWNlIEpT
QyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShGdW5jdGlvbkNv
bnN0cnVjdG9yKTsKIAotY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShGdW5jdGlvbkNvbnN0cnVjdG9yKSB9OwogCiBGdW5jdGlvbkNvbnN0cnVjdG9y
OjpGdW5jdGlvbkNvbnN0cnVjdG9yKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAg
OiBJbnRlcm5hbEZ1bmN0aW9uKHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9GdW5jdGlvblByb3RvdHlwZS5jcHAKaW5kZXggZWI1Nzg0MC4uM2My
NTZmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Q
cm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9u
UHJvdG90eXBlLmNwcApAQCAtMzcsNyArMzcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElD
X0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEZ1bmN0aW9uUHJvdG90eXBlKTsKIAot
Y29uc3QgQ2xhc3NJbmZvIEZ1bmN0aW9uUHJvdG90eXBlOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoRnVuY3Rpb25Qcm90b3R5
cGUpIH07Citjb25zdCBDbGFzc0luZm8gRnVuY3Rpb25Qcm90b3R5cGU6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShGdW5jdGlvblBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rp
b25Qcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGZ1bmN0aW9uUHJvdG9GdW5jQmluZChFeGVjU3RhdGUqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRlclNldHRlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HZXR0ZXJTZXR0ZXIuY3BwCmluZGV4IDNkZTk1NmEu
LjFjODk3ZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dldHRl
clNldHRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR2V0dGVyU2V0
dGVyLmNwcApAQCAtMzIsNyArMzIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEdldHRlclNldHRlcik7CiAKLWNvbnN0IENsYXNz
SW5mbyBHZXR0ZXJTZXR0ZXI6OnNfaW5mbyA9IHsgIkdldHRlclNldHRlciIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoR2V0dGVyU2V0dGVyKSB9OworY29uc3QgQ2xhc3NJbmZvIEdldHRl
clNldHRlcjo6c19pbmZvID0geyAiR2V0dGVyU2V0dGVyIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShHZXR0ZXJTZXR0ZXIpIH07CiAKIHZvaWQgR2V0dGVyU2V0dGVyOjp2aXNpdENoaWxkcmVu
KEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRlcm5hbEZ1bmN0aW9uLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVybmFsRnVuY3Rpb24uY3BwCmluZGV4IDI0NTE5YzYu
LjZmNTNiYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGVy
bmFsRnVuY3Rpb24uY3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFU
SUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSW50ZXJuYWxGdW5jdGlvbik7CiAK
LWNvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIs
ICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5jdGlv
bikgfTsKK2NvbnN0IENsYXNzSW5mbyBJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSW50ZXJuYWxGdW5j
dGlvbikgfTsKIAogSW50ZXJuYWxGdW5jdGlvbjo6SW50ZXJuYWxGdW5jdGlvbihWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSlNEZXN0cnVjdGlibGVPYmplY3Qodm0sIHN0cnVj
dHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFs
dWVXcmFwcGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQVBJVmFsdWVX
cmFwcGVyLmNwcAppbmRleCA4MGM3NjI2Li42ZTViNTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU0FQSVZhbHVlV3JhcHBlci5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBUElWYWx1ZVdyYXBwZXIuY3BwCkBAIC0yOSw2ICsyOSw2
IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVD
VElCTEUoSlNBUElWYWx1ZVdyYXBwZXIpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBUElWYWx1ZVdy
YXBwZXI6OnNfaW5mbyA9IHsgIkFQSSBXcmFwcGVyIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShKU0FQSVZhbHVlV3JhcHBlcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FQSVZhbHVlV3Jh
cHBlcjo6c19pbmZvID0geyAiQVBJIFdyYXBwZXIiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTQVBJVmFsdWVXcmFwcGVyKSB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FjdGl2YXRpb24uY3BwCmluZGV4IDgyOTY1MDYuLjZj
MDBiMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZh
dGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9u
LmNwcApAQCAtMzgsNyArMzgsNyBAQCB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQWN0aXZhdGlvbjo6c19pbmZvID0geyAiSlNBY3Rp
dmF0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FjdGl2
YXRpb24pIH07Citjb25zdCBDbGFzc0luZm8gSlNBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJKU0Fj
dGl2YXRpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQWN0aXZh
dGlvbikgfTsKIAogdm9pZCBKU0FjdGl2YXRpb246OnZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxs
LCBTbG90VmlzaXRvciYgdmlzaXRvcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJndW1lbnRzSXRlcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJdGVyYXRvci5jcHAKaW5kZXggYjkwMmEzZC4uM2VmYWIy
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVudHNJ
dGVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcmd1bWVu
dHNJdGVyYXRvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcmd1bWVudHNJ
dGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcmd1
bWVudHNJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0FyZ3VtZW50c0l0ZXJhdG9yOjpz
X2luZm8gPSB7ICJBcmd1bWVudHNJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcmd1bWVudHNJdGVyYXRvcikgfTsKIAogdm9pZCBKU0FyZ3VtZW50c0l0
ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEFyZ3VtZW50cyogYXJndW1lbnRzKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcAppbmRleCBmNGJjMDkzLi44
ODU3ZGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmNwcApAQCAt
NDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9JU19UUklWSUFM
TFlfREVTVFJVQ1RJQkxFKEpTQXJyYXkpOwogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheSl9OworY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXk6OnNfaW5mbyA9
IHsiQXJyYXkiLCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTQXJyYXkpfTsKIAogQnV0dGVyZmx5KiBjcmVhdGVBcnJheUJ1dHRlcmZseUluRGljdGlv
bmFyeUluZGV4aW5nTW9kZSgKICAgICBWTSYgdm0sIEpTQ2VsbCogaW50ZW5kZWRPd25lciwgdW5z
aWduZWQgaW5pdGlhbExlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQXJyYXlCdWZmZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNBcnJheUJ1ZmZlci5jcHAKaW5kZXggNjEwNWJkNi4uMzY4YjFlMyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlci5jcHAKQEAgLTMyLDcgKzMyLDcg
QEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlcjo6c19p
bmZvID0gewotICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OworICAgICJBcnJheUJ1ZmZlciIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlcil9OwogCiBKU0FycmF5
QnVmZmVyOjpKU0FycmF5QnVmZmVyKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NS
ZWZQdHI8QXJyYXlCdWZmZXI+IGFycmF5QnVmZmVyKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJl
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZl
ckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlC
dWZmZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjJmNzljOC4uZGMzMGU3MSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIG5hbWVzcGFjZSBKU0Mgewogc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlCdWZmZXJGdW5jSXNWaWV3KEV4ZWNTdGF0ZSop
OwogCiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7
Ci0gICAgIkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwKKyAgICAiRnVuY3Rpb24iLCAm
QmFzZTo6c19pbmZvLCAwLAogICAgIENSRUFURV9NRVRIT0RfVEFCTEUoSlNBcnJheUJ1ZmZlckNv
bnN0cnVjdG9yKQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBcnJheUJ1ZmZlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5QnVmZmVyUHJvdG90eXBlLmNwcAppbmRleCA4ZWYzYWEzLi41YjUyZmM1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyUHJv
dG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVm
ZmVyUHJvdG90eXBlLmNwcApAQCAtNzAsNyArNzAsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBhcnJheUJ1ZmZlclByb3RvRnVuY1NsaWNlKEV4ZWNTdGF0ZSogZXhlYykK
IH0KIAogY29uc3QgQ2xhc3NJbmZvIEpTQXJyYXlCdWZmZXJQcm90b3R5cGU6OnNfaW5mbyA9IHsK
LSAgICAiQXJyYXlCdWZmZXJQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJQcm90b3R5cGUpCisgICAgIkFycmF5QnVmZmVyUHJv
dG90eXBlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVm
ZmVyUHJvdG90eXBlKQogfTsKIAogSlNBcnJheUJ1ZmZlclByb3RvdHlwZTo6SlNBcnJheUJ1ZmZl
clByb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlclZpZXcuY3BwCmluZGV4IGRhMGNk
ZTIuLmM0NGFiNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
QXJyYXlCdWZmZXJWaWV3LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0FycmF5QnVmZmVyVmlldy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0Mgewog
CiBjb25zdCBDbGFzc0luZm8gSlNBcnJheUJ1ZmZlclZpZXc6OnNfaW5mbyA9IHsKLSAgICAiQXJy
YXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShK
U0FycmF5QnVmZmVyVmlldykKKyAgICAiQXJyYXlCdWZmZXJWaWV3IiwgJkJhc2U6OnNfaW5mbywg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0FycmF5QnVmZmVyVmlldykKIH07CiAKIEpTQXJyYXlC
dWZmZXJWaWV3OjpDb25zdHJ1Y3Rpb25Db250ZXh0OjpDb25zdHJ1Y3Rpb25Db250ZXh0KApkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlJdGVyYXRvci5jcHAKaW5k
ZXggYzYyMjBmNS4uNzEwODhlNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNBcnJheUl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0FycmF5SXRlcmF0b3IuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJBcnJh
eUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0Fy
cmF5SXRlcmF0b3IpIH07Citjb25zdCBDbGFzc0luZm8gSlNBcnJheUl0ZXJhdG9yOjpzX2luZm8g
PSB7ICJBcnJheUl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShKU0FycmF5SXRlcmF0b3IpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGFycmF5SXRlcmF0b3JOZXh0S2V5KEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1Zh
bHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlJdGVyYXRvck5leHRWYWx1ZShFeGVjU3RhdGUqKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQm91bmRGdW5jdGlvbi5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0JvdW5kRnVuY3Rpb24uY3BwCmlu
ZGV4IGVmNzljNDIuLjhmYzRhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQm91bmRGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNCb3VuZEZ1bmN0aW9uLmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTQm91bmRGdW5jdGlvbjo6c19pbmZvID0geyAiRnVu
Y3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQm91bmRG
dW5jdGlvbikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0JvdW5kRnVuY3Rpb246OnNfaW5mbyA9IHsg
IkZ1bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0JvdW5k
RnVuY3Rpb24pIH07CiAKIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYm91bmRGdW5jdGlv
bkNhbGwoRXhlY1N0YXRlKiBleGVjKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQ29uc29sZS5jcHAKaW5kZXggNTY3MTJmMi4uN2QwNGFiZiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDb25zb2xlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0NvbnNvbGUuY3BwCkBAIC0zMSw2ICszMSw2IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25z
b2xlIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUp
IH07Citjb25zdCBDbGFzc0luZm8gSlNDb25zb2xlOjpzX2luZm8gPSB7ICJDb25zb2xlIiwgJkJh
c2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0NvbnNvbGUpIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXcuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmlldy5jcHAKaW5kZXggYmJkYmJk
Ni4uYjc3ZDQ4ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNE
YXRhVmlldy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNEYXRhVmll
dy5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiBjb25zdCBDbGFzc0lu
Zm8gSlNEYXRhVmlldzo6c19pbmZvID0gewotICAgICJEYXRhVmlldyIsICZCYXNlOjpzX2luZm8s
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OworICAgICJEYXRhVmlldyIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNEYXRhVmlldyl9OwogCiBK
U0RhdGFWaWV3OjpKU0RhdGFWaWV3KFZNJiB2bSwgQ29uc3RydWN0aW9uQ29udGV4dCYgY29udGV4
dCwgQXJyYXlCdWZmZXIqIGJ1ZmZlcikKICAgICA6IEJhc2Uodm0sIGNvbnRleHQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3UHJvdG90eXBlLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3Bw
CmluZGV4IDkyOTAwZTYuLjJlMWRiYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCkBAIC0zNiwxMSArMzYsNiBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTRGF0YVZpZXdQcm90b3R5cGU6
OnNfaW5mbyA9IHsKLSAgICAiRGF0YVZpZXdQcm90b3R5cGUiLCAmQmFzZTo6c19pbmZvLCAwLCBF
eGVjU3RhdGU6OmRhdGFWaWV3VGFibGUsCi0gICAgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFW
aWV3UHJvdG90eXBlKQotfTsKLQogLyogU291cmNlIGZvciBKU0RhdGFWaWV3UHJvdG90eXBlLmx1
dC5oCiBAYmVnaW4gZGF0YVZpZXdUYWJsZQogICBnZXRJbnQ4ICAgICAgICAgICAgICAgZGF0YVZp
ZXdQcm90b0Z1bmNHZXRJbnQ4ICAgICAgICAgICAgIERvbnRFbnVtfEZ1bmN0aW9uICAgICAgIDAK
QEAgLTYyLDYgKzU3LDM0IEBAIGNvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpz
X2luZm8gPSB7CiBAZW5kCiAqLwogCitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBkYXRhVmlld1Byb3RvRnVuY0dldEludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldEludDE2KEV4ZWNTdGF0ZSop
Oworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNH
ZXRJbnQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGRhdGFWaWV3UHJvdG9GdW5jR2V0VWludDgoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY0dldFVpbnQxNihFeGVjU3RhdGUq
KTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5j
R2V0VWludDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDMyKEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNHZXRGbG9hdDY0KEV4ZWNT
dGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZGF0YVZpZXdQcm90
b0Z1bmNTZXRJbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRJbnQxNihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0SW50MzIoRXhlY1N0
YXRlKik7CitzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3Rv
RnVuY1NldFVpbnQ4KEV4ZWNTdGF0ZSopOworc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgZGF0YVZpZXdQcm90b0Z1bmNTZXRVaW50MTYoRXhlY1N0YXRlKik7CitzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldFVpbnQzMihFeGVj
U3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGRhdGFWaWV3UHJv
dG9GdW5jU2V0RmxvYXQzMihFeGVjU3RhdGUqKTsKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGRhdGFWaWV3UHJvdG9GdW5jU2V0RmxvYXQ2NChFeGVjU3RhdGUqKTsKKworfQor
CisjaW5jbHVkZSAiSlNEYXRhVmlld1Byb3RvdHlwZS5sdXQuaCIKKworbmFtZXNwYWNlIEpTQyB7
CisKK2NvbnN0IENsYXNzSW5mbyBKU0RhdGFWaWV3UHJvdG90eXBlOjpzX2luZm8gPSB7CisgICAg
IkRhdGFWaWV3UHJvdG90eXBlIiwgJkJhc2U6OnNfaW5mbywgJmRhdGFWaWV3VGFibGUsCisgICAg
Q1JFQVRFX01FVEhPRF9UQUJMRShKU0RhdGFWaWV3UHJvdG90eXBlKQorfTsKKwogSlNEYXRhVmll
d1Byb3RvdHlwZTo6SlNEYXRhVmlld1Byb3RvdHlwZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0
dXJlKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQogewpAQCAtODcsNyArMTEwLDcgQEAgYm9v
bCBKU0RhdGFWaWV3UHJvdG90eXBlOjpnZXRPd25Qcm9wZXJ0eVNsb3QoCiAgICAgSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9w
ZXJ0eVNsb3QmIHNsb3QpCiB7CiAgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09i
amVjdD4oCi0gICAgICAgIGV4ZWMsIEV4ZWNTdGF0ZTo6ZGF0YVZpZXdUYWJsZShleGVjLT52bSgp
KSwganNDYXN0PEpTRGF0YVZpZXdQcm90b3R5cGUqPihvYmplY3QpLAorICAgICAgICBleGVjLCBk
YXRhVmlld1RhYmxlLCBqc0Nhc3Q8SlNEYXRhVmlld1Byb3RvdHlwZSo+KG9iamVjdCksCiAgICAg
ICAgIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKQEAgLTI2Niw2ICsyODksMyBAQCBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBkYXRhVmlld1Byb3RvRnVuY1NldEZsb2F0NjQo
RXhlY1N0YXRlKiBleGVjKQogfQogCiB9IC8vIG5hbWVzcGFjZSBKU0MKLQotI2luY2x1ZGUgIkpT
RGF0YVZpZXdQcm90b3R5cGUubHV0LmgiCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggMGY0N2FjOS4uNWM2YWRiMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsSG9zdEZ1bmN0aW9uQXNDb25zdHJ1Y3RvcihF
eGVjU3RhdGUqIGV4ZWMpCiAgICAgcmV0dXJuIHRocm93Vk1FcnJvcihleGVjLCBjcmVhdGVOb3RB
Q29uc3RydWN0b3JFcnJvcihleGVjLCBleGVjLT5jYWxsZWUoKSkpOwogfQogCi1jb25zdCBDbGFz
c0luZm8gSlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07Citjb25zdCBDbGFzc0luZm8g
SlNGdW5jdGlvbjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTRnVuY3Rpb24pIH07CiAKIGJvb2wgSlNGdW5jdGlvbjo6aXNIb3N0
RnVuY3Rpb25Ob25JbmxpbmUoKSBjb25zdAogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IGZiZjJmZjUuLmNiZjA3YTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKQEAg
LTEzOSw3ICsxMzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpT
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBFeGVjU3RhdGU6Omdsb2JhbE9iamVjdFRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTR2xv
YmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7
ICJHbG9iYWxPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAmZ2xvYmFsT2JqZWN0VGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoSlNHbG9iYWxPYmplY3QpIH07CiAKIGNvbnN0IEdsb2JhbE9iamVjdE1l
dGhvZFRhYmxlIEpTR2xvYmFsT2JqZWN0OjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAm
YWxsb3dzQWNjZXNzRnJvbSwgJnN1cHBvcnRzUHJvZmlsaW5nLCAmc3VwcG9ydHNSaWNoU291cmNl
SW5mbywgJnNob3VsZEludGVycnVwdFNjcmlwdCwgJmphdmFTY3JpcHRFeHBlcmltZW50c0VuYWJs
ZWQsIDAsICZzaG91bGRJbnRlcnJ1cHRTY3JpcHRCZWZvcmVUaW1lb3V0IH07CiAKQEAgLTc0MCw3
ICs3NDAsNyBAQCB2b2lkIEpTR2xvYmFsT2JqZWN0OjphZGRTdGF0aWNHbG9iYWxzKEdsb2JhbFBy
b3BlcnR5SW5mbyogZ2xvYmFscywgaW50IGNvdW50KQogYm9vbCBKU0dsb2JhbE9iamVjdDo6Z2V0
T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQogewogICAgIEpTR2xvYmFs
T2JqZWN0KiB0aGlzT2JqZWN0ID0ganNDYXN0PEpTR2xvYmFsT2JqZWN0Kj4ob2JqZWN0KTsKLSAg
ICBpZiAoZ2V0U3RhdGljRnVuY3Rpb25TbG90PEJhc2U+KGV4ZWMsIEV4ZWNTdGF0ZTo6Z2xvYmFs
T2JqZWN0VGFibGUoZXhlYy0+dm0oKSksIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCkp
CisgICAgaWYgKGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBnbG9iYWxPYmplY3RU
YWJsZSwgdGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgcmV0dXJuIHN5bWJvbFRhYmxlR2V0KHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01h
cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcC5jcHAKaW5kZXggNTUw
MGM1Ni4uYzA4YTk3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTWFwLmNwcApA
QCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKICAgICAKLWNvbnN0IENsYXNzSW5m
byBKU01hcDo6c19pbmZvID0geyAiTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU01hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcDo6c19pbmZvID0geyAi
TWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU01hcCkgfTsKIAog
dm9pZCBKU01hcDo6dmlzaXRDaGlsZHJlbihKU0NlbGwqIGNlbGwsIFNsb3RWaXNpdG9yJiB2aXNp
dG9yKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNYXBJ
dGVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9y
LmNwcAppbmRleCBkNzMyZWRiLi5lYjRmZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU01hcEl0ZXJhdG9yLmNwcApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3Bh
Y2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTWFwSXRlcmF0b3I6OnNfaW5mbyA9IHsgIk1h
cCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNN
YXBJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU01hcEl0ZXJhdG9yOjpzX2luZm8gPSB7
ICJNYXAgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpT
TWFwSXRlcmF0b3IpIH07CiAKIHZvaWQgSlNNYXBJdGVyYXRvcjo6ZmluaXNoQ3JlYXRpb24oVk0m
IHZtLCBKU01hcCogaXRlcmF0ZWRPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU05hbWVTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU05hbWVTY29wZS5jcHAKaW5kZXggZGI3MjEzNy4uOWJhN2QxZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNOYW1lU2NvcGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmFtZVNjb3BlLmNwcApAQCAtMzEsNyArMzEs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpz
X2luZm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKEpTTmFtZVNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTTmFtZVNjb3BlOjpzX2lu
Zm8gPSB7ICJOYW1lU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KEpTTmFtZVNjb3BlKSB9OwogCiB2b2lkIEpTTmFtZVNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2Vs
bCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU05vdEFuT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCmluZGV4IDIzNjdhMzUuLmFmNDczN2UgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTm90QW5PYmplY3QuY3BwCkBA
IC0zNiw3ICszNiw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJ
QUxMWV9ERVNUUlVDVElCTEUoSlNOb3RBbk9iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5mbyBKU05v
dEFuT2JqZWN0OjpzX2luZm8gPSB7ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTTm90QW5PYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNOb3RB
bk9iamVjdDo6c19pbmZvID0geyAiT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU05vdEFuT2JqZWN0KSB9OwogCiAvLyBKU1ZhbHVlIG1ldGhvZHMKIEpTVmFs
dWUgSlNOb3RBbk9iamVjdDo6ZGVmYXVsdFZhbHVlKGNvbnN0IEpTT2JqZWN0KiwgRXhlY1N0YXRl
KiBleGVjLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU09OT2JqZWN0LmNwcAppbmRleCA4N2I5MjM3Li5mNTVjMzUwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtNTg4LDcgKzU4OCw3
IEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFByb3BlcnR5KFN0cmluZ2lm
aWVyJiBzdHJpbmdpZmllciwgU3RyaW5nQnVpCiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBKU09OT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWNv
bnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7ICJKU09OIiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpqc29uVGFibGUsIENSRUFURV9NRVRIT0RfVEFC
TEUoSlNPTk9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU09OT2JqZWN0OjpzX2luZm8gPSB7
ICJKU09OIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgJmpzb25UYWJsZSwgQ1JFQVRFX01F
VEhPRF9UQUJMRShKU09OT2JqZWN0KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTT05PYmplY3QubHV0
LmgKIEBiZWdpbiBqc29uVGFibGUKQEAgLTYwMSw3ICs2MDEsNyBAQCBjb25zdCBDbGFzc0luZm8g
SlNPTk9iamVjdDo6c19pbmZvID0geyAiSlNPTiIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8s
IDAsIEV4ZQogCiBib29sIEpTT05PYmplY3Q6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCog
b2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3Bl
cnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEpTT2Jq
ZWN0PihleGVjLCBFeGVjU3RhdGU6Ompzb25UYWJsZShleGVjLT52bSgpKSwganNDYXN0PEpTT05P
YmplY3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0
aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIGpzb25UYWJsZSwganNDYXN0PEpTT05PYmpl
Y3QqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwogfQogCiBjbGFzcyBXYWxrZXIgewpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCmluZGV4IDk4NzA3NTAu
LmMxNWZjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAK
QEAgLTcwLDkgKzcwLDkgQEAgU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxF
KEpTRmluYWxPYmplY3QpOwogCiBjb25zdCBjaGFyKiBTdHJpY3RNb2RlUmVhZG9ubHlQcm9wZXJ0
eVdyaXRlRXJyb3IgPSAiQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS4i
OwogCi1jb25zdCBDbGFzc0luZm8gSlNPYmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAs
IDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNP
YmplY3Q6OnNfaW5mbyA9IHsgIk9iamVjdCIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNP
YmplY3QpIH07CiAKLWNvbnN0IENsYXNzSW5mbyBKU0ZpbmFsT2JqZWN0OjpzX2luZm8gPSB7ICJP
YmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRmluYWxP
YmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNGaW5hbE9iamVjdDo6c19pbmZvID0geyAiT2Jq
ZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0ZpbmFsT2JqZWN0
KSB9OwogCiBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8sIFByb3BlcnR5TmFtZUFycmF5JiBw
cm9wZXJ0eU5hbWVzLCBFbnVtZXJhdGlvbk1vZGUgbW9kZSwgYm9vbCBkaWRSZWlmeSkKIHsKQEAg
LTgwLDExICs4MCwxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0Q2xhc3NQcm9wZXJ0eU5hbWVz
KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgQ2xhc3NJbmZvKiBjbGFzcwogCiAgICAgLy8gQWRkIHBy
b3BlcnRpZXMgZnJvbSB0aGUgc3RhdGljIGhhc2h0YWJsZXMgb2YgcHJvcGVydGllcwogICAgIGZv
ciAoOyBjbGFzc0luZm87IGNsYXNzSW5mbyA9IGNsYXNzSW5mby0+cGFyZW50Q2xhc3MpIHsKLSAg
ICAgICAgY29uc3QgSGFzaFRhYmxlKiB0YWJsZSA9IGNsYXNzSW5mby0+cHJvcEhhc2hUYWJsZSh2
bSk7CisgICAgICAgIGNvbnN0IEhhc2hUYWJsZSogdGFibGUgPSBjbGFzc0luZm8tPnN0YXRpY1By
b3BIYXNoVGFibGU7CiAgICAgICAgIGlmICghdGFibGUpCiAgICAgICAgICAgICBjb250aW51ZTsK
IAotICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5iZWdpbih2bSk7IGl0ZXIgIT0gdGFi
bGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8gaXRlciA9IHRhYmxlLT5i
ZWdpbigpOyBpdGVyICE9IHRhYmxlLT5lbmQoKTsgKytpdGVyKSB7CiAgICAgICAgICAgICBpZiAo
KCEoaXRlci0+YXR0cmlidXRlcygpICYgRG9udEVudW0pIHx8IChtb2RlID09IEluY2x1ZGVEb250
RW51bVByb3BlcnRpZXMpKSAmJiAhKChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikgJiYgZGlkUmVpZnkpKQogICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKElk
ZW50aWZpZXIoJnZtLCBpdGVyLmtleSgpKSk7CiAgICAgICAgIH0KQEAgLTQwMSw4ICs0MDEsOCBA
QCB2b2lkIEpTT2JqZWN0OjpwdXQoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3Bl
cnR5TmFtZSBwcm9wZXJ0eU5hbWUsIEpTVgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0K
ICAgICAgICAgY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gb2JqLT5jbGFzc0luZm8oKTsKLSAgICAg
ICAgaWYgKGluZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSkgewot
ICAgICAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IG9iai0+ZmluZFBy
b3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpKSB7CisgICAgICAgIGlmIChpbmZvLT5o
YXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKSB7CisgICAgICAgICAgICBpZiAo
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gb2JqLT5maW5kUHJvcGVydHlIYXNoRW50cnko
cHJvcGVydHlOYW1lKSkgewogICAgICAgICAgICAgICAgIHB1dEVudHJ5KGV4ZWMsIGVudHJ5LCBv
YmosIHByb3BlcnR5TmFtZSwgdmFsdWUsIHNsb3QpOwogICAgICAgICAgICAgICAgIHJldHVybjsK
ICAgICAgICAgICAgIH0KQEAgLTEyOTgsNyArMTI5OCw3IEBAIGJvb2wgSlNPYmplY3Q6OmRlbGV0
ZVByb3BlcnR5KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJv
cGVyCiAgICAgfQogCiAgICAgLy8gTG9vayBpbiB0aGUgc3RhdGljIGhhc2h0YWJsZSBvZiBwcm9w
ZXJ0aWVzCi0gICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGhpc09iamVjdC0+Zmlu
ZFByb3BlcnR5SGFzaEVudHJ5KHZtLCBwcm9wZXJ0eU5hbWUpOworICAgIGNvbnN0IEhhc2hUYWJs
ZVZhbHVlKiBlbnRyeSA9IHRoaXNPYmplY3QtPmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShwcm9wZXJ0
eU5hbWUpOwogICAgIGlmIChlbnRyeSkgewogICAgICAgICBpZiAoZW50cnktPmF0dHJpYnV0ZXMo
KSAmIERvbnREZWxldGUgJiYgIXZtLmlzSW5EZWZpbmVPd25Qcm9wZXJ0eSgpKQogICAgICAgICAg
ICAgcmV0dXJuIGZhbHNlOyAvLyB0aGlzIGJ1aWx0aW4gcHJvcGVydHkgY2FuJ3QgYmUgZGVsZXRl
ZApAQCAtMTQyNiwxMSArMTQyNiwxMSBAQCBKU1ZhbHVlIEpTT2JqZWN0OjpkZWZhdWx0VmFsdWUo
Y29uc3QgSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcmVmZXJyZQogICAgIHJl
dHVybiBleGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVj
LCBBU0NJSUxpdGVyYWwoIk5vIGRlZmF1bHQgdmFsdWUiKSkpOwogfQogCi1jb25zdCBIYXNoVGFi
bGVWYWx1ZSogSlNPYmplY3Q6OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShWTSYgdm0sIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0Citjb25zdCBIYXNoVGFibGVWYWx1ZSogSlNPYmplY3Q6
OmZpbmRQcm9wZXJ0eUhhc2hFbnRyeShQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKSBjb25zdAog
ewogICAgIGZvciAoY29uc3QgQ2xhc3NJbmZvKiBpbmZvID0gY2xhc3NJbmZvKCk7IGluZm87IGlu
Zm8gPSBpbmZvLT5wYXJlbnRDbGFzcykgewotICAgICAgICBpZiAoY29uc3QgSGFzaFRhYmxlKiBw
cm9wSGFzaFRhYmxlID0gaW5mby0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKLSAgICAgICAgICAgIGlm
IChjb25zdCBIYXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeSh2bSwg
cHJvcGVydHlOYW1lKSkKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogcHJvcEhhc2hUYWJs
ZSA9IGluZm8tPnN0YXRpY1Byb3BIYXNoVGFibGUpIHsKKyAgICAgICAgICAgIGlmIChjb25zdCBI
YXNoVGFibGVWYWx1ZSogZW50cnkgPSBwcm9wSGFzaFRhYmxlLT5lbnRyeShwcm9wZXJ0eU5hbWUp
KQogICAgICAgICAgICAgICAgIHJldHVybiBlbnRyeTsKICAgICAgICAgfQogICAgIH0KQEAgLTE2
NDYsMTEgKzE2NDYsMTEgQEAgdm9pZCBKU09iamVjdDo6cmVpZnlTdGF0aWNGdW5jdGlvbnNGb3JE
ZWxldGUoRXhlY1N0YXRlKiBleGVjKQogICAgICAgICBzZXRTdHJ1Y3R1cmUodm0sIFN0cnVjdHVy
ZTo6dG9VbmNhY2hlYWJsZURpY3Rpb25hcnlUcmFuc2l0aW9uKHZtLCBzdHJ1Y3R1cmUodm0pKSk7
CiAKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogaW5mbyA9IGNsYXNzSW5mbygpOyBpbmZvOyBp
bmZvID0gaW5mby0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlKiBoYXNo
VGFibGUgPSBpbmZvLT5wcm9wSGFzaFRhYmxlKHZtKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxl
KiBoYXNoVGFibGUgPSBpbmZvLT5zdGF0aWNQcm9wSGFzaFRhYmxlOwogICAgICAgICBpZiAoIWhh
c2hUYWJsZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzKTsKLSAgICAgICAgZm9yIChhdXRvIGl0ZXIgPSBoYXNoVGFibGUtPmJlZ2luKHZtKTsg
aXRlciAhPSBoYXNoVGFibGUtPmVuZCh2bSk7ICsraXRlcikgeworICAgICAgICBmb3IgKGF1dG8g
aXRlciA9IGhhc2hUYWJsZS0+YmVnaW4oKTsgaXRlciAhPSBoYXNoVGFibGUtPmVuZCgpOyArK2l0
ZXIpIHsKICAgICAgICAgICAgIGlmIChpdGVyLT5hdHRyaWJ1dGVzKCkgJiBCdWlsdGluT3JGdW5j
dGlvbikKICAgICAgICAgICAgICAgICBzZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdChnbG9iYWxPYmpl
Y3QoKS0+Z2xvYmFsRXhlYygpLCBpdGVyLnZhbHVlKCksIHRoaXMsIElkZW50aWZpZXIoJnZtLCBp
dGVyLmtleSgpKSwgc2xvdCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU09iamVjdC5oCmluZGV4IGQ1ZDRmNTkuLmRiOGE2YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuaApAQCAtOTY2LDcgKzk2Niw3IEBAIHByaXZhdGU6CiAgICAg
SlNfRVhQT1JUX1BSSVZBVEUgdm9pZCBmaWxsR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xv
dCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBQcm9wZXJ0eU9mZnNldCk7CiAgICAgdm9pZCBmaWxsQ3Vz
dG9tR2V0dGVyUHJvcGVydHlTbG90KFByb3BlcnR5U2xvdCYsIEpTVmFsdWUsIHVuc2lnbmVkLCBT
dHJ1Y3R1cmUmKTsKIAotICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBmaW5kUHJvcGVydHlIYXNo
RW50cnkoVk0mLCBQcm9wZXJ0eU5hbWUpIGNvbnN0OworICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVl
KiBmaW5kUHJvcGVydHlIYXNoRW50cnkoUHJvcGVydHlOYW1lKSBjb25zdDsKICAgICAgICAgCiAg
ICAgdm9pZCBwdXRJbmRleGVkRGVzY3JpcHRvcihFeGVjU3RhdGUqLCBTcGFyc2VBcnJheUVudHJ5
KiwgY29uc3QgUHJvcGVydHlEZXNjcmlwdG9yJiwgUHJvcGVydHlEZXNjcmlwdG9yJiBvbGQpOwog
ICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
bWlzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2UuY3BwCmlu
ZGV4IDlmMTgyYzkuLmE4ZjU5M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNQcm9taXNlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogc3RhdGlj
IHZvaWQgdHJpZ2dlclByb21pc2VSZWFjdGlvbnMoVk0mLCBKU0dsb2JhbE9iamVjdCosIFZlY3Rv
cjxXcml0ZUJhcnJpZXI8SlNQcm9taXNlUmVhY3Rpb24+PiYsIEpTVmFsdWUpOwogCi1jb25zdCBD
bGFzc0luZm8gSlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywg
MCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07Citjb25zdCBDbGFzc0luZm8g
SlNQcm9taXNlOjpzX2luZm8gPSB7ICJQcm9taXNlIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRF
X01FVEhPRF9UQUJMRShKU1Byb21pc2UpIH07CiAKIEpTUHJvbWlzZSogSlNQcm9taXNlOjpjcmVh
dGUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU1Byb21pc2VDb25zdHJ1
Y3RvciogY29uc3RydWN0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1Byb21pc2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNDAyNjE5Ni4uZGI2OWZkNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZUNv
bnN0cnVjdG9yLmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNBbGwoRXhlY1N0YXRlKik7CiAKIG5h
bWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlQ29uc3RydWN0b3I6OnNf
aW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb21p
c2VDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb21pc2VDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAmcHJvbWlz
ZUNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlQ29uc3RydWN0
b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgSlNQcm9taXNlQ29uc3RydWN0b3IubHV0LmgKIEBiZWdp
biBwcm9taXNlQ29uc3RydWN0b3JUYWJsZQpAQCAtMTYxLDcgKzE2MSw3IEBAIENhbGxUeXBlIEpT
UHJvbWlzZUNvbnN0cnVjdG9yOjpnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYgY2FsbERh
dGEpCiAKIGJvb2wgSlNQcm9taXNlQ29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09i
amVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
IFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90
PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIEV4ZWNTdGF0ZTo6cHJvbWlzZUNvbnN0cnVjdG9yVGFi
bGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxKU1Byb21pc2VDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxJbnRl
cm5hbEZ1bmN0aW9uPihleGVjLCBwcm9taXNlQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PEpTUHJv
bWlzZUNvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBKU1Byb21pc2VDb25zdHJ1Y3RvckZ1bmNDYXN0KEV4
ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTUHJvbWlzZURlZmVycmVkLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvbWlzZURlZmVycmVkLmNwcAppbmRleCA2N2ZkNTUwLi44OWQ5MTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VEZWZlcnJlZC5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlRGVmZXJyZWQuY3BwCkBAIC0z
OSw3ICszOSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9t
aXNlRGVmZXJyZWQ6OnNfaW5mbyA9IHsgIkpTUHJvbWlzZURlZmVycmVkIiwgMCwgMCwgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1Byb21pc2VEZWZlcnJlZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBK
U1Byb21pc2VEZWZlcnJlZDo6c19pbmZvID0geyAiSlNQcm9taXNlRGVmZXJyZWQiLCAwLCAwLCBD
UkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZURlZmVycmVkKSB9OwogCiBKU1Byb21pc2VEZWZl
cnJlZCogSlNQcm9taXNlRGVmZXJyZWQ6OmNyZWF0ZShFeGVjU3RhdGUqIGV4ZWMsIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNQcm9taXNlUHJvdG90eXBlLmNwcAppbmRleCAwZGVkNTdmLi44NTU4Yzc3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VQcm90b3R5
cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvbWlzZVByb3Rv
dHlwZS5jcHAKQEAgLTUxLDcgKzUxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgSlNQcm9taXNlUHJvdG90eXBlRnVuY1RoZW4oRXhlY1N0YXRlKik7CiAKIG5hbWVzcGFj
ZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9taXNlUHJvdG90eXBlOjpzX2luZm8gPSB7
ICJQcm9taXNlUHJvdG90eXBlIiwgJkpTTm9uRmluYWxPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0
YXRlOjpwcm9taXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNl
UHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTUHJvbWlzZVByb3RvdHlwZTo6c19pbmZv
ID0geyAiUHJvbWlzZVByb3RvdHlwZSIsICZKU05vbkZpbmFsT2JqZWN0OjpzX2luZm8sICZwcm9t
aXNlUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUHJvdG90eXBl
KSB9OwogCiAvKiBTb3VyY2UgZm9yIEpTUHJvbWlzZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHBy
b21pc2VQcm90b3R5cGVUYWJsZQpAQCAtODUsNyArODUsNyBAQCB2b2lkIEpTUHJvbWlzZVByb3Rv
dHlwZTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBTdHJ1Y3R1cmUqKQogCiBib29sIEpTUHJvbWlz
ZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0
ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQog
ewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIEV4ZWNT
dGF0ZTo6cHJvbWlzZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nhc3Q8SlNQcm9taXNl
UHJvdG90eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICByZXR1cm4gZ2V0
U3RhdGljRnVuY3Rpb25TbG90PEpTT2JqZWN0PihleGVjLCBwcm9taXNlUHJvdG90eXBlVGFibGUs
IGpzQ2FzdDxKU1Byb21pc2VQcm90b3R5cGUqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogfQogCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIEpTUHJvbWlzZVByb3RvdHlwZUZ1
bmNUaGVuKEV4ZWNTdGF0ZSogZXhlYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTUHJvbWlzZVJlYWN0aW9uLmNwcAppbmRleCAxZDNhYjZmLi4wNWUxY2M4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Byb21pc2VSZWFjdGlvbi5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9taXNlUmVhY3Rpb24u
Y3BwCkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBFeGVjdXRlUHJvbWlzZVJlYWN0aW9uTWljcm90
YXNrOjpydW4oRXhlY1N0YXRlKiBleGVjKQogfQogCiAKLWNvbnN0IENsYXNzSW5mbyBKU1Byb21p
c2VSZWFjdGlvbjo6c19pbmZvID0geyAiSlNQcm9taXNlUmVhY3Rpb24iLCAwLCAwLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKEpTUHJvbWlzZVJlYWN0aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIEpT
UHJvbWlzZVJlYWN0aW9uOjpzX2luZm8gPSB7ICJKU1Byb21pc2VSZWFjdGlvbiIsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoSlNQcm9taXNlUmVhY3Rpb24pIH07CiAKIEpTUHJvbWlzZVJlYWN0
aW9uKiBKU1Byb21pc2VSZWFjdGlvbjo6Y3JlYXRlKFZNJiB2bSwgSlNQcm9taXNlRGVmZXJyZWQq
IGRlZmVycmVkLCBKU1ZhbHVlIGhhbmRsZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU1Byb3BlcnR5TmFtZUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCmluZGV4IGI1OTU5
ODAuLmU3ZjI3MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
UHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTUHJvcGVydHlOYW1lSXRlcmF0b3IuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6c19p
bmZvID0geyAiSlNQcm9wZXJ0eU5hbWVJdGVyYXRvciIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1Byb3Bl
cnR5TmFtZUl0ZXJhdG9yOjpzX2luZm8gPSB7ICJKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yIiwgMCwg
MCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1Byb3BlcnR5TmFtZUl0ZXJhdG9yKSB9OwogCiBpbmxp
bmUgSlNQcm9wZXJ0eU5hbWVJdGVyYXRvcjo6SlNQcm9wZXJ0eU5hbWVJdGVyYXRvcihFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZUFycmF5RGF0YSogcHJvcGVydHlOYW1lQXJyYXlEYXRhLCBz
aXplX3QgbnVtQ2FjaGVhYmxlU2xvdHMpCiAgICAgOiBKU0NlbGwoZXhlYy0+dm0oKSwgZXhlYy0+
dm0oKS5wcm9wZXJ0eU5hbWVJdGVyYXRvclN0cnVjdHVyZS5nZXQoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJveHkuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKaW5kZXggNDk0YTc5ZS4uOTU4ODZmMCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm94eS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJM
RShKU1Byb3h5KTsKIAotY29uc3QgQ2xhc3NJbmZvIEpTUHJveHk6OnNfaW5mbyA9IHsgIkpTUHJv
eHkiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTUHJveHkpIH07
Citjb25zdCBDbGFzc0luZm8gSlNQcm94eTo6c19pbmZvID0geyAiSlNQcm94eSIsICZCYXNlOjpz
X2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNQcm94eSkgfTsKIAogdm9pZCBKU1Byb3h5
Ojp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldC5jcHAKaW5kZXggOWM5YWE1Mi4uM2MxZDEy
NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTZXQuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0LmNwcApAQCAtMzMsNyArMzMs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8g
PSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0
KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU2V0OjpzX2luZm8gPSB7ICJTZXQiLCAmQmFzZTo6c19p
bmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU2V0KSB9OwogCiB2b2lkIEpTU2V0Ojp2aXNp
dENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1NldEl0ZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0SXRlcmF0b3IuY3BwCmluZGV4IDFmZGZl
MjkuLmVjOTJjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pT
U2V0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU2V0
SXRlcmF0b3IuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNTZXRJdGVyYXRvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1NldEl0ZXJhdG9yKSB9Owor
Y29uc3QgQ2xhc3NJbmZvIEpTU2V0SXRlcmF0b3I6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIs
ICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNTZXRJdGVyYXRvcikgfTsK
IAogdm9pZCBKU1NldEl0ZXJhdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTU2V0KiBpdGVy
YXRlZE9iamVjdCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTU3RyaW5nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNw
cAppbmRleCBiNTE0MWIxLi5mZjNiNjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU1N0cmluZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNTdHJpbmcuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogICAg
IAotY29uc3QgQ2xhc3NJbmZvIEpTU3RyaW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3RyaW5nKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTU3Ry
aW5nOjpzX2luZm8gPSB7ICJzdHJpbmciLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTU3Ry
aW5nKSB9OwogCiB2b2lkIEpTUm9wZVN0cmluZzo6Um9wZUJ1aWxkZXI6OmV4cGFuZCgpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5
Q29uc3RydWN0b3JzLmNwcAppbmRleCA3YzQ5NTVkLi5mNDJmMzE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuY3BwCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogCiAjZGVmaW5lIE1BS0Vf
U19JTkZPKHR5cGUpIFwKLSAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMj
Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9y
OjpCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0
cnVjdG9yKX0KKyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjQ29uc3Ry
dWN0b3I6OnNfaW5mbyA9IHsiRnVuY3Rpb24iLCAmSlMjI3R5cGUjI0NvbnN0cnVjdG9yOjpCYXNl
OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI0NvbnN0cnVjdG9yKX0K
IAogTUFLRV9TX0lORk8oSW50OEFycmF5KTsKIE1BS0VfU19JTkZPKEludDE2QXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5UHJvdG90
eXBlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90
b3R5cGVzLmNwcAppbmRleCA3OGM2YmFmLi5jMDFkOGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVkQXJyYXlQcm90b3R5cGVzLmNwcApAQCAt
MzIsNyArMzIsNyBAQAogbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFLRV9TX0lORk8odHlw
ZSkgXAotICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBlIyNQcm90b3R5cGU6
OnNfaW5mbyA9IHsjdHlwZSAiUHJvdG90eXBlIiwgJkpTIyN0eXBlIyNQcm90b3R5cGU6OkJhc2U6
OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKUyMjdHlwZSMjUHJvdG90eXBlKX0K
KyAgICB0ZW1wbGF0ZTw+IGNvbnN0IENsYXNzSW5mbyBKUyMjdHlwZSMjUHJvdG90eXBlOjpzX2lu
Zm8gPSB7I3R5cGUgIlByb3RvdHlwZSIsICZKUyMjdHlwZSMjUHJvdG90eXBlOjpCYXNlOjpzX2lu
Zm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlMjI3R5cGUjI1Byb3RvdHlwZSl9CiAKIE1BS0Vf
U19JTkZPKEludDhBcnJheSk7CiBNQUtFX1NfSU5GTyhJbnQxNkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZWRBcnJheXMuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFycmF5cy5jcHAKaW5kZXggNDk2NDkwNy4u
MmM1YzQ3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBl
ZEFycmF5cy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNUeXBlZEFy
cmF5cy5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICNkZWZpbmUgTUFL
RV9TX0lORk8odHlwZSkgXAogICAgIHRlbXBsYXRlPD4gY29uc3QgQ2xhc3NJbmZvIEpTIyN0eXBl
IyNBcnJheTo6c19pbmZvID0geyBcCi0gICAgICAgICN0eXBlICJBcnJheSIsICZKUyMjdHlwZSMj
QXJyYXk6OkJhc2U6OnNfaW5mbywgMCwgMCwgXAorICAgICAgICAjdHlwZSAiQXJyYXkiLCAmSlMj
I3R5cGUjI0FycmF5OjpCYXNlOjpzX2luZm8sIDAsIFwKICAgICAgICAgQ1JFQVRFX01FVEhPRF9U
QUJMRShKUyMjdHlwZSMjQXJyYXkpIFwKICAgICB9OyBcCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBn
ZXQjI3R5cGUjI0FycmF5Q2xhc3NJbmZvKCkgeyByZXR1cm4gJkpTIyN0eXBlIyNBcnJheTo6c19p
bmZvOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1Zhcmlh
YmxlT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVP
YmplY3QuY3BwCmluZGV4IGQxOWM2NTguLmM3ZDRiYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTVmFyaWFibGVPYmplY3QuY3BwCkBAIC0zMyw2ICszMyw2IEBA
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gSlNWYXJpYWJsZU9iamVjdDo6
c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07Citjb25zdCBDbGFzc0luZm8gSlNWYXJp
YWJsZU9iamVjdDo6c19pbmZvID0geyAiVmFyaWFibGVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTVmFyaWFibGVPYmplY3QpIH07CiAKIH0gLy8gbmFtZXNw
YWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXZWFr
TWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTV2Vha01hcC5jcHAKaW5k
ZXggZjU0NjUyYi4uODBiNDZjZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNXZWFrTWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1dlYWtNYXAuY3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25z
dCBDbGFzc0luZm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5m
bywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07Citjb25zdCBDbGFzc0lu
Zm8gSlNXZWFrTWFwOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShKU1dlYWtNYXApIH07CiAKIHZvaWQgSlNXZWFrTWFwOjpmaW5pc2hD
cmVhdGlvbihWTSYgdm0pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1dpdGhTY29wZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1dp
dGhTY29wZS5jcHAKaW5kZXggNjg5ZjE1Mi4uMjNkNzA4MCAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNXaXRoU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTV2l0aFNjb3BlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1l
c3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJX
aXRoU2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0
aFNjb3BlKSB9OworY29uc3QgQ2xhc3NJbmZvIEpTV2l0aFNjb3BlOjpzX2luZm8gPSB7ICJXaXRo
U2NvcGUiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTV2l0aFNjb3Bl
KSB9OwogCiB2b2lkIEpTV2l0aFNjb3BlOjp2aXNpdENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xv
dFZpc2l0b3ImIHZpc2l0b3IpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Mb29rdXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3Vw
LmNwcAppbmRleCA0ODI4YmNkLi5lZjdhYmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Mb29rdXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0xvb2t1cC5jcHAKQEAgLTI2LDcgKzI2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLXZv
aWQgSGFzaFRhYmxlOjpjcmVhdGVUYWJsZShWTSYpIGNvbnN0Cit2b2lkIEhhc2hUYWJsZTo6Y3Jl
YXRlVGFibGUoKSBjb25zdAogewogICAgIEFTU0VSVCgha2V5cyk7CiAgICAga2V5cyA9IHN0YXRp
Y19jYXN0PGNvbnN0IGNoYXIqKj4oZmFzdE1hbGxvYyhzaXplb2YoY2hhciopICogbnVtYmVyT2ZW
YWx1ZXMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xvb2t1
cC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTG9va3VwLmgKaW5kZXggOTA5NzM0
YjQ0Li44NTMzNjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9M
b29rdXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Mb29rdXAuaApAQCAt
ODMsMzEgKzgzLDQwIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKICAgICAgICAgfQogCi0gICAgICAgIEFMV0FZU19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZO
ZWVkZWQoVk0mIHZtKSBjb25zdAorICAgICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgaW5pdGlhbGl6
ZUlmTmVlZGVkKCkgY29uc3QKICAgICAgICAgewogICAgICAgICAgICAgaWYgKCFrZXlzKQotICAg
ICAgICAgICAgICAgIGNyZWF0ZVRhYmxlKHZtKTsKLSAgICAgICAgfQotCi0gICAgICAgIEFMV0FZ
U19JTkxJTkUgdm9pZCBpbml0aWFsaXplSWZOZWVkZWQoRXhlY1N0YXRlKiBleGVjKSBjb25zdAot
ICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIWtleXMpCi0gICAgICAgICAgICAgICAgY3JlYXRl
VGFibGUoZXhlYy0+dm0oKSk7CisgICAgICAgICAgICAgICAgY3JlYXRlVGFibGUoKTsKICAgICAg
ICAgfQogCiAgICAgICAgIEpTX0VYUE9SVF9QUklWQVRFIHZvaWQgZGVsZXRlVGFibGUoKSBjb25z
dDsKIAogICAgICAgICAvLyBGaW5kIGFuIGVudHJ5IGluIHRoZSB0YWJsZSwgYW5kIHJldHVybiB0
aGUgZW50cnkuCi0gICAgICAgIEFMV0FZU19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVu
dHJ5KFZNJiB2bSwgUHJvcGVydHlOYW1lIGlkZW50aWZpZXIpIGNvbnN0CisgICAgICAgIEFMV0FZ
U19JTkxJTkUgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0
eU5hbWUpIGNvbnN0CiAgICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2
bSk7Ci0gICAgICAgICAgICByZXR1cm4gZW50cnkoaWRlbnRpZmllcik7Ci0gICAgICAgIH0KKyAg
ICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCgpOwogCi0gICAgICAgIEFMV0FZU19JTkxJTkUg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1l
IGlkZW50aWZpZXIpIGNvbnN0Ci0gICAgICAgIHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5l
ZWRlZChleGVjKTsKLSAgICAgICAgICAgIHJldHVybiBlbnRyeShpZGVudGlmaWVyKTsKKyAgICAg
ICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUudWlkKCk7CisgICAgICAgICAg
ICBpZiAoIWltcGwpCisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIAorICAgICAg
ICAgICAgQVNTRVJUKGtleXMpOworCisgICAgICAgICAgICBpbnQgaW5kZXhFbnRyeSA9IGltcGwt
PmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOworICAgICAgICAgICAgaW50IHZhbHVlSW5kZXgg
PSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKKyAgICAgICAgICAgIGlmICh2YWx1ZUluZGV4ID09
IC0xKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICB3aGlsZSAodHJ1
ZSkgeworICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGltcGwsIGtleXNbdmFsdWVJbmRl
eF0pKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVlc1t2YWx1ZUluZGV4XTsKKwor
ICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRleEVudHJ5XS5uZXh0OworICAg
ICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgICAgICAgICB2YWx1ZUluZGV4ID0gaW5kZXhbaW5kZXhF
bnRyeV0udmFsdWU7CisgICAgICAgICAgICAgICAgQVNTRVJUKHZhbHVlSW5kZXggIT0gLTEpOwor
ICAgICAgICAgICAgfTsKICAgICAgICAgfQogCiAgICAgICAgIGNsYXNzIENvbnN0SXRlcmF0b3Ig
ewpAQCAtMTYxLDQ1ICsxNzAsMjAgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgICAgICBpbnQg
bV9wb3NpdGlvbjsKICAgICAgICAgfTsKIAotICAgICAgICBDb25zdEl0ZXJhdG9yIGJlZ2luKFZN
JiB2bSkgY29uc3QKKyAgICAgICAgQ29uc3RJdGVyYXRvciBiZWdpbigpIGNvbnN0CiAgICAgICAg
IHsKLSAgICAgICAgICAgIGluaXRpYWxpemVJZk5lZWRlZCh2bSk7CisgICAgICAgICAgICBpbml0
aWFsaXplSWZOZWVkZWQoKTsKICAgICAgICAgICAgIHJldHVybiBDb25zdEl0ZXJhdG9yKHRoaXMs
IDApOwogICAgICAgICB9Ci0gICAgICAgIENvbnN0SXRlcmF0b3IgZW5kKFZNJiB2bSkgY29uc3QK
KyAgICAgICAgQ29uc3RJdGVyYXRvciBlbmQoKSBjb25zdAogICAgICAgICB7Ci0gICAgICAgICAg
ICBpbml0aWFsaXplSWZOZWVkZWQodm0pOworICAgICAgICAgICAgaW5pdGlhbGl6ZUlmTmVlZGVk
KCk7CiAgICAgICAgICAgICByZXR1cm4gQ29uc3RJdGVyYXRvcih0aGlzLCBudW1iZXJPZlZhbHVl
cyk7CiAgICAgICAgIH0KIAogICAgIHByaXZhdGU6Ci0gICAgICAgIEFMV0FZU19JTkxJTkUgY29u
c3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5KFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpIGNvbnN0
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIFN0cmluZ0ltcGwqIGltcGwgPSBwcm9wZXJ0eU5hbWUu
dWlkKCk7Ci0gICAgICAgICAgICBpZiAoIWltcGwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDA7
Ci0gICAgICAgIAotICAgICAgICAgICAgQVNTRVJUKGtleXMpOwotCi0gICAgICAgICAgICBpbnQg
aW5kZXhFbnRyeSA9IGltcGwtPmV4aXN0aW5nSGFzaCgpICYgaW5kZXhNYXNrOwotICAgICAgICAg
ICAgaW50IHZhbHVlSW5kZXggPSBpbmRleFtpbmRleEVudHJ5XS52YWx1ZTsKLSAgICAgICAgICAg
IGlmICh2YWx1ZUluZGV4ID09IC0xKQotICAgICAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAg
ICAgICAgICB3aGlsZSAodHJ1ZSkgewotICAgICAgICAgICAgICAgIGlmIChXVEY6OmVxdWFsKGlt
cGwsIGtleXNbdmFsdWVJbmRleF0pKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gJnZhbHVl
c1t2YWx1ZUluZGV4XTsKLQotICAgICAgICAgICAgICAgIGluZGV4RW50cnkgPSBpbmRleFtpbmRl
eEVudHJ5XS5uZXh0OwotICAgICAgICAgICAgICAgIGlmIChpbmRleEVudHJ5ID09IC0xKQotICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgICAgICB2YWx1ZUlu
ZGV4ID0gaW5kZXhbaW5kZXhFbnRyeV0udmFsdWU7Ci0gICAgICAgICAgICAgICAgQVNTRVJUKHZh
bHVlSW5kZXggIT0gLTEpOwotICAgICAgICAgICAgfTsKLSAgICAgICAgfQotCiAgICAgICAgIC8v
IENvbnZlcnQgdGhlIGhhc2ggdGFibGUga2V5cyB0byBpZGVudGlmaWVycy4KLSAgICAgICAgSlNf
RVhQT1JUX1BSSVZBVEUgdm9pZCBjcmVhdGVUYWJsZShWTSYpIGNvbnN0OworICAgICAgICBKU19F
WFBPUlRfUFJJVkFURSB2b2lkIGNyZWF0ZVRhYmxlKCkgY29uc3Q7CiAgICAgfTsKIAogICAgIEpT
X0VYUE9SVF9QUklWQVRFIGJvb2wgc2V0VXBTdGF0aWNGdW5jdGlvblNsb3QoRXhlY1N0YXRlKiwg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqLCBKU09iamVjdCogdGhpc09iamVjdCwgUHJvcGVydHlOYW1l
LCBQcm9wZXJ0eVNsb3QmKTsKQEAgLTIxMyw3ICsxOTcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICB0ZW1wbGF0ZSA8Y2xhc3MgVGhpc0ltcCwgY2xhc3MgUGFyZW50SW1wPgogICAgIGlubGluZSBi
b29sIGdldFN0YXRpY1Byb3BlcnR5U2xvdChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEhhc2hUYWJs
ZSYgdGFibGUsIFRoaXNJbXAqIHRoaXNPYmosIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFBy
b3BlcnR5U2xvdCYgc2xvdCkKICAgICB7Ci0gICAgICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBl
bnRyeSA9IHRhYmxlLmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgICAgIGNvbnN0IEhh
c2hUYWJsZVZhbHVlKiBlbnRyeSA9IHRhYmxlLmVudHJ5KHByb3BlcnR5TmFtZSk7CiAKICAgICAg
ICAgaWYgKCFlbnRyeSkgLy8gbm90IGZvdW5kLCBmb3J3YXJkIHRvIHBhcmVudAogICAgICAgICAg
ICAgcmV0dXJuIFBhcmVudEltcDo6Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmosIGV4ZWMsIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CkBAIC0yNDEsNyArMjI1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAg
ICAgICAgIGlmIChQYXJlbnRJbXA6OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqLCBleGVjLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICAgICAg
Y29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlO
YW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnko
cHJvcGVydHlOYW1lKTsKICAgICAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKIApAQCAtMjU1LDcgKzIzOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgIHRlbXBsYXRl
IDxjbGFzcyBUaGlzSW1wLCBjbGFzcyBQYXJlbnRJbXA+CiAgICAgaW5saW5lIGJvb2wgZ2V0U3Rh
dGljVmFsdWVTbG90KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSGFzaFRhYmxlJiB0YWJsZSwgVGhp
c0ltcCogdGhpc09iaiwgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBz
bG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUu
ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUq
IGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1lKTsKIAogICAgICAgICBpZiAoIWVudHJ5
KSAvLyBub3QgZm91bmQsIGZvcndhcmQgdG8gcGFyZW50CiAgICAgICAgICAgICByZXR1cm4gUGFy
ZW50SW1wOjpnZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iaiwgZXhlYywgcHJvcGVydHlOYW1lLCBz
bG90KTsKQEAgLTI5MSw3ICsyNzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgKi8KICAgICBp
bmxpbmUgYm9vbCBsb29rdXBQdXQoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVy
dHlOYW1lLCBKU09iamVjdCogYmFzZSwgSlNWYWx1ZSB2YWx1ZSwgY29uc3QgSGFzaFRhYmxlJiB0
YWJsZSwgUHV0UHJvcGVydHlTbG90JiBzbG90KQogICAgIHsKLSAgICAgICAgY29uc3QgSGFzaFRh
YmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICAg
ICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0gdGFibGUuZW50cnkocHJvcGVydHlOYW1l
KTsKIAogICAgICAgICBpZiAoIWVudHJ5KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4
IDA0ZjE3ZDkuLmZiNjgzMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL01hcENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9NYXBDb25zdHJ1Y3Rvci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7
CiAKLWNvbnN0IENsYXNzSW5mbyBNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24i
LCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcENvbnN0cnVjdG9y
KSB9OworY29uc3QgQ2xhc3NJbmZvIE1hcENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlv
biIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwQ29uc3RydWN0b3Ip
IH07CiAKIHZvaWQgTWFwQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTWFwUHJv
dG90eXBlKiBtYXBQcm90b3R5cGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01h
cERhdGEuY3BwCmluZGV4IGI5ZTczYWUuLmRkYzYwMjY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9NYXBEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9NYXBEYXRhLmNwcApAQCAtMzgsNyArMzgsNyBAQAogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIE1hcERhdGE6OnNfaW5mbyA9IHsgIk1hcERhdGEiLCAwLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcERhdGEpIH07Citjb25zdCBDbGFzc0luZm8gTWFw
RGF0YTo6c19pbmZvID0geyAiTWFwRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFw
RGF0YSkgfTsKIAogc3RhdGljIGNvbnN0IGludDMyX3QgbWluaW11bU1hcFNpemUgPSA4OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvckNvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29u
c3RydWN0b3IuY3BwCmluZGV4IDQwY2MyMzkuLjBmOTNkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwCkBA
IC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFw
SXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTWFwSXRlcmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZv
ID0geyAiTWFwSXRlcmF0b3IgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKE1hcEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07CiAKIHZvaWQgTWFwSXRlcmF0b3JD
b25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBNYXBJdGVyYXRvclByb3RvdHlwZSog
cHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwSXRlcmF0b3JQcm90b3R5cGUuY3BwCmluZGV4IDc4ZmI2NjkuLjBkZDlkZWMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcEl0ZXJhdG9yUHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9NYXBJdGVyYXRvclByb3RvdHlw
ZS5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNz
SW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAiTWFwIEl0ZXJhdG9yIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJdGVyYXRvclByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBJdGVyYXRvclByb3RvdHlwZTo6c19pbmZvID0geyAi
TWFwIEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXBJ
dGVyYXRvclByb3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgTWFwSXRlcmF0b3JQcm90b3R5cGVGdW5jSXRlcmF0b3IoRXhlY1N0YXRlKik7CiBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBNYXBJdGVyYXRvclByb3RvdHlwZUZ1bmNOZXh0
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
TWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcFByb3Rv
dHlwZS5jcHAKaW5kZXggNTIyMTE3Ny4uZDIyMTNmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTWFwUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9NYXBQcm90b3R5cGUuY3BwCkBAIC0zOSw3ICszOSw3IEBACiAKIG5hbWVz
cGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJN
YXAiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE1hcFByb3RvdHlw
ZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXBQcm90b3R5cGU6OnNfaW5mbyA9IHsgIk1hcCIsICZC
YXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWFwUHJvdG90eXBlKSB9OwogCiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBtYXBQcm90b0Z1bmNDbGVhcihFeGVj
U3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG1hcFByb3RvRnVu
Y0RlbGV0ZShFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hdGhPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0
aE9iamVjdC5jcHAKaW5kZXggYmI5NGViNi4uMzc3MzIyNSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTWF0aE9iamVjdC5jcHAKQEAgLTc0LDcgKzc0LDcgQEAgc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgbWF0aFByb3RvRnVuY0lNdWwoRXhlY1N0YXRlKik7
CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTWF0aE9iamVjdDo6c19pbmZv
ID0geyAiTWF0aCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTWF0
aE9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBNYXRoT2JqZWN0OjpzX2luZm8gPSB7ICJNYXRo
IiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShNYXRoT2JqZWN0KSB9Owog
CiBNYXRoT2JqZWN0OjpNYXRoT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAg
ICAgOiBKU05vbkZpbmFsT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTmFtZUNvbnN0cnVjdG9yLmNwcAppbmRleCAzOTI2ODgzLi5lNDk3
YTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lQ29uc3Ry
dWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVDb25zdHJ1
Y3Rvci5jcHAKQEAgLTM0LDcgKzM0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NF
UlRfSVNfVFJJVklBTExZX0RFU1RSVUNUSUJMRShOYW1lQ29uc3RydWN0b3IpOwogCi1jb25zdCBD
bGFzc0luZm8gTmFtZUNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZCYXNlOjpz
X2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUNvbnN0cnVjdG9yKSB9OworY29u
c3QgQ2xhc3NJbmZvIE5hbWVDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFz
ZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVDb25zdHJ1Y3RvcikgfTsKIAog
TmFtZUNvbnN0cnVjdG9yOjpOYW1lQ29uc3RydWN0b3IoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSkKICAgICA6IEludGVybmFsRnVuY3Rpb24odm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0YW5jZS5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYW1lSW5zdGFuY2UuY3BwCmluZGV4IGNjNmNlOWIuLmY2
ZDdmNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hbWVJbnN0
YW5jZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZUluc3RhbmNl
LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJ
bmZvIE5hbWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OworY29uc3QgQ2xhc3NJbmZvIE5h
bWVJbnN0YW5jZTo6c19pbmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoTmFtZUluc3RhbmNlKSB9OwogCiBOYW1lSW5zdGFuY2U6Ok5hbWVJbnN0YW5j
ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBKU1N0cmluZyogbmFtZVN0cmluZykKICAg
ICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hbWVQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTmFtZVByb3RvdHlwZS5jcHAKaW5kZXggZDAzMGZkMC4uYmYwOGQ5YSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmFtZVByb3RvdHlwZS5jcHAKQEAgLTM5LDcgKzM5
LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgcHJpdmF0ZU5hbWVQcm90
b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENs
YXNzSW5mbyBOYW1lUHJvdG90eXBlOjpzX2luZm8gPSB7ICJOYW1lIiwgJkJhc2U6OnNfaW5mbywg
MCwgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKE5hbWVQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gTmFtZVByb3RvdHlwZTo6c19p
bmZvID0geyAiTmFtZSIsICZCYXNlOjpzX2luZm8sICZwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxl
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKE5hbWVQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3Ig
TmFtZVByb3RvdHlwZS5sdXQuaAogQGJlZ2luIHByaXZhdGVOYW1lUHJvdG90eXBlVGFibGUKQEAg
LTYwLDcgKzYwLDcgQEAgdm9pZCBOYW1lUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAKIGJvb2wgTmFtZVByb3RvdHlwZTo6Z2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiBvYmpl
Y3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlT
bG90ICZzbG90KQogewotICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8QmFzZT4oZXhl
YywgRXhlY1N0YXRlOjpwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlKGV4ZWMtPnZtKCkpLCBqc0Nh
c3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0
dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxCYXNlPihleGVjLCBwcml2YXRlTmFtZVByb3RvdHlw
ZVRhYmxlLCBqc0Nhc3Q8TmFtZVByb3RvdHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xv
dCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCmluZGV4IDYyNjAwNTUuLjMy
YzlmNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVy
cm9yQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05h
dGl2ZUVycm9yQ29uc3RydWN0b3IuY3BwCkBAIC0zMSw3ICszMSw3IEBAIG5hbWVzcGFjZSBKU0Mg
ewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpz
X2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNz
SW5mbyBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5jdGlvbiIsICZJbnRl
cm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoTmF0aXZlRXJyb3JD
b25zdHJ1Y3RvcikgfTsKIAogTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6TmF0aXZlRXJyb3JDb25z
dHJ1Y3RvcihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgIDogSW50ZXJuYWxGdW5j
dGlvbih2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCmluZGV4IDA0YzUwOTguLmY0ZWFlZGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAK
QEAgLTQzLDcgKzQzLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIFNUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShOdW1iZXJDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0IENsYXNzSW5m
byBOdW1iZXJDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5j
dGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFU
RV9NRVRIT0RfVEFCTEUoTnVtYmVyQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gTnVt
YmVyQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246
OnNfaW5mbywgJm51bWJlckNvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBmb3IgTnVtYmVyQ29uc3RydWN0b3IubHV0
LmgKIEBiZWdpbiBudW1iZXJDb25zdHJ1Y3RvclRhYmxlCkBAIC03NCw3ICs3NCw3IEBAIHZvaWQg
TnVtYmVyQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgTnVtYmVyUHJvdG90eXBl
KiBudW1iZXJQcm90b3R5cGUpCiAKIGJvb2wgTnVtYmVyQ29uc3RydWN0b3I6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
VmFsdWVTbG90PE51bWJlckNvbnN0cnVjdG9yLCBJbnRlcm5hbEZ1bmN0aW9uPihleGVjLCBFeGVj
U3RhdGU6Om51bWJlckNvbnN0cnVjdG9yVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxOdW1iZXJD
b25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdl
dFN0YXRpY1ZhbHVlU2xvdDxOdW1iZXJDb25zdHJ1Y3RvciwgSW50ZXJuYWxGdW5jdGlvbj4oZXhl
YywgbnVtYmVyQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PE51bWJlckNvbnN0cnVjdG9yKj4ob2Jq
ZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIG51
bWJlckNvbnN0cnVjdG9yTmFOVmFsdWUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNW
YWx1ZSwgUHJvcGVydHlOYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvTnVtYmVyT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlck9iamVjdC5jcHAKaW5kZXggNGRmNThlOC4uMzEzNTBjYyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJPYmplY3QuY3BwCkBAIC0zMCw3ICszMCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
TnVtYmVyT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIE51bWJlck9iamVjdDo6c19pbmZvID0g
eyAiTnVtYmVyIiwgJkpTV3JhcHBlck9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE51bWJlck9iamVjdCkgfTsKK2NvbnN0IENsYXNzSW5mbyBOdW1iZXJPYmplY3Q6OnNf
aW5mbyA9IHsgIk51bWJlciIsICZKU1dyYXBwZXJPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01F
VEhPRF9UQUJMRShOdW1iZXJPYmplY3QpIH07CiAKIE51bWJlck9iamVjdDo6TnVtYmVyT2JqZWN0
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiAgICAgOiBKU1dyYXBwZXJPYmplY3Qodm0s
IHN0cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051
bWJlclByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJQ
cm90b3R5cGUuY3BwCmluZGV4IDQyZWUzMGEuLjk0MDM5NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyUHJvdG90eXBlLmNwcApAQCAtNTYsNyArNTYsNyBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBudW1iZXJQcm90b0Z1bmNDbHoo
RXhlY1N0YXRlKik7CiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gTnVtYmVy
UHJvdG90eXBlOjpzX2luZm8gPSB7ICJOdW1iZXIiLCAmTnVtYmVyT2JqZWN0OjpzX2luZm8sIDAs
IEV4ZWNTdGF0ZTo6bnVtYmVyUHJvdG90eXBlVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVt
YmVyUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIE51bWJlclByb3RvdHlwZTo6c19pbmZv
ID0geyAiTnVtYmVyIiwgJk51bWJlck9iamVjdDo6c19pbmZvLCAmbnVtYmVyUHJvdG90eXBlVGFi
bGUsIENSRUFURV9NRVRIT0RfVEFCTEUoTnVtYmVyUHJvdG90eXBlKSB9OwogCiAvKiBTb3VyY2Ug
Zm9yIE51bWJlclByb3RvdHlwZS5sdXQuaAogQGJlZ2luIG51bWJlclByb3RvdHlwZVRhYmxlCkBA
IC04Nyw3ICs4Nyw3IEBAIHZvaWQgTnVtYmVyUHJvdG90eXBlOjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KikKIAogYm9vbCBOdW1iZXJQcm90b3R5cGU6OmdldE93blByb3Bl
cnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBw
cm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkKIHsKLSAgICByZXR1cm4gZ2V0U3RhdGlj
RnVuY3Rpb25TbG90PE51bWJlck9iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpudW1iZXJQcm90b3R5
cGVUYWJsZShleGVjLT52bSgpKSwganNDYXN0PE51bWJlclByb3RvdHlwZSo+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxOdW1i
ZXJPYmplY3Q+KGV4ZWMsIG51bWJlclByb3RvdHlwZVRhYmxlLCBqc0Nhc3Q8TnVtYmVyUHJvdG90
eXBlKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIEZ1bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9y
LmNwcAppbmRleCBhM2MxOTI3Li5jODhjMzUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC01OSw3ICs1OSw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUo
T2JqZWN0Q29uc3RydWN0b3IpOwogCi1jb25zdCBDbGFzc0luZm8gT2JqZWN0Q29uc3RydWN0b3I6
OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgRXhl
Y1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dENvbnN0cnVjdG9yKSB9OworY29uc3QgQ2xhc3NJbmZvIE9iamVjdENvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJGdW5jdGlvbiIsICZJbnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sICZvYmplY3RDb25z
dHJ1Y3RvclRhYmxlLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVjdENvbnN0cnVjdG9yKSB9Owog
CiAvKiBTb3VyY2UgZm9yIE9iamVjdENvbnN0cnVjdG9yLmx1dC5oCiBAYmVnaW4gb2JqZWN0Q29u
c3RydWN0b3JUYWJsZQpAQCAtOTUsNyArOTUsNyBAQCB2b2lkIE9iamVjdENvbnN0cnVjdG9yOjpm
aW5pc2hDcmVhdGlvbihWTSYgdm0sIE9iamVjdFByb3RvdHlwZSogb2JqZWN0UHJvdG90eXBlKQog
CiBib29sIE9iamVjdENvbnN0cnVjdG9yOjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIG9i
amVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBQcm9wZXJ0
eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVj
dD4oZXhlYywgRXhlY1N0YXRlOjpvYmplY3RDb25zdHJ1Y3RvclRhYmxlKGV4ZWMtPnZtKCkpLCBq
c0Nhc3Q8T2JqZWN0Q29uc3RydWN0b3IqPihvYmplY3QpLCBwcm9wZXJ0eU5hbWUsIHNsb3QpOwor
ICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsIG9iamVjdENv
bnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxPYmplY3RDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3Bl
cnR5TmFtZSwgc2xvdCk7CiB9CiAKIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTT2JqZWN0KiBjb25z
dHJ1Y3RPYmplY3QoRXhlY1N0YXRlKiBleGVjKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKaW5kZXggOWZhNzg2MS4uZTMwMjdkMyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQcm90b3R5cGUuY3Bw
CkBAIC00Miw3ICs0Miw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIG9i
amVjdFByb3RvRnVuY1RvTG9jYWxlU3RyaW5nKEV4ZWNTdGF0ZSopOwogCiBTVEFUSUNfQVNTRVJU
X0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoT2JqZWN0UHJvdG90eXBlKTsKIAotY29uc3QgQ2xh
c3NJbmZvIE9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiT2JqZWN0IiwgJkpTTm9uRmluYWxP
YmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmplY3RQcm90b3R5cGUp
IH07Citjb25zdCBDbGFzc0luZm8gT2JqZWN0UHJvdG90eXBlOjpzX2luZm8gPSB7ICJPYmplY3Qi
LCAmSlNOb25GaW5hbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iamVj
dFByb3RvdHlwZSkgfTsKIAogT2JqZWN0UHJvdG90eXBlOjpPYmplY3RQcm90b3R5cGUoVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0dWN0dXJlKQogICAgIDogSlNOb25GaW5hbE9iamVjdCh2bSwgc3R1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVRh
YmxlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3Bw
CmluZGV4IGM1M2I3MjEuLjIzZTNiMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Byb3BlcnR5VGFibGUuY3BwCkBAIC0zNSw3ICszNSw3IEBACiAKIG5hbWVzcGFjZSBK
U0MgewogCi1jb25zdCBDbGFzc0luZm8gUHJvcGVydHlUYWJsZTo6c19pbmZvID0geyAiUHJvcGVy
dHlUYWJsZSIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJvcGVydHlUYWJsZSkgfTsK
K2NvbnN0IENsYXNzSW5mbyBQcm9wZXJ0eVRhYmxlOjpzX2luZm8gPSB7ICJQcm9wZXJ0eVRhYmxl
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm9wZXJ0eVRhYmxlKSB9OwogCiBQcm9wZXJ0
eVRhYmxlKiBQcm9wZXJ0eVRhYmxlOjpjcmVhdGUoVk0mIHZtLCB1bnNpZ25lZCBpbml0aWFsQ2Fw
YWNpdHkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcAppbmRleCA0
N2M5NzlkLi4wMjkxMmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9SZWdFeHAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5j
cHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5m
byBSZWdFeHA6OnNfaW5mbyA9IHsgIlJlZ0V4cCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwKSB9OworY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cDo6c19pbmZvID0geyAiUmVnRXhw
IiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHApIH07CiAKIFJlZ0V4cEZsYWdzIHJl
Z0V4cEZsYWdzKGNvbnN0IFN0cmluZyYgc3RyaW5nKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCmluZGV4IDBjNmJmNDguLjUz
ZTIwYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBD
b25zdHJ1Y3Rvci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIHZvaWQgc2V0UmVnRXhwQ29u
c3RydWN0b3JNdWx0aWxpbmUoRXhlY1N0YXRlKiwgSlNPYmplY3QqLCBFbmNvZGVkSlNWYWx1ZSwK
IAogbmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBDb25zdHJ1Y3Rvcjo6
c19pbmZvID0geyAiRnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVj
U3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhw
Q29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwQ29uc3RydWN0b3I6OnNfaW5m
byA9IHsgIkZ1bmN0aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnJlZ0V4cENvbnN0
cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwQ29uc3RydWN0b3IpIH07CiAK
IC8qIFNvdXJjZSBmb3IgUmVnRXhwQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlCkBAIC0xNTUsNyArMTU1LDcgQEAgSlNWYWx1ZSBSZWdFeHBDb25zdHJ1Y3Rv
cjo6Z2V0UmlnaHRDb250ZXh0KEV4ZWNTdGF0ZSogZXhlYykKICAgICAKIGJvb2wgUmVnRXhwQ29u
c3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUq
IGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsK
LSAgICByZXR1cm4gZ2V0U3RhdGljVmFsdWVTbG90PFJlZ0V4cENvbnN0cnVjdG9yLCBJbnRlcm5h
bEZ1bmN0aW9uPihleGVjLCBFeGVjU3RhdGU6OnJlZ0V4cENvbnN0cnVjdG9yVGFibGUoZXhlYy0+
dm0oKSksIGpzQ2FzdDxSZWdFeHBDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CisgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBDb25zdHJ1Y3Rvciwg
SW50ZXJuYWxGdW5jdGlvbj4oZXhlYywgcmVnRXhwQ29uc3RydWN0b3JUYWJsZSwganNDYXN0PFJl
Z0V4cENvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0KICAgICAK
IEVuY29kZWRKU1ZhbHVlIHJlZ0V4cENvbnN0cnVjdG9yRG9sbGFyMShFeGVjU3RhdGUqIGV4ZWMs
IEpTT2JqZWN0KiBzbG90QmFzZSwgRW5jb2RlZEpTVmFsdWUsIFByb3BlcnR5TmFtZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBNYXRjaGVzQXJyYXkuY3Bw
CmluZGV4IGRlMzRlNWMuLjM0ZWJjYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE1hdGNoZXNBcnJheS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwTWF0Y2hlc0FycmF5LmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBu
YW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE1hdGNoZXNBcnJheTo6c19p
bmZvID0geyJBcnJheSIsICZKU0FycmF5OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUmVnRXhwTWF0Y2hlc0FycmF5KX07Citjb25zdCBDbGFzc0luZm8gUmVnRXhwTWF0Y2hlc0Fy
cmF5OjpzX2luZm8gPSB7IkFycmF5IiwgJkpTQXJyYXk6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBNYXRjaGVzQXJyYXkpfTsKIAogUmVnRXhwTWF0Y2hlc0FycmF5OjpSZWdF
eHBNYXRjaGVzQXJyYXkoVk0mIHZtLCBCdXR0ZXJmbHkqIGJ1dHRlcmZseSwgSlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNTdHJpbmcqIGlucHV0LCBSZWdFeHAqIHJlZ0V4cCwgTWF0Y2hS
ZXN1bHQgcmVzdWx0KQogICAgIDogSlNBcnJheSh2bSwgZ2xvYmFsT2JqZWN0LT5yZWdFeHBNYXRj
aGVzQXJyYXlTdHJ1Y3R1cmUoKSwgYnV0dGVyZmx5KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAKaW5kZXggNGU0YzAyYy4uMWIwOWIzOCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBPYmplY3QuY3BwCkBAIC01Miw3
ICs1Miw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiBTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9E
RVNUUlVDVElCTEUoUmVnRXhwT2JqZWN0KTsKIAotY29uc3QgQ2xhc3NJbmZvIFJlZ0V4cE9iamVj
dDo6c19pbmZvID0geyAiUmVnRXhwIiwgJkJhc2U6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBPYmplY3QpIH07Citjb25zdCBDbGFz
c0luZm8gUmVnRXhwT2JqZWN0OjpzX2luZm8gPSB7ICJSZWdFeHAiLCAmQmFzZTo6c19pbmZvLCAm
cmVnRXhwVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoUmVnRXhwT2JqZWN0KSB9OwogCiAvKiBT
b3VyY2UgZm9yIFJlZ0V4cE9iamVjdC5sdXQuaAogQGJlZ2luIHJlZ0V4cFRhYmxlCkBAIC05Nyw3
ICs5Nyw3IEBAIGJvb2wgUmVnRXhwT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3Qq
IG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0CiAgICAgICAgIHNsb3Quc2V0VmFsdWUo
cmVnRXhwLCBhdHRyaWJ1dGVzLCByZWdFeHAtPmdldExhc3RJbmRleCgpKTsKICAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgfQotICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8UmVnRXhwT2Jq
ZWN0LCBKU09iamVjdD4oZXhlYywgRXhlY1N0YXRlOjpyZWdFeHBUYWJsZShleGVjLT52bSgpKSwg
anNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CisgICAg
cmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xvdDxSZWdFeHBPYmplY3QsIEpTT2JqZWN0PihleGVjLCBy
ZWdFeHBUYWJsZSwganNDYXN0PFJlZ0V4cE9iamVjdCo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwg
c2xvdCk7CiB9CiAKIGJvb2wgUmVnRXhwT2JqZWN0OjpkZWxldGVQcm9wZXJ0eShKU0NlbGwqIGNl
bGwsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cFByb3RvdHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBQcm90b3R5cGUuY3BwCmluZGV4IDdh
ZWFmZjUuLmU3MmUxN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1JlZ0V4cFByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
UmVnRXhwUHJvdG90eXBlLmNwcApAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCByZWdFeHBQcm90b0Z1bmNUb1N0cmluZyhFeGVjU3RhdGUqKTsKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSZWdFeHBQcm90b3R5cGU6OnNfaW5m
byA9IHsgIlJlZ0V4cCIsICZSZWdFeHBPYmplY3Q6OnNfaW5mbywgMCwgRXhlY1N0YXRlOjpyZWdF
eHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07
Citjb25zdCBDbGFzc0luZm8gUmVnRXhwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJSZWdFeHAiLCAm
UmVnRXhwT2JqZWN0OjpzX2luZm8sICZyZWdFeHBQcm90b3R5cGVUYWJsZSwgQ1JFQVRFX01FVEhP
RF9UQUJMRShSZWdFeHBQcm90b3R5cGUpIH07CiAKIC8qIFNvdXJjZSBmb3IgUmVnRXhwUHJvdG90
eXBlLmx1dC5oCiBAYmVnaW4gcmVnRXhwUHJvdG90eXBlVGFibGUKQEAgLTY3LDcgKzY3LDcgQEAg
UmVnRXhwUHJvdG90eXBlOjpSZWdFeHBQcm90b3R5cGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgUmVnRXhwKiByZWdFeHApCiAKIGJvb2wgUmVnRXhwUHJvdG90eXBlOjpnZXRPd25Qcm9w
ZXJ0eVNsb3QoSlNPYmplY3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUg
cHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QgJnNsb3QpCiB7Ci0gICAgcmV0dXJuIGdldFN0YXRp
Y0Z1bmN0aW9uU2xvdDxSZWdFeHBPYmplY3Q+KGV4ZWMsIEV4ZWNTdGF0ZTo6cmVnRXhwUHJvdG90
eXBlVGFibGUoZXhlYy0+dm0oKSksIGpzQ2FzdDxSZWdFeHBQcm90b3R5cGUqPihvYmplY3QpLCBw
cm9wZXJ0eU5hbWUsIHNsb3QpOworICAgIHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8UmVn
RXhwT2JqZWN0PihleGVjLCByZWdFeHBQcm90b3R5cGVUYWJsZSwganNDYXN0PFJlZ0V4cFByb3Rv
dHlwZSo+KG9iamVjdCksIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rv
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRDb25zdHJ1Y3Rvci5jcHAK
aW5kZXggOGFkN2U1NC4uNDVlMzQ0MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvU2V0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1NldENvbnN0cnVjdG9yLmNwcApAQCAtMzcsNyArMzcsNyBAQAogCiBuYW1lc3BhY2Ug
SlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldENvbnN0cnVjdG9yOjpzX2luZm8gPSB7ICJGdW5j
dGlvbiIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0Q29uc3Ry
dWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0Q29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1
bmN0aW9uIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRDb25zdHJ1
Y3RvcikgfTsKIAogdm9pZCBTZXRDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtLCBT
ZXRQcm90b3R5cGUqIHNldFByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMTlkNzE2
ZS4uY2IxNmZmMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2V0SXRlcmF0b3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNw
YWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTZXRJdGVyYXRvckNvbnN0cnVjdG9yOjpzX2lu
Zm8gPSB7ICJTZXQgSXRlcmF0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKFNldEl0ZXJhdG9yQ29uc3RydWN0b3IpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRl
cmF0b3JDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiU2V0IEl0ZXJhdG9yIiwgJkJhc2U6OnNfaW5m
bywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTZXRJdGVyYXRvckNvbnN0cnVjdG9yKSB9OwogCiB2
b2lkIFNldEl0ZXJhdG9yQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSwgU2V0SXRl
cmF0b3JQcm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldEl0ZXJhdG9yUHJvdG90eXBlLmNwcAppbmRleCAzMTkzODFkLi4x
MTYwOWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TZXRJdGVy
YXRvclByb3RvdHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0
SXRlcmF0b3JQcm90b3R5cGUuY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5cGU6OnNfaW5mbyA9IHsgIlNl
dCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU2V0
SXRlcmF0b3JQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0SXRlcmF0b3JQcm90b3R5
cGU6OnNfaW5mbyA9IHsgIlNldCBJdGVyYXRvciIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9N
RVRIT0RfVEFCTEUoU2V0SXRlcmF0b3JQcm90b3R5cGUpIH07CiAKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIFNldEl0ZXJhdG9yUHJvdG90eXBlRnVuY0l0ZXJhdG9yKEV4ZWNT
dGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgU2V0SXRlcmF0b3JQ
cm90b3R5cGVGdW5jTmV4dChFeGVjU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TZXRQcm90b3R5cGUuY3BwCmluZGV4IDAxOTcwZTAuLjA1MjMzYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NldFByb3RvdHlwZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2V0UHJvdG90eXBlLmNwcApAQCAtMzksNyAr
MzksNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFNldFByb3RvdHlw
ZTo6c19pbmZvID0geyAiU2V0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9U
QUJMRShTZXRQcm90b3R5cGUpIH07Citjb25zdCBDbGFzc0luZm8gU2V0UHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTZXQiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFNldFBy
b3RvdHlwZSkgfTsKIAogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc2V0UHJv
dG9GdW5jQWRkKEV4ZWNTdGF0ZSopOwogc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgc2V0UHJvdG9GdW5jQ2xlYXIoRXhlY1N0YXRlKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9TcGFyc2VBcnJheVZhbHVlTWFwLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NwYXJzZUFycmF5VmFsdWVNYXAuY3BwCmluZGV4IGJlODk4ZDku
LjJhMTQ1ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1NwYXJz
ZUFycmF5VmFsdWVNYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Nw
YXJzZUFycmF5VmFsdWVNYXAuY3BwCkBAIC0zNyw3ICszNyw3IEBACiAKIG5hbWVzcGFjZSBKU0Mg
ewogCi1jb25zdCBDbGFzc0luZm8gU3BhcnNlQXJyYXlWYWx1ZU1hcDo6c19pbmZvID0geyAiU3Bh
cnNlQXJyYXlWYWx1ZU1hcCIsIDAsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3BhcnNlQXJy
YXlWYWx1ZU1hcCkgfTsKK2NvbnN0IENsYXNzSW5mbyBTcGFyc2VBcnJheVZhbHVlTWFwOjpzX2lu
Zm8gPSB7ICJTcGFyc2VBcnJheVZhbHVlTWFwIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShT
cGFyc2VBcnJheVZhbHVlTWFwKSB9OwogCiBTcGFyc2VBcnJheVZhbHVlTWFwOjpTcGFyc2VBcnJh
eVZhbHVlTWFwKFZNJiB2bSkKICAgICA6IEJhc2Uodm0sIHZtLnNwYXJzZUFycmF5VmFsdWVNYXBT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpY3RFdmFsQWN0aXZhdGlvbi5jcHAKaW5kZXggZTA1ZTdkMy4uNDI2ZDI5ZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaWN0RXZhbEFjdGl2YXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmljdEV2YWxBY3RpdmF0
aW9uLmNwcApAQCAtMzMsNyArMzMsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmljdEV2YWxBY3RpdmF0aW9uKTsKIAotY29u
c3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7ICJPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2YWxBY3RpdmF0
aW9uKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmljdEV2YWxBY3RpdmF0aW9uOjpzX2luZm8gPSB7
ICJPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN0cmljdEV2
YWxBY3RpdmF0aW9uKSB9OwogCiBTdHJpY3RFdmFsQWN0aXZhdGlvbjo6U3RyaWN0RXZhbEFjdGl2
YXRpb24oRXhlY1N0YXRlKiBleGVjKQogICAgIDogQmFzZSgKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCBmODIyMWQ3Li40
YmFlOTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5n
Q29uc3RydWN0b3IuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIHN0cmluZ0Zyb21DaGFyQ29kZShFeGVjU3RhdGUqKTsKIAogbmFtZXNwYWNl
IEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJpbmdDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAi
RnVuY3Rpb24iLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBFeGVjU3RhdGU6OnN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3Ip
IH07Citjb25zdCBDbGFzc0luZm8gU3RyaW5nQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0
aW9uIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgJnN0cmluZ0NvbnN0cnVjdG9yVGFibGUs
IENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nQ29uc3RydWN0b3IpIH07CiAKIC8qIFNvdXJjZSBm
b3IgU3RyaW5nQ29uc3RydWN0b3IubHV0LmgKIEBiZWdpbiBzdHJpbmdDb25zdHJ1Y3RvclRhYmxl
CkBAIC02Miw3ICs2Miw3IEBAIHZvaWQgU3RyaW5nQ29uc3RydWN0b3I6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSwgU3RyaW5nUHJvdG90eXBlKiBzdHJpbmdQcm90b3R5cGUpCiAKIGJvb2wgU3RyaW5n
Q29uc3RydWN0b3I6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3Rh
dGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCAmc2xvdCkK
IHsKLSAgICByZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4
ZWMsIEV4ZWNTdGF0ZTo6c3RyaW5nQ29uc3RydWN0b3JUYWJsZShleGVjLT52bSgpKSwganNDYXN0
PFN0cmluZ0NvbnN0cnVjdG9yKj4ob2JqZWN0KSwgcHJvcGVydHlOYW1lLCBzbG90KTsKKyAgICBy
ZXR1cm4gZ2V0U3RhdGljRnVuY3Rpb25TbG90PEludGVybmFsRnVuY3Rpb24+KGV4ZWMsIHN0cmlu
Z0NvbnN0cnVjdG9yVGFibGUsIGpzQ2FzdDxTdHJpbmdDb25zdHJ1Y3Rvcio+KG9iamVjdCksIHBy
b3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSBGdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCmluZGV4IGE1ZTIzZjcuLjMw
YzAxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09i
amVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0
LmNwcApAQCAtMzAsNyArMzAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogU1RBVElDX0FTU0VSVF9J
U19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFN0cmluZ09iamVjdCk7CiAKLWNvbnN0IENsYXNzSW5m
byBTdHJpbmdPYmplY3Q6OnNfaW5mbyA9IHsgIlN0cmluZyIsICZKU1dyYXBwZXJPYmplY3Q6OnNf
aW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJpbmdPYmplY3QpIH07Citjb25zdCBD
bGFzc0luZm8gU3RyaW5nT2JqZWN0OjpzX2luZm8gPSB7ICJTdHJpbmciLCAmSlNXcmFwcGVyT2Jq
ZWN0OjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3RyaW5nT2JqZWN0KSB9OwogCiBT
dHJpbmdPYmplY3Q6OlN0cmluZ09iamVjdChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQog
ICAgIDogSlNXcmFwcGVyT2JqZWN0KHZtLCBzdHJ1Y3R1cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRleCBmZDE5NDQ3Li4wYWI2
MzY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90
b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3Rv
dHlwZS5jcHAKQEAgLTgzLDcgKzgzLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NU
X0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIHN0cmluZ1Byb3RvRnVuY1RyaW1MZWZ0KEV4ZWNTdGF0ZSopOwog
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgc3RyaW5nUHJvdG9GdW5jVHJpbVJp
Z2h0KEV4ZWNTdGF0ZSopOwogCi1jb25zdCBDbGFzc0luZm8gU3RyaW5nUHJvdG90eXBlOjpzX2lu
Zm8gPSB7ICJTdHJpbmciLCAmU3RyaW5nT2JqZWN0OjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRI
T0RfVEFCTEUoU3RyaW5nUHJvdG90eXBlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cmluZ1Byb3Rv
dHlwZTo6c19pbmZvID0geyAiU3RyaW5nIiwgJlN0cmluZ09iamVjdDo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFN0cmluZ1Byb3RvdHlwZSkgfTsKIAogLy8gRUNNQSAxNS41LjQKIFN0
cmluZ1Byb3RvdHlwZTo6U3RyaW5nUHJvdG90eXBlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcAppbmRleCBl
NTU3OGQyLi4zZDViMGFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJ1Y3R1cmUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVj
dHVyZS5jcHAKQEAgLTE2MSw5ICsxNjEsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYgdm0s
IEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwogewog
ICAgIHNldERpY3Rpb25hcnlLaW5kKE5vbmVEaWN0aW9uYXJ5S2luZCk7CiAgICAgc2V0SXNQaW5u
ZWRQcm9wZXJ0eVRhYmxlKGZhbHNlKTsKLSAgICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVz
KGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBzZXRIYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKGNsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVy
T3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3VzdG9tR2V0dGVyU2V0dGVyUHJv
cGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRp
ZXNFeGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNF
eGNsdWRpbmdQcm90byhjbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkpOwogICAgIHNldEhhc05vbkVudW1lcmFibGVQcm9wZXJ0aWVzKGZhbHNlKTsKICAgICBz
ZXRBdHRyaWJ1dGVzSW5QcmV2aW91cygwKTsKICAgICBzZXRTcGVjaWZpY0Z1bmN0aW9uVGhyYXNo
Q291bnQoMCk7CkBAIC0xNzUsMTEgKzE3NSwxMSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYg
dm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlLCBjbwog
ICAgIEFTU0VSVChpbmxpbmVDYXBhY2l0eSA8PSBKU0ZpbmFsT2JqZWN0OjptYXhJbmxpbmVDYXBh
Y2l0eSgpKTsKICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8UHJvcGVydHlPZmZzZXQ+KGlubGluZUNh
cGFjaXR5KSA8IGZpcnN0T3V0T2ZMaW5lT2Zmc2V0KTsKICAgICBBU1NFUlQoIWhhc1JhcmVEYXRh
KCkpOwotICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1
ZGluZ1Byb3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJv
cGVydGllcyh2bSkpOwotICAgIEFTU0VSVChoYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwg
IW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcyh2bSkpOwor
ICAgIEFTU0VSVChoYXNSZWFkT25seU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1By
b3RvKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGll
cygpKTsKKyAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFtX2NsYXNz
SW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiB9CiAKLWNvbnN0
IENsYXNzSW5mbyBTdHJ1Y3R1cmU6OnNfaW5mbyA9IHsgIlN0cnVjdHVyZSIsIDAsIDAsIDAsIENS
RUFURV9NRVRIT0RfVEFCTEUoU3RydWN0dXJlKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVy
ZTo6c19pbmZvID0geyAiU3RydWN0dXJlIiwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShTdHJ1
Y3R1cmUpIH07CiAKIFN0cnVjdHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICA6IEpTQ2VsbChD
cmVhdGluZ0Vhcmx5Q2VsbCkKQEAgLTE5Miw5ICsxOTIsOSBAQCBTdHJ1Y3R1cmU6OlN0cnVjdHVy
ZShWTSYgdm0pCiB7CiAgICAgc2V0RGljdGlvbmFyeUtpbmQoTm9uZURpY3Rpb25hcnlLaW5kKTsK
ICAgICBzZXRJc1Bpbm5lZFByb3BlcnR5VGFibGUoZmFsc2UpOwotICAgIHNldEhhc0dldHRlclNl
dHRlclByb3BlcnRpZXMobV9jbGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgc2V0SGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcyhtX2NsYXNzSW5m
by0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoKSk7CiAgICAgc2V0SGFzQ3Vz
dG9tR2V0dGVyU2V0dGVyUHJvcGVydGllcyhmYWxzZSk7Ci0gICAgc2V0SGFzUmVhZE9ubHlPckdl
dHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90byhtX2NsYXNzSW5mby0+aGFzU3RhdGlj
U2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAgICBzZXRIYXNSZWFkT25seU9yR2V0
dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1Byb3RvKG1fY2xhc3NJbmZvLT5oYXNTdGF0aWNT
ZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICBzZXRIYXNOb25FbnVtZXJhYmxlUHJv
cGVydGllcyhmYWxzZSk7CiAgICAgc2V0QXR0cmlidXRlc0luUHJldmlvdXMoMCk7CiAgICAgc2V0
U3BlY2lmaWNGdW5jdGlvblRocmFzaENvdW50KDApOwpAQCAtMjA3LDggKzIwNyw4IEBAIFN0cnVj
dHVyZTo6U3RydWN0dXJlKFZNJiB2bSkKICAgICBtX2Jsb2IgPSBTdHJ1Y3R1cmVJREJsb2Iodm0u
aGVhcC5zdHJ1Y3R1cmVJRFRhYmxlKCkuYWxsb2NhdGVJRCh0aGlzKSwgMCwgdHlwZUluZm8pOwog
ICAgIG1fb3V0T2ZMaW5lVHlwZUZsYWdzID0gdHlwZUluZm8ub3V0T2ZMaW5lVHlwZUZsYWdzKCk7
CiAKLSAgICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRp
bmdQcm90bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3Bl
cnRpZXModm0pKTsKLSAgICBBU1NFUlQoaGFzR2V0dGVyU2V0dGVyUHJvcGVydGllcygpIHx8ICFt
X2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXModm0pKTsKKyAg
ICBBU1NFUlQoaGFzUmVhZE9ubHlPckdldHRlclNldHRlclByb3BlcnRpZXNFeGNsdWRpbmdQcm90
bygpIHx8ICFtX2NsYXNzSW5mby0+aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMo
KSk7CisgICAgQVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOwogfQogCiBTdHJ1Y3R1
cmU6OlN0cnVjdHVyZShWTSYgdm0sIFN0cnVjdHVyZSogcHJldmlvdXMpCkBAIC0yNDUsOCArMjQ1
LDggQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHByZXZpb3VzKQog
ICAgIHByZXZpb3VzLT5ub3RpZnlUcmFuc2l0aW9uRnJvbVRoaXNTdHJ1Y3R1cmUoKTsKICAgICBp
ZiAocHJldmlvdXMtPm1fZ2xvYmFsT2JqZWN0KQogICAgICAgICBtX2dsb2JhbE9iamVjdC5zZXQo
dm0sIHRoaXMsIHByZXZpb3VzLT5tX2dsb2JhbE9iamVjdC5nZXQoKSk7Ci0gICAgQVNTRVJUKGhh
c1JlYWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9j
bGFzc0luZm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7Ci0gICAg
QVNTRVJUKGhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8fCAhbV9jbGFzc0luZm8tPmhhc1N0
YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKGhhc1JlYWRP
bmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhbV9jbGFzc0lu
Zm8tPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCho
YXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIW1fY2xhc3NJbmZvLT5oYXNTdGF0aWNTZXR0
ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKIH0KIAogU3RydWN0dXJlOjp+U3RydWN0dXJlKCkK
QEAgLTU5OSw4ICs1OTksOCBAQCBTdHJ1Y3R1cmUqIFN0cnVjdHVyZTo6ZnJlZXplVHJhbnNpdGlv
bihWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQogICAgICAgICAgICAgaXRlci0+YXR0cmli
dXRlcyB8PSBpdGVyLT5hdHRyaWJ1dGVzICYgQWNjZXNzb3IgPyBEb250RGVsZXRlIDogKERvbnRE
ZWxldGUgfCBSZWFkT25seSk7CiAgICAgfQogCi0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1Jl
YWRPbmx5T3JHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNp
dGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKHZt
KSk7Ci0gICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc0dldHRlclNldHRlclByb3BlcnRpZXMoKSB8
fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZvKCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9w
ZXJ0aWVzKHZtKSk7CisgICAgQVNTRVJUKHRyYW5zaXRpb24tPmhhc1JlYWRPbmx5T3JHZXR0ZXJT
ZXR0ZXJQcm9wZXJ0aWVzRXhjbHVkaW5nUHJvdG8oKSB8fCAhdHJhbnNpdGlvbi0+Y2xhc3NJbmZv
KCktPmhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0aWVzKCkpOworICAgIEFTU0VSVCh0
cmFuc2l0aW9uLT5oYXNHZXR0ZXJTZXR0ZXJQcm9wZXJ0aWVzKCkgfHwgIXRyYW5zaXRpb24tPmNs
YXNzSW5mbygpLT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKICAgICB0
cmFuc2l0aW9uLT5jaGVja09mZnNldENvbnNpc3RlbmN5KCk7CiAgICAgcmV0dXJuIHRyYW5zaXRp
b247CiB9CkBAIC0xMjQ3LDEwICsxMjQ3LDEwIEBAIHZvaWQgU3RydWN0dXJlOjpjaGVja0NvbnNp
c3RlbmN5KCkKIAogI2VuZGlmIC8vIERPX1BST1BFUlRZTUFQX0NPTlNURU5DWV9DSEVDSwogCi1i
b29sIENsYXNzSW5mbzo6aGFzU3RhdGljU2V0dGVyT3JSZWFkb25seVByb3BlcnRpZXMoVk0mIHZt
KSBjb25zdAorYm9vbCBDbGFzc0luZm86Omhhc1N0YXRpY1NldHRlck9yUmVhZG9ubHlQcm9wZXJ0
aWVzKCkgY29uc3QKIHsKICAgICBmb3IgKGNvbnN0IENsYXNzSW5mbyogY2kgPSB0aGlzOyBjaTsg
Y2kgPSBjaS0+cGFyZW50Q2xhc3MpIHsKLSAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJsZSogdGFi
bGUgPSBjaS0+cHJvcEhhc2hUYWJsZSh2bSkpIHsKKyAgICAgICAgaWYgKGNvbnN0IEhhc2hUYWJs
ZSogdGFibGUgPSBjaS0+c3RhdGljUHJvcEhhc2hUYWJsZSkgewogICAgICAgICAgICAgaWYgKHRh
YmxlLT5oYXNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcykKICAgICAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RydWN0dXJlQ2hhaW4uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlQ2hhaW4uY3BwCmluZGV4IGRjNDI4MzkuLmVmNDMxODkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUNoYWluLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVDaGFpbi5jcHAKQEAgLTMzLDcgKzMz
LDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAgICAgCi1jb25zdCBDbGFzc0luZm8gU3RydWN0dXJl
Q2hhaW46OnNfaW5mbyA9IHsgIlN0cnVjdHVyZUNoYWluIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhP
RF9UQUJMRShTdHJ1Y3R1cmVDaGFpbikgfTsKK2NvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVDaGFp
bjo6c19pbmZvID0geyAiU3RydWN0dXJlQ2hhaW4iLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZUNoYWluKSB9OwogCiBTdHJ1Y3R1cmVDaGFpbjo6U3RydWN0dXJlQ2hhaW4oVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQ2VsbCh2bSwgc3RydWN0dXJlKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURh
dGEuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlUmFyZURhdGEu
Y3BwCmluZGV4IDBmNGJkMjcuLjhjM2ZkODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cnVjdHVyZVJhcmVEYXRhLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YS5jcHAKQEAgLTMyLDcgKzMyLDcgQEAKIAog
bmFtZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTdHJ1Y3R1cmVSYXJlRGF0YTo6c19p
bmZvID0geyAiU3RydWN0dXJlUmFyZURhdGEiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KFN0cnVjdHVyZVJhcmVEYXRhKSB9OworY29uc3QgQ2xhc3NJbmZvIFN0cnVjdHVyZVJhcmVEYXRh
OjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmVSYXJlRGF0YSIsIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoU3RydWN0dXJlUmFyZURhdGEpIH07CiAKIFN0cnVjdHVyZSogU3RydWN0dXJlUmFyZURhdGE6
OmNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
VmFsdWUgcHJvdG90eXBlKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3ltYm9sVGFibGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3lt
Ym9sVGFibGUuY3BwCmluZGV4IDZiNWVmOWIuLjhmZGEwN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N5bWJvbFRhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIAogbmFt
ZXNwYWNlIEpTQyB7CiAKLWNvbnN0IENsYXNzSW5mbyBTeW1ib2xUYWJsZTo6c19pbmZvID0geyAi
U3ltYm9sVGFibGUiLCAwLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFN5bWJvbFRhYmxlKSB9
OworY29uc3QgQ2xhc3NJbmZvIFN5bWJvbFRhYmxlOjpzX2luZm8gPSB7ICJTeW1ib2xUYWJsZSIs
IDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoU3ltYm9sVGFibGUpIH07CiAKIFN5bWJvbFRhYmxl
RW50cnkmIFN5bWJvbFRhYmxlRW50cnk6OmNvcHlTbG93KGNvbnN0IFN5bWJvbFRhYmxlRW50cnkm
IG90aGVyKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDFkM2Q3Y2Iu
LjlkMzQ5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTEwOSwyOCAr
MTA5LDYgQEAgdXNpbmcgbmFtZXNwYWNlIFdURjsKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWV4dGVy
biBjb25zdCBIYXNoVGFibGUgYXJyYXlDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSBhcnJheVByb3RvdHlwZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIGpzb25UYWJsZTsKLWV4
dGVybiBjb25zdCBIYXNoVGFibGUgZGF0YVZpZXdUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFi
bGUgZGF0ZVRhYmxlOwotZXh0ZXJuIGNvbnN0IEhhc2hUYWJsZSBkYXRlQ29uc3RydWN0b3JUYWJs
ZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgZXJyb3JQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBj
b25zdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxl
IG51bWJlckNvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIG51bWJlclBy
b3RvdHlwZVRhYmxlOwotSlNfRVhQT1JUREFUQSBleHRlcm4gY29uc3QgSGFzaFRhYmxlIG9iamVj
dENvbnN0cnVjdG9yVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHByaXZhdGVOYW1lUHJv
dG90eXBlVGFibGU7Ci1leHRlcm4gY29uc3QgSGFzaFRhYmxlIHJlZ0V4cFRhYmxlOwotZXh0ZXJu
IGNvbnN0IEhhc2hUYWJsZSByZWdFeHBDb25zdHJ1Y3RvclRhYmxlOwotZXh0ZXJuIGNvbnN0IEhh
c2hUYWJsZSByZWdFeHBQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUgc3Ry
aW5nQ29uc3RydWN0b3JUYWJsZTsKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi1leHRlcm4gY29uc3Qg
SGFzaFRhYmxlIHByb21pc2VQcm90b3R5cGVUYWJsZTsKLWV4dGVybiBjb25zdCBIYXNoVGFibGUg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGU7Ci0jZW5kaWYKLQogLy8gTm90ZTogUGxhdGZvcm0uaCB3
aWxsIGVuZm9yY2UgdGhhdCBFTkFCTEUoQVNTRU1CTEVSKSBpcyB0cnVlIGlmIGVpdGhlcgogLy8g
RU5BQkxFKEpJVCkgb3IgRU5BQkxFKFlBUlJfSklUKSBvciBib3RoIGFyZSBlbmFibGVkLiBUaGUg
Y29kZSBiZWxvdwogLy8ganVzdCBjaGVja3MgZm9yIEVOQUJMRShKSVQpIG9yIEVOQUJMRShZQVJS
X0pJVCkgd2l0aCB0aGlzIHByZW1pc2UgaW4gbWluZC4KQEAgLTE3MiwyNyArMTUwLDYgQEAgVk06
OlZNKFZNVHlwZSB2bVR5cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQogICAgICwgdm1UeXBlKHZtVHlw
ZSkKICAgICAsIGNsaWVudERhdGEoMCkKICAgICAsIHRvcENhbGxGcmFtZShDYWxsRnJhbWU6Om5v
Q2FsbGVyKCkpCi0gICAgLCBhcnJheUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hU
YWJsZShKU0M6OmFycmF5Q29uc3RydWN0b3JUYWJsZSkpKQotICAgICwgYXJyYXlQcm90b3R5cGVU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6YXJyYXlQcm90b3R5cGVUYWJsZSkpKQot
ICAgICwgYm9vbGVhblByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpi
b29sZWFuUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGRhdGFWaWV3VGFibGUoYWRvcHRQdHIobmV3
IEhhc2hUYWJsZShKU0M6OmRhdGFWaWV3VGFibGUpKSkKLSAgICAsIGRhdGVUYWJsZShhZG9wdFB0
cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZVRhYmxlKSkpCi0gICAgLCBkYXRlQ29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6ZGF0ZUNvbnN0cnVjdG9yVGFibGUpKSkK
LSAgICAsIGVycm9yUHJvdG90eXBlVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OmVy
cm9yUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIGdsb2JhbE9iamVjdFRhYmxlKGFkb3B0UHRyKG5l
dyBIYXNoVGFibGUoSlNDOjpnbG9iYWxPYmplY3RUYWJsZSkpKQotICAgICwganNvblRhYmxlKGFk
b3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpqc29uVGFibGUpKSkKLSAgICAsIG51bWJlckNvbnN0
cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6Om51bWJlckNvbnN0cnVjdG9y
VGFibGUpKSkKLSAgICAsIG51bWJlclByb3RvdHlwZVRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFi
bGUoSlNDOjpudW1iZXJQcm90b3R5cGVUYWJsZSkpKQotICAgICwgb2JqZWN0Q29uc3RydWN0b3JU
YWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxlKEpTQzo6b2JqZWN0Q29uc3RydWN0b3JUYWJsZSkp
KQotICAgICwgcHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRhYmxl
KEpTQzo6cHJpdmF0ZU5hbWVQcm90b3R5cGVUYWJsZSkpKQotICAgICwgcmVnRXhwVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnJlZ0V4cFRhYmxlKSkpCi0gICAgLCByZWdFeHBDb25z
dHJ1Y3RvclRhYmxlKGFkb3B0UHRyKG5ldyBIYXNoVGFibGUoSlNDOjpyZWdFeHBDb25zdHJ1Y3Rv
clRhYmxlKSkpCi0gICAgLCByZWdFeHBQcm90b3R5cGVUYWJsZShhZG9wdFB0cihuZXcgSGFzaFRh
YmxlKEpTQzo6cmVnRXhwUHJvdG90eXBlVGFibGUpKSkKLSAgICAsIHN0cmluZ0NvbnN0cnVjdG9y
VGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnN0cmluZ0NvbnN0cnVjdG9yVGFibGUp
KSkKLSNpZiBFTkFCTEUoUFJPTUlTRVMpCi0gICAgLCBwcm9taXNlUHJvdG90eXBlVGFibGUoYWRv
cHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21pc2VQcm90b3R5cGVUYWJsZSkpKQotICAgICwg
cHJvbWlzZUNvbnN0cnVjdG9yVGFibGUoYWRvcHRQdHIobmV3IEhhc2hUYWJsZShKU0M6OnByb21p
c2VDb25zdHJ1Y3RvclRhYmxlKSkpCi0jZW5kaWYKICAgICAsIG1fYXRvbWljU3RyaW5nVGFibGUo
dm1UeXBlID09IERlZmF1bHQgPyB3dGZUaHJlYWREYXRhKCkuYXRvbWljU3RyaW5nVGFibGUoKSA6
IG5ldyBBdG9taWNTdHJpbmdUYWJsZSkKICAgICAsIHByb3BlcnR5TmFtZXMobnVsbHB0cikKICAg
ICAsIGVtcHR5TGlzdChuZXcgTWFya2VkQXJndW1lbnRCdWZmZXIpCkBAIC0zNjEsMjggKzMxOCw2
IEBAIFZNOjp+Vk0oKQogICAgIGludGVycHJldGVyID0gcmVpbnRlcnByZXRfY2FzdDxJbnRlcnBy
ZXRlcio+KDB4YmJhZGJlZWYpOwogI2VuZGlmCiAKLSAgICBhcnJheVByb3RvdHlwZVRhYmxlLT5k
ZWxldGVUYWJsZSgpOwotICAgIGFycmF5Q29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUoKTsK
LSAgICBib29sZWFuUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZGF0YVZpZXdU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBkYXRlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAg
ZGF0ZUNvbnN0cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgZXJyb3JQcm90b3R5cGVU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBnbG9iYWxPYmplY3RUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICBqc29uVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgbnVtYmVyQ29uc3RydWN0b3JU
YWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBudW1iZXJQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFi
bGUoKTsKLSAgICBvYmplY3RDb25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotICAgIHBy
aXZhdGVOYW1lUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwVGFibGUt
PmRlbGV0ZVRhYmxlKCk7Ci0gICAgcmVnRXhwQ29uc3RydWN0b3JUYWJsZS0+ZGVsZXRlVGFibGUo
KTsKLSAgICByZWdFeHBQcm90b3R5cGVUYWJsZS0+ZGVsZXRlVGFibGUoKTsKLSAgICBzdHJpbmdD
b25zdHJ1Y3RvclRhYmxlLT5kZWxldGVUYWJsZSgpOwotI2lmIEVOQUJMRShQUk9NSVNFUykKLSAg
ICBwcm9taXNlUHJvdG90eXBlVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0gICAgcHJvbWlzZUNvbnN0
cnVjdG9yVGFibGUtPmRlbGV0ZVRhYmxlKCk7Ci0jZW5kaWYKLQogICAgIGRlbGV0ZSBlbXB0eUxp
c3Q7CiAKICAgICBkZWxldGUgcHJvcGVydHlOYW1lczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9W
TS5oCmluZGV4IGIzYWVjZTQuLmEyMTUwOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0u
aApAQCAtMjM4LDI4ICsyMzgsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgRXhlY1N0YXRl
KiB0b3BDYWxsRnJhbWU7CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxXYXRjaGRvZz4gd2F0Y2hk
b2c7CiAKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gYXJyYXlDb25zdHJ1
Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBhcnJheVBy
b3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBib29s
ZWFuUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+
IGRhdGFWaWV3VGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGRh
dGVUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0IEhhc2hUYWJsZT4gZGF0ZUNvbnN0
cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGVycm9y
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IGds
b2JhbE9iamVjdFRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBq
c29uVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51bWJlckNv
bnN0cnVjdG9yVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IG51
bWJlclByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxl
PiBvYmplY3RDb25zdHJ1Y3RvclRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFz
aFRhYmxlPiBwcml2YXRlTmFtZVByb3RvdHlwZVRhYmxlOwotICAgICAgICBjb25zdCBPd25QdHI8
Y29uc3QgSGFzaFRhYmxlPiByZWdFeHBUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRyPGNvbnN0
IEhhc2hUYWJsZT4gcmVnRXhwQ29uc3RydWN0b3JUYWJsZTsKLSAgICAgICAgY29uc3QgT3duUHRy
PGNvbnN0IEhhc2hUYWJsZT4gcmVnRXhwUHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93
blB0cjxjb25zdCBIYXNoVGFibGU+IHN0cmluZ0NvbnN0cnVjdG9yVGFibGU7Ci0jaWYgRU5BQkxF
KFBST01JU0VTKQotICAgICAgICBjb25zdCBPd25QdHI8Y29uc3QgSGFzaFRhYmxlPiBwcm9taXNl
UHJvdG90eXBlVGFibGU7Ci0gICAgICAgIGNvbnN0IE93blB0cjxjb25zdCBIYXNoVGFibGU+IHBy
b21pc2VDb25zdHJ1Y3RvclRhYmxlOwotI2VuZGlmCi0KICAgICAgICAgU3Ryb25nPFN0cnVjdHVy
ZT4gc3RydWN0dXJlU3RydWN0dXJlOwogICAgICAgICBTdHJvbmc8U3RydWN0dXJlPiBzdHJ1Y3R1
cmVSYXJlRGF0YVN0cnVjdHVyZTsKICAgICAgICAgU3Ryb25nPFN0cnVjdHVyZT4gZGVidWdnZXJT
Y29wZVN0cnVjdHVyZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9X
ZWFrTWFwQ29uc3RydWN0b3IuY3BwCmluZGV4IDAzYWY3M2UuLjlkZTg2YmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBDb25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcENvbnN0cnVjdG9yLmNwcApA
QCAtMzUsNyArMzUsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotY29uc3QgQ2xhc3NJbmZvIFdl
YWtNYXBDb25zdHJ1Y3Rvcjo6c19pbmZvID0geyAiRnVuY3Rpb24iLCAmQmFzZTo6c19pbmZvLCAw
LCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBDb25zdHJ1Y3RvcikgfTsKK2NvbnN0IENs
YXNzSW5mbyBXZWFrTWFwQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwQ29uc3RydWN0b3IpIH07CiAK
IHZvaWQgV2Vha01hcENvbnN0cnVjdG9yOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIFdlYWtNYXBQ
cm90b3R5cGUqIHByb3RvdHlwZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1dlYWtNYXBEYXRhLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1dlYWtNYXBEYXRhLmNwcAppbmRleCAyMjRiZThhLi5kY2RhZjIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9XZWFrTWFwRGF0YS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvV2Vha01hcERhdGEuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAK
IG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcERhdGE6OnNfaW5mbyA9
IHsgIldlYWtNYXBEYXRhIiwgMCwgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShXZWFrTWFwRGF0
YSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFrTWFwRGF0YTo6c19pbmZvID0geyAiV2Vha01hcERh
dGEiLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFdlYWtNYXBEYXRhKSB9OwogCiBXZWFrTWFw
RGF0YTo6V2Vha01hcERhdGEoVk0mIHZtKQogICAgIDogQmFzZSh2bSwgdm0ud2Vha01hcERhdGFT
dHJ1Y3R1cmUuZ2V0KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9XZWFrTWFwUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dl
YWtNYXBQcm90b3R5cGUuY3BwCmluZGV4IDY0ZWViOGQuLjkyMTU4MzEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1dlYWtNYXBQcm90b3R5cGUuY3BwCkBAIC0zMyw3
ICszMyw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi1jb25zdCBDbGFzc0luZm8gV2Vha01hcFBy
b3RvdHlwZTo6c19pbmZvID0geyAiV2Vha01hcCIsICZCYXNlOjpzX2luZm8sIDAsIDAsIENSRUFU
RV9NRVRIT0RfVEFCTEUoV2Vha01hcFByb3RvdHlwZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBXZWFr
TWFwUHJvdG90eXBlOjpzX2luZm8gPSB7ICJXZWFrTWFwIiwgJkJhc2U6OnNfaW5mbywgMCwgQ1JF
QVRFX01FVEhPRF9UQUJMRShXZWFrTWFwUHJvdG90eXBlKSB9OwogCiBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwQ2xlYXIoRXhlY1N0YXRlKik7CiBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBwcm90b0Z1bmNXZWFrTWFwRGVsZXRl
KEV4ZWNTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdF
eHAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RSZWdFeHAuY3BwCmluZGV4IGZjOTVh
NjMuLmRjNjRjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0UmVnRXhw
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdFJlZ0V4cC5jcHAKQEAgLTQ1LDYg
KzQ1LDEwIEBACiAjaW5jbHVkZSA8d2luZG93cy5oPgogI2VuZGlmCiAKK25hbWVzcGFjZSBKU0Mg
eworZXh0ZXJuIGNvbnN0IHN0cnVjdCBIYXNoVGFibGUgZ2xvYmFsT2JqZWN0VGFibGU7Cit9CisK
IGNvbnN0IGludCBNYXhMaW5lTGVuZ3RoID0gMTAwICogMTAyNDsKIAogdXNpbmcgbmFtZXNwYWNl
IEpTQzsKQEAgLTEzMyw3ICsxMzcsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgfQogfTsKIAotY29uc3Qg
Q2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2Jq
ZWN0OjpzX2luZm8sIDAsIEV4ZWNTdGF0ZTo6Z2xvYmFsT2JqZWN0VGFibGUsIENSRUFURV9NRVRI
T0RfVEFCTEUoR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEdsb2JhbE9iamVjdDo6
c19pbmZvID0geyAiZ2xvYmFsIiwgJkpTR2xvYmFsT2JqZWN0OjpzX2luZm8sICZnbG9iYWxPYmpl
Y3RUYWJsZSwgQ1JFQVRFX01FVEhPRF9UQUJMRShHbG9iYWxPYmplY3QpIH07CiAKIEdsb2JhbE9i
amVjdDo6R2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBhcmd1bWVudHMpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2Uv
V2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA4YmJjNjQ3Li45NjUxNWQyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMTAyNCw3ICsxMDI0LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogCiAg
ICAgYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAKICAgICBiaW5kaW5ncy9qcy9DYWxsYmFja0Z1
bmN0aW9uLmNwcAotICAgIGJpbmRpbmdzL2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAKICAg
ICBiaW5kaW5ncy9qcy9ET01XcmFwcGVyV29ybGQuY3BwCiAgICAgYmluZGluZ3MvanMvRGljdGlv
bmFyeS5jcHAKICAgICBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjdjYTdjMC4uNzVjMDllYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwOSBAQAorMjAxNC0wNy0z
MCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAgICAgICAgU3RhdGljIGhh
c2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNvdXBsZWQgd2l0aCBhIFZNLgorICAgICAg
ICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgorCisgICAgICAgIFVwZGF0ZSBmb3IgSlND
OjpDbGFzc0luZm8gY2hhbmdlcy4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZSB0aGUgSlNOb1N0
YXRpY1RhYmxlcyBtb2RlIGZvciBJREwgY29kZSBnZW5lcmF0aW9uLCB3aGljaCB3YXMgdXNlZCB0
bworICAgICAgICBlbnN1cmUgdGhhdCBlYWNoIFZNIGhhZCBpdHMgb3duIHVuaXF1ZSBjb3B5IG9m
IGNlcnRhaW4gc3RhdGljIHRhYmxlcy4KKyAgICAgICAgVGhpcyB3YXMgdXNlZCBmb3IgaW50ZXJm
YWNlcyB0aGF0IGNvdWxkIGJlIHVzZWQgaW4gd29ya2VycywgYW5kIG5vdyB0aGVyZSdzCisgICAg
ICAgIG5vIG5lZWQgdG8gbWFudWFsbHkgYW5ub3RhdGUgdGhlc2UgdGhpbmdzIGFueW1vcmUuCisK
KyAgICAgICAgQWxzbyByZW1vdmUgdGhlIERPTU9iamVjdEhhc2hUYWJsZU1hcCBjbGFzcyB0aGF0
IHdhcyBvbmx5IHVzZWQgZm9yIHRoaXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkg
R2FyZW4uCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJBbnkuaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJEYXRhYmFzZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFj
dG9yeS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCT3BlbkRCUmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIv
SURCUmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rp
b24uaWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVu
dC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZS5pZGw6CisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVN5bmMuaWRsOgorICAgICAgICAqIE1v
ZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0
YWJhc2UvU1FMRXhjZXB0aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFJlc3VsdFNldC5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRT
ZXRSb3dMaXN0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0
aW9uLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uU3lu
Yy5pZGw6CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsOgorICAg
ICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsOgorICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ET01P
YmplY3RIYXNoVGFibGVNYXAuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0RP
TU9iamVjdEhhc2hUYWJsZU1hcC5oOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NQmluZGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRIYXNoVGFibGVGb3JHbG9iYWxE
YXRhKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OmdldFN0YXRpY1ZhbHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmcpOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NV2luZG93Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRE9NV2luZG93OjpnZXRP
d25Qcm9wZXJ0eVNsb3QpOgorICAgICAgICAoV2ViQ29yZTo6SlNET01XaW5kb3c6OnB1dCk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5jcHA6CisgICAgICAgICogYmlu
ZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0xvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTTG9jYXRpb246OnB1dERl
bGVnYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SlNTdG9yYWdlOjpkZWxldGVQcm9wZXJ0eSk6CisgICAgICAgIChXZWJD
b3JlOjpKU1N0b3JhZ2U6OnB1dERlbGVnYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1dv
cmtlckdsb2JhbFNjb3BlQmFzZS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpT
Q2xpZW50RGF0YS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOgorICAgICAgICAoR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eVNsb3RCb2R5KToKKyAgICAgICAg
KEdlbmVyYXRlSW1wbGVtZW50YXRpb24pOgorICAgICAgICAoR2VuZXJhdGVDb25zdHJ1Y3Rvckhl
bHBlck1ldGhvZHMpOgorICAgICAgICAoaGFzaFRhYmxlQWNjZXNzb3IpOiBEZWxldGVkLgorICAg
ICAgICAocHJvdG90eXBlSGFzaFRhYmxlQWNjZXNzb3IpOiBEZWxldGVkLgorICAgICAgICAoY29u
c3RydWN0b3JIYXNoVGFibGVBY2Nlc3Nvcik6IERlbGV0ZWQuCisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBicmlkZ2UvYy9DUnVudGltZU9i
amVjdC5jcHA6CisgICAgICAgICogYnJpZGdlL2MvY19pbnN0YW5jZS5jcHA6CisgICAgICAgICog
YnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW06CisgICAgICAgICogYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5tbToKKyAgICAgICAgKiBicmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW06
CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwOgorICAgICAgICAqIGJyaWRnZS9y
dW50aW1lX21ldGhvZC5jcHA6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcDoK
KyAgICAgICAgKiBjcnlwdG8vQ3J5cHRvS2V5LmlkbDoKKyAgICAgICAgKiBjc3MvQ1NTRm9udEZh
Y2VMb2FkRXZlbnQuaWRsOgorICAgICAgICAqIGRvbS9ET01Db3JlRXhjZXB0aW9uLmlkbDoKKyAg
ICAgICAgKiBkb20vRE9NU3RyaW5nTGlzdC5pZGw6CisgICAgICAgICogZG9tL0Vycm9yRXZlbnQu
aWRsOgorICAgICAgICAqIGRvbS9FdmVudC5pZGw6CisgICAgICAgICogZG9tL0V2ZW50RXhjZXB0
aW9uLmlkbDoKKyAgICAgICAgKiBkb20vRXZlbnRMaXN0ZW5lci5pZGw6CisgICAgICAgICogZG9t
L01lc3NhZ2VDaGFubmVsLmlkbDoKKyAgICAgICAgKiBkb20vTWVzc2FnZUV2ZW50LmlkbDoKKyAg
ICAgICAgKiBkb20vTWVzc2FnZVBvcnQuaWRsOgorICAgICAgICAqIGRvbS9Qcm9ncmVzc0V2ZW50
LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0Jsb2IuaWRsOgorICAgICAgICAqIGZpbGVhcGkvRmls
ZS5pZGw6CisgICAgICAgICogZmlsZWFwaS9GaWxlRXJyb3IuaWRsOgorICAgICAgICAqIGZpbGVh
cGkvRmlsZUV4Y2VwdGlvbi5pZGw6CisgICAgICAgICogZmlsZWFwaS9GaWxlTGlzdC5pZGw6Cisg
ICAgICAgICogZmlsZWFwaS9GaWxlUmVhZGVyLmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVS
ZWFkZXJTeW5jLmlkbDoKKyAgICAgICAgKiBodG1sL0RPTVVSTC5pZGw6CisgICAgICAgICogcGFn
ZS9FdmVudFNvdXJjZS5pZGw6CisgICAgICAgICogcGFnZS9Xb3JrZXJOYXZpZ2F0b3IuaWRsOgor
ICAgICAgICAqIHdvcmtlcnMvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAg
ICAqIHdvcmtlcnMvU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtl
cnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyTG9jYXRp
b24uaWRsOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5pZGw6CisgICAgICAgICogeG1s
L1hNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uLmlkbDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVl
c3RQcm9ncmVzc0V2ZW50LmlkbDoKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQu
aWRsOgorCiAyMDE0LTA3LTMwICBTZXJnaW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEu
Y29tPgogCiAgICAgICAgIFtHVEtdIEJ1aWxkIGRlcGVuZHMgb24gT3BlbkdMIEVTCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBbnkuaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQW55LmlkbAppbmRleCBmYjQ4MGM5Li40OTEx
MWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBbnku
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFueS5pZGwKQEAg
LTI3LDcgKzI3LDYgQEAKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25kaXRpb25hbD1J
TkRFWEVEX0RBVEFCQVNFLAogICAgIEN1c3RvbVRvSlNPYmplY3QsCi0gICAgSlNOb1N0YXRpY1Rh
YmxlcwogXSBpbnRlcmZhY2UgSURCQW55IHsKICAgICAvLyBUaGlzIHNwYWNlIGlzIGludGVudGlv
bmFsbHkgbGVmdCBibGFuay4KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmlkbAppbmRleCBlMzRlYzgyLi45ODNkYmYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKQEAgLTI1LDcgKzI1LDYgQEAK
IAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1Rh
YmxlcywKIF0gaW50ZXJmYWNlIElEQkN1cnNvciB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIElE
QkFueSBzb3VyY2U7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBkaXJlY3Rpb247
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JX
aXRoVmFsdWUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
V2l0aFZhbHVlLmlkbAppbmRleCA3ZWU5MmRhLi5lMGU5YjE0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGwKQEAg
LTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcwogXSBpbnRlcmZhY2UgSURCQ3Vyc29yV2l0aFZhbHVlIDogSURC
Q3Vyc29yIHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgYW55IHZhbHVlOwogfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAppbmRleCAwYjVl
NTdlLi44ZWJiODc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJEYXRhYmFzZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2UuaWRsCkBAIC0yOCw3ICsyOCw2IEBACiAgICAgQ29uZGl0aW9uYWw9SU5ERVhF
RF9EQVRBQkFTRSwKICAgICBBY3RpdmVET01PYmplY3QsCiAgICAgRXZlbnRUYXJnZXQsCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVy
YXRlVG9OYXRpdmVPYmplY3QsCiBdIGludGVyZmFjZSBJREJEYXRhYmFzZSA6IEV2ZW50VGFyZ2V0
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwK
aW5kZXggYmViN2FiZC4uYTE0NDgwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRp
dGlvbmFsPUlOREVYRURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBs
ZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgSURCRmFjdG9yeSB7CiAgICAgW0Nh
bGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJhaXNlc0V4Y2VwdGlvbl0gSURCT3BlbkRC
UmVxdWVzdCBvcGVuKERPTVN0cmluZyBuYW1lLCBbRW5mb3JjZVJhbmdlXSBvcHRpb25hbCB1bnNp
Z25lZCBsb25nIGxvbmcgdmVyc2lvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJJbmRleC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJJbmRleC5pZGwKaW5kZXggMzQ0ZjUxNi4uOWUzNWMzNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmlkbApAQCAtMjUsNyArMjUsNiBAQAog
CiBbCiAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKLSAgICBKU05vU3RhdGljVGFi
bGVzLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBJREJJbmRl
eCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBuYW1lOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaWRsCmluZGV4IGM4MzY3Zjcu
Ljc3ZDE2ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QktleVJhbmdlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlSYW5nZS5pZGwKQEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIENvbmRpdGlvbmFsPUlOREVY
RURfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxh
Y2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgSURCS2V5UmFuZ2UgewogICAgIFtJbXBsZW1lbnRlZEFz
PWxvd2VyVmFsdWUsQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gcmVhZG9ubHkgYXR0
cmlidXRlIGFueSBsb3dlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQk9iamVjdFN0b3JlLmlkbAppbmRleCBhZTYzNTBkLi42ODM0OTM3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5pZGwKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCkBA
IC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIElEQk9iamVjdFN0b3JlIHsKICAgICBbVHJlYXRSZXR1cm5lZE51bGxTdHJpbmdB
cz1OdWxsXSByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCmluZGV4
IGU1NDc5Y2MuLmIwYTMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsCkBAIC0yNiw3ICsyNiw2IEBACiBbCiAgICAg
Q29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05v
U3RhdGljVGFibGVzLAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAogICAgIEpTR2VuZXJhdGVU
b05hdGl2ZU9iamVjdAogXSBpbnRlcmZhY2UgSURCT3BlbkRCUmVxdWVzdCA6IElEQlJlcXVlc3Qg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVz
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbApp
bmRleCBkYjEwYTY1Li40MDRlZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJSZXF1ZXN0LmlkbApAQCAtMzEsNyArMzEsNiBAQAogICAgIENvbmRpdGlvbmFs
PUlOREVYRURfREFUQUJBU0UsCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIEV2ZW50VGFyZ2V0
LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAg
SlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0CiBdIGludGVyZmFjZSBJREJSZXF1ZXN0IDogRXZlbnRU
YXJnZXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VHJhbnNhY3Rpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJh
bnNhY3Rpb24uaWRsCmluZGV4IGI3NzBmODkuLmQxMzdjYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5pZGwKQEAgLTI4LDcgKzI4
LDYgQEAKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEFjdGl2ZURPTU9i
amVjdCwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEpTR2Vu
ZXJhdGVUb0pTT2JqZWN0LAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKIF0gaW50ZXJm
YWNlIElEQlRyYW5zYWN0aW9uIDogRXZlbnRUYXJnZXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5pZGwKaW5k
ZXggNDkxNjNlMi4uOTlmYmRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsCkBAIC0yNSw3ICsyNSw2
IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0
aWNUYWJsZXMsCiBdIGludGVyZmFjZSBJREJWZXJzaW9uQ2hhbmdlRXZlbnQgOiBFdmVudCB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyBvbGRWZXJzaW9uOwogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmc/IG5ld1ZlcnNpb247CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuaWRsCmluZGV4IGI2
NTViMDYuLjY4Yzk4MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvRGF0YWJhc2UuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvRGF0YWJhc2UuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBbCiAgICAgTm9JbnRlcmZhY2VPYmpl
Y3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNUYWJsZXMs
CiBdIGludGVyZmFjZSBEYXRhYmFzZSB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmlu
ZyB2ZXJzaW9uOwogICAgIHZvaWQgY2hhbmdlVmVyc2lvbihET01TdHJpbmcgb2xkVmVyc2lvbiwg
RE9NU3RyaW5nIG5ld1ZlcnNpb24sIG9wdGlvbmFsIFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2sgY2Fs
bGJhY2ssIG9wdGlvbmFsIFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjayBlcnJvckNhbGxiYWNr
LCBvcHRpb25hbCBWb2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VTeW5jLmlkbAppbmRleCA0YjVm
ZjJhLi42ODA0MzdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlU3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9EYXRhYmFzZVN5bmMuaWRsCkBAIC0zMSw3ICszMSw2IEBACiBbCiAgICAgTm9JbnRlcmZh
Y2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNU
YWJsZXMsCiBdIGludGVyZmFjZSBEYXRhYmFzZVN5bmMgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBET01TdHJpbmcgdmVyc2lvbjsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxh
c3RFcnJvck1lc3NhZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTEVycm9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2Uv
U1FMRXJyb3IuaWRsCmluZGV4IGU0MzNlMDYuLmU2NmNmMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXJyb3IuaWRsCkBAIC0yOSw3ICsyOSw2IEBACiBb
CiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQogXSBp
bnRlcmZhY2UgU1FMRXJyb3IgewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGNvZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TEV4Y2VwdGlvbi5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTEV4
Y2VwdGlvbi5pZGwKaW5kZXggYjk1MTFiNC4uM2I2YTljMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMRXhjZXB0aW9uLmlkbApAQCAtMzAsNyArMzAs
NiBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9U1FMX0RBVEFCQVNFLAotICAgIEpTTm9TdGF0aWNU
YWJsZXMsCiAgICAgRG9Ob3RDaGVja0NvbnN0YW50cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tz
VlRhYmxlCiBdIGV4Y2VwdGlvbiBTUUxFeGNlcHRpb24gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRTZXQuaWRsCmluZGV4IDBiODRkOWUuLjhh
NmU4OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FM
UmVzdWx0U2V0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFJlc3VsdFNldC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVj
dCwKICAgICBDb25kaXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywK
ICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBTUUxSZXN1bHRTZXQg
ewogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBTUUxSZXN1bHRTZXRSb3dMaXN0IHJvd3M7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3VsdFNldFJv
d0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxSZXN1bHRT
ZXRSb3dMaXN0LmlkbAppbmRleCA4MzcwNTY1Li44N2Y4Y2M0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFJlc3VsdFNldFJvd0xpc3QuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMUmVzdWx0U2V0Um93TGlzdC5p
ZGwKQEAgLTI5LDcgKzI5LDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBDb25k
aXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1l
bnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgU1FMUmVzdWx0U2V0Um93TGlzdCB7CiAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbAppbmRl
eCBiMWJlOGIzLi5lYzRlOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmlkbApAQCAtMjksNyArMjksNiBAQAogWwogICAg
IE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIENvbmRpdGlvbmFsPVNRTF9EQVRBQkFTRSwKLSAgICBK
U05vU3RhdGljVGFibGVzLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAogXSBpbnRlcmZhY2Ug
U1FMVHJhbnNhY3Rpb24gewogICAgIFtDdXN0b21dIHZvaWQgZXhlY3V0ZVNxbChET01TdHJpbmcg
c3FsU3RhdGVtZW50LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9TUUxUcmFuc2FjdGlvblN5bmMuaWRsCmluZGV4IDliMmE0ZjUuLmIyNWNkMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rp
b25TeW5jLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRy
YW5zYWN0aW9uU3luYy5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9i
amVjdCwKICAgICBDb25kaXRpb25hbD1TUUxfREFUQUJBU0UsCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRlcmZhY2UgU1FMVHJhbnNh
Y3Rpb25TeW5jIHsKICAgICBbQ3VzdG9tXSBTUUxSZXN1bHRTZXQgZXhlY3V0ZVNxbChET01TdHJp
bmcgc3FsU3RhdGVtZW50LCBPYmplY3RBcnJheSBhcmd1bWVudHMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQuaWRsCmluZGV4IDNmMjlhNDkuLmNl
MjU4MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9DbG9z
ZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvQ2xvc2VF
dmVudC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKICAqLwogCiBbCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50CiBdIGludGVyZmFjZSBDbG9zZUV2ZW50
IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkg
YXR0cmlidXRlIGJvb2xlYW4gd2FzQ2xlYW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCmluZGV4IGJkNWNiOWUuLmFiOWQxOWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsCkBAIC0zOSw3
ICszOSw2IEBACiAgICAgQ29uc3RydWN0b3JSYWlzZXNFeGNlcHRpb24sCiAgICAgQ29uc3RydWN0
b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIEV2ZW50VGFyZ2V0LAotICAg
IEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBXZWJTb2NrZXQgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgVVJMOyAvLyBMb3dlcmNhc2VkIC51cmwgaXMgdGhlIG9uZSBp
biB0aGUgc3BlYywgYnV0IGxlYXZpbmcgLlVSTCBmb3IgY29tcGF0aWJpbGl0eSByZWFzb25zLgog
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggNTQ3MGQxNy4uZjhjN2U3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCkBA
IC0xNjExNSwyMCArMTYxMTUsNiBAQAogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnxXaW4zMiciPnRy
dWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlv
bj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUHJvZHVjdGlvbnx4NjQnIj50cnVl
PC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIElu
Y2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXERPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiPgotICAgICAg
PEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9y
bSknPT0nRGVidWd8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWdf
V2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0Rl
YnVnX1dpbkNhaXJvfHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
RGVidWdTdWZmaXh8V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNs
dWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09
J0RlYnVnU3VmZml4fHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1
ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0n
UmVsZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVs
ZWFzZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRlZEZyb21C
dWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2Vf
V2luQ2Fpcm98V2luMzInIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KLSAgICAgIDxFeGNsdWRl
ZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1Jl
bGVhc2VfV2luQ2Fpcm98eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdQcm9kdWN0aW9ufFdpbjMyJyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+Ci0gICAgICA8RXhj
bHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9
PSdQcm9kdWN0aW9ufHg2NCciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgotICAgIDwvQ2xDb21w
aWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NV3JhcHBlcldv
cmxkLmNwcCI+CiAgICAgICA8RXhjbHVkZWRGcm9tQnVpbGQgQ29uZGl0aW9uPSInJChDb25maWd1
cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1
aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlv
bil8JChQbGF0Zm9ybSknPT0nRGVidWd8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9tQnVpbGQ+CkBA
IC0yMDkyMCw3ICsyMDkwNiw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5n
c1xqc1xDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cYmluZGluZ3NcanNcQ2FsbGJhY2tGdW5jdGlvbi5oIiAvPgogICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRGljdGlvbmFyeS5oIiAvPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgiIC8+CiAg
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xET01XcmFwcGVyV29ybGQuaCIg
Lz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXEdDQ29udHJvbGxlci5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcSURCQmluZGluZ1V0
aWxpdGllcy5oIiAvPgpAQCAtMjEzNzEsNCArMjEzNTYsNCBAQAogICA8SW1wb3J0R3JvdXAgTGFi
ZWw9IkV4dGVuc2lvblRhcmdldHMiPgogICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQ
YXRoKVxCdWlsZEN1c3RvbWl6YXRpb25zXG1hc20udGFyZ2V0cyIgLz4KICAgPC9JbXBvcnRHcm91
cD4KLTwvUHJvamVjdD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCis8L1Byb2plY3Q+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
LmZpbHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
LmZpbHRlcnMKaW5kZXggMmMyOGFiMC4uMzZmNGExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtNDI1Nyw5
ICs0MjU3LDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXENhbGxi
YWNrRnVuY3Rpb24uY3BwIj4KICAgICAgIDxGaWx0ZXI+YmluZGluZ3NcanM8L0ZpbHRlcj4KICAg
ICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGJpbmRpbmdzXGpzXERP
TU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiPgotICAgICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmls
dGVyPgotICAgIDwvQ2xDb21waWxlPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cYmluZGlu
Z3NcanNcRE9NV3JhcHBlcldvcmxkLmNwcCI+CiAgICAgICA8RmlsdGVyPmJpbmRpbmdzXGpzPC9G
aWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xMTQ3Miw5ICsxMTQ2OSw2IEBACiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxiaW5kaW5nc1xqc1xEaWN0aW9uYXJ5LmgiPgogICAgICAgPEZp
bHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgotICAgIDxDbEluY2x1
ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgiPgotICAg
ICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cYmluZGluZ3NcanNcRE9NV3JhcHBlcldvcmxkLmgiPgogICAg
ICAgPEZpbHRlcj5iaW5kaW5nc1xqczwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpAQCAtMTU0
NjQsNCArMTU0NTgsNCBAQAogICAgICAgPEZpbHRlcj5wbGF0Zm9ybVx3aW48L0ZpbHRlcj4KICAg
ICA8L01BU00+CiAgIDwvSXRlbUdyb3VwPgotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKKzwvUHJvamVjdD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAzYmJhYmM0Li4wOWE3ODlkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01MTQzLDgg
KzUxNDMsNiBAQAogCQlCQzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50
RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1
M0Q5MTAxMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0NsaWVudERhdGEuaCAqLzsgfTsKIAkJ
QkM1M0RBMkUxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0RBMkQxMTQzMTIxRTAwMEQ4
MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUJDNTNEQTQ4MTE0MzEzNEQwMDBEODE3RSAvKiBET01XcmFwcGVy
V29ybGQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAgKi87IH07Ci0J
CUJDNTNEQTYwMTE0MzE0MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTNEQTVGMTE0MzE0
MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlCQzUzREE2MjExNDMxNEJEMDAwRDgxN0Ug
LyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDNTNEQTYxMTE0MzE0QkQwMDBEODE3RSAvKiBET01PYmplY3RI
YXNoVGFibGVNYXAuY3BwICovOyB9OwogCQlCQzU4MjNGNTBDMEE5OERGMDA1M0YxQjUgLyogSlNI
VE1MRWxlbWVudEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzU4MjNGNDBDMEE5OERGMDA1M0YxQjUgLyogSlNIVE1MRWxlbWVudEN1c3Rv
bS5jcHAgKi87IH07CiAJCUJDNTgyNUYzMEMwQjg5MzgwMDUzRjFCNSAvKiBKU0NTU1N0eWxlRGVj
bGFyYXRpb25DdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkM1ODI1RjIwQzBCODkzODAwNTNGMUI1IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlv
bkN1c3RvbS5jcHAgKi87IH07CiAJCUJDNUExMkRGMERDMDQxNDgwMEM5QUZBRCAvKiBDU1NSZWZs
ZWN0VmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkM1QTEyREQwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxlY3RWYWx1ZS5jcHAgKi87IH07
CkBAIC0xMjUzNCw4ICsxMjUzMiw2IEBACiAJCUJDNTNEOTEwMTE0MzEwQ0MwMDBEODE3RSAvKiBX
ZWJDb3JlSlNDbGllbnREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkNvcmVKU0NsaWVudERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkM1M0RB
MkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBET01XcmFwcGVyV29ybGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01XcmFwcGVyV29ybGQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlCQzUzREE1RjExNDMxNDFBMDAwRDgxN0Ug
LyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERPTU9iamVjdEhhc2hUYWJsZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQlCQzUzREE2MTExNDMxNEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTU9iamVjdEhhc2hUYWJsZU1h
cC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDNTgyM0Y0MEMwQTk4REYwMDUz
RjFCNSAvKiBKU0hUTUxFbGVtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTSFRNTEVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlCQzU4MjVGMjBDMEI4OTM4MDA1M0YxQjUgLyogSlNDU1NTdHlsZURlY2xhcmF0
aW9uQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NT
U3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUJDNTlERUY4MTY5REVEQzMwMDE2QUMzNCAvKiBTZXR0aW5ncy5pbiAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXR0aW5ncy5p
bjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwNzY0LDggKzIwNzYwLDYgQEAKIAkJ
CQkzMTJENjdCMDE1MzU2OTFGMDA1NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgKi8sCiAJCQkJMzE2
MDIzRUYxNTMyQzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnkuaCAqLywKIAkJCQlCNTY1NzZFNzE3
REE5NEUyMDBBNTZCREMgLyogRE9NQ29uc3RydWN0b3JXaXRoRG9jdW1lbnQuaCAqLywKLQkJCQlC
QzUzREE2MTExNDMxNEJEMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCAqLywK
LQkJCQlCQzUzREE1RjExNDMxNDFBMDAwRDgxN0UgLyogRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgg
Ki8sCiAJCQkJQkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5jcHAg
Ki8sCiAJCQkJQkM1M0RBMkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICov
LAogCQkJCTE0MzJFODQ4MEM1MTQ5M0YwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuY3BwICovLApA
QCAtMjQwNjYsNyArMjQwNjAsNiBAQAogCQkJCTg1Q0E5NkVBMEE5NjI0RTkwMDY5MENDRiAvKiBE
T01Ob3RhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODVFNzExRDQwQUM1RDUzNTAwNTMyNzBG
IC8qIERPTU5vdGF0aW9uSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTg1NkM4QUU0MEE5
MTI2NDkwMDVDNjg3QiAvKiBET01PYmplY3QuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDNTNEQTYw
MTE0MzE0MUEwMDBEODE3RSAvKiBET01PYmplY3RIYXNoVGFibGVNYXAuaCBpbiBIZWFkZXJzICov
LAogCQkJCTA3QUI5OTcwMThEQTNDNzQwMDE4NzcxRSAvKiBSVENJY2VTZXJ2ZXJQcml2YXRlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk4NUM3RjVEMDBBQUZCOEQ5MDA0MDE0REQgLyogRE9NT3ZlcmZs
b3dFdmVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODU5ODlEQ0YwQUNDOEJCRDAwQTBCQzUxIC8q
IERPTU92ZXJmbG93RXZlbnRJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzYxNyw3ICsy
NzYxMCw2IEBACiAJCQkJODVBQ0FBOEUwQTlCNzU5QzAwNjcxRTkwIC8qIERPTU5vZGVMaXN0Lm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJODVDQTk2RUIwQTk2MjRFOTAwNjkwQ0NGIC8qIERPTU5vdGF0
aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODU2QzhBRTUwQTkxMjY0OTAwNUM2ODdCIC8qIERP
TU9iamVjdC5tbSBpbiBTb3VyY2VzICovLAotCQkJCUJDNTNEQTYyMTE0MzE0QkQwMDBEODE3RSAv
KiBET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODVDN0Y1RDEw
QUFGQjhEOTAwNDAxNEREIC8qIERPTU92ZXJmbG93RXZlbnQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQlFMTI4NEJENTEwNDRBMDFFMDBFQUVCNTIgLyogRE9NUGFnZVRyYW5zaXRpb25FdmVudC5tbSBp
biBTb3VyY2VzICovLAogCQkJCTFBQ0U1M0U3MEE4RDE4RTcwMDIyOTQ3RCAvKiBET01QYXJzZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
RE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NGQ2YjkxNi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9ET01PYmpl
Y3RIYXNoVGFibGVNYXAuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAq
ICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBIYXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQot
ICogIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAgQ29weXJpZ2h0IChDKSAyMDA3IFNhbXVl
bCBXZWluaWcgPHNhbUB3ZWJraXQub3JnPgotICoKLSAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz
b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiAgbW9kaWZ5IGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwotICogIExpY2Vu
c2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgot
ICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0
ZXIgdmVyc2lvbi4KLSAqCi0gKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo
b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqICBNRVJDSEFOVEFCSUxJ
VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotICog
IExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0gKgotICog
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJh
bCBQdWJsaWMKLSAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdy
aXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5o
IgotCi0jaW5jbHVkZSAiV2ViQ29yZUpTQ2xpZW50RGF0YS5oIgotCi11c2luZyBuYW1lc3BhY2Ug
SlNDOwotCi1uYW1lc3BhY2UgV2ViQ29yZXsKLQotRE9NT2JqZWN0SGFzaFRhYmxlTWFwJiBET01P
YmplY3RIYXNoVGFibGVNYXA6Om1hcEZvcihWTSYgdm0pCi17Ci0gICAgVk06OkNsaWVudERhdGEq
IGNsaWVudERhdGEgPSB2bS5jbGllbnREYXRhOwotICAgIEFTU0VSVChjbGllbnREYXRhKTsKLSAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8V2ViQ29yZUpTQ2xpZW50RGF0YSo+KGNsaWVudERhdGEpLT5o
YXNoVGFibGVNYXA7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDEzYmYyMDcuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1
OSArMCwwIEBACi0vKgotICogIENvcHlyaWdodCAoQykgMTk5OS0yMDAxIEhhcnJpIFBvcnRlbiAo
cG9ydGVuQGtkZS5vcmcpCi0gKiAgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2
LCAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqICBDb3B5cmln
aHQgKEMpIDIwMDcgU2FtdWVsIFdlaW5pZyA8c2FtQHdlYmtpdC5vcmc+Ci0gKiAgQ29weXJpZ2h0
IChDKSAyMDA5IEdvb2dsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqICBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
Ci0gKiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFs
IFB1YmxpYwotICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb247IGVpdGhlcgotICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlv
dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLSAqCi0gKiAgVGhpcyBsaWJyYXJ5IGlzIGRp
c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiAgYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
LSAqICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlIEdOVQotICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCi0gKgotICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBs
aWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0gKiAgRm91bmRhdGlv
biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIx
MTAtMTMwMSAgVVNBCi0gKi8KLQotI2lmbmRlZiBET01PYmplY3RIYXNoVGFibGVNYXBfaAotI2Rl
ZmluZSBET01PYmplY3RIYXNoVGFibGVNYXBfaAotCi0jaW5jbHVkZSA8cnVudGltZS9Mb29rdXAu
aD4KLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotCi1uYW1lc3BhY2UgSlNDIHsKLSAgICBjbGFz
cyBWTTsKLX0KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi0vLyBNYXAgZnJvbSBzdGF0aWMgSGFz
aFRhYmxlIGluc3RhbmNlcyB0byBwZXItR2xvYmFsRGF0YSBvbmVzLgotY2xhc3MgRE9NT2JqZWN0
SGFzaFRhYmxlTWFwIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgRE9NT2JqZWN0SGFzaFRhYmxlTWFw
JiBtYXBGb3IoSlNDOjpWTSYpOwotCi0gICAgfkRPTU9iamVjdEhhc2hUYWJsZU1hcCgpCi0gICAg
ewotICAgICAgICBmb3IgKEhhc2hNYXA8Y29uc3QgSlNDOjpIYXNoVGFibGUqLCBKU0M6Okhhc2hU
YWJsZT46Oml0ZXJhdG9yIGl0ZXIgPSBtX21hcC5iZWdpbigpOyBpdGVyICE9IG1fbWFwLmVuZCgp
OyArK2l0ZXIpCi0gICAgICAgICAgICBpdGVyLT52YWx1ZS5kZWxldGVUYWJsZSgpOwotICAgIH0K
LQotICAgIGNvbnN0IEpTQzo6SGFzaFRhYmxlJiBnZXQoY29uc3QgSlNDOjpIYXNoVGFibGUmIHN0
YXRpY1RhYmxlKQotICAgIHsKLSAgICAgICAgSGFzaE1hcDxjb25zdCBKU0M6Okhhc2hUYWJsZSos
IEpTQzo6SGFzaFRhYmxlPjo6aXRlcmF0b3IgaXRlciA9IG1fbWFwLmZpbmQoJnN0YXRpY1RhYmxl
KTsKLSAgICAgICAgaWYgKGl0ZXIgIT0gbV9tYXAuZW5kKCkpCi0gICAgICAgICAgICByZXR1cm4g
aXRlci0+dmFsdWU7Ci0gICAgICAgIHJldHVybiBtX21hcC5zZXQoJnN0YXRpY1RhYmxlLCBzdGF0
aWNUYWJsZS5jb3B5KCkpLml0ZXJhdG9yLT52YWx1ZTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAg
SGFzaE1hcDxjb25zdCBKU0M6Okhhc2hUYWJsZSosIEpTQzo6SGFzaFRhYmxlPiBtX21hcDsKLX07
Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIERPTU9iamVjdEhhc2hUYWJs
ZU1hcF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdz
QWxsSW5PbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbElu
T25lLmNwcAppbmRleCAwYTA1ODlkLi4xMzYyNTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKQEAgLTI3LDcgKzI3LDYgQEAKIAog
I2luY2x1ZGUgIkFycmF5VmFsdWUuY3BwIgogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3Bw
IgotI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiCiAjaW5jbHVkZSAiRE9NV3Jh
cHBlcldvcmxkLmNwcCIKICNpbmNsdWRlICJEaWN0aW9uYXJ5LmNwcCIKICNpbmNsdWRlICJHQ0Nv
bnRyb2xsZXIuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01CaW5kaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5j
cHAKaW5kZXggMjdjODBmOS4uNmEwZDdjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJpbmRpbmcuY3BwCkBAIC0yNCw3ICsyNCw2IEBACiAKICNpbmNsdWRlICJDYWNoZWRT
Y3JpcHQuaCIKICNpbmNsdWRlICJET01Db25zdHJ1Y3RvcldpdGhEb2N1bWVudC5oIgotI2luY2x1
ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5oIgogI2luY2x1ZGUgIkRPTVN0cmluZ0xpc3QuaCIK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZURlc2Ny
aXB0aW9uLmgiCkBAIC01OSwxMSArNTgsNiBAQCB2b2lkIGFkZEltcHVyZVByb3BlcnR5KGNvbnN0
IEF0b21pY1N0cmluZyYgcHJvcGVydHlOYW1lKQogICAgIEpTRE9NV2luZG93Ojpjb21tb25WTSgp
LmFkZEltcHVyZVByb3BlcnR5KHByb3BlcnR5TmFtZSk7CiB9CiAKLWNvbnN0IEpTQzo6SGFzaFRh
YmxlJiBnZXRIYXNoVGFibGVGb3JHbG9iYWxEYXRhKFZNJiB2bSwgY29uc3QgSlNDOjpIYXNoVGFi
bGUmIHN0YXRpY1RhYmxlKQotewotICAgIHJldHVybiBET01PYmplY3RIYXNoVGFibGVNYXA6Om1h
cEZvcih2bSkuZ2V0KHN0YXRpY1RhYmxlKTsKLX0KLQogSlNWYWx1ZSBqc1N0cmluZ09yTnVsbChF
eGVjU3RhdGUqIGV4ZWMsIGNvbnN0IFN0cmluZyYgcykKIHsKICAgICBpZiAocy5pc051bGwoKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5kZXggYWI1ZGIwYi4u
MmVmMTM4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5k
aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKQEAg
LTU4OCwxMCArNTg4LDEwIEBAIGlubGluZSBBdG9taWNTdHJpbmcgcHJvcGVydHlOYW1lVG9BdG9t
aWNTdHJpbmcoSlNDOjpQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBET01DbGFzcz4gaW5saW5lIGNvbnN0IEpTQzo6SGFzaFRhYmxlVmFsdWUqIGdldFN0YXRp
Y1ZhbHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmcoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTQzo6
UHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKLSAgICBjb25zdCBKU0M6Okhhc2hUYWJsZSog
dGFibGUgPSBET01DbGFzczo6aW5mbygpLT5wcm9wSGFzaFRhYmxlKGV4ZWMpOworICAgIGNvbnN0
IEpTQzo6SGFzaFRhYmxlKiB0YWJsZSA9IERPTUNsYXNzOjppbmZvKCktPnN0YXRpY1Byb3BIYXNo
VGFibGU7CiAgICAgaWYgKCF0YWJsZSkKICAgICAgICAgcmV0dXJuIGdldFN0YXRpY1ZhbHVlU2xv
dEVudHJ5V2l0aG91dENhY2hpbmc8dHlwZW5hbWUgRE9NQ2xhc3M6OkJhc2U+KGV4ZWMsIHByb3Bl
cnR5TmFtZSk7Ci0gICAgY29uc3QgSlNDOjpIYXNoVGFibGVWYWx1ZSogZW50cnkgPSB0YWJsZS0+
ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICBjb25zdCBKU0M6Okhhc2hUYWJsZVZhbHVl
KiBlbnRyeSA9IHRhYmxlLT5lbnRyeShwcm9wZXJ0eU5hbWUpOwogICAgIGlmICghZW50cnkpIC8v
IG5vdCBmb3VuZCwgZm9yd2FyZCB0byBwYXJlbnQKICAgICAgICAgcmV0dXJuIGdldFN0YXRpY1Zh
bHVlU2xvdEVudHJ5V2l0aG91dENhY2hpbmc8dHlwZW5hbWUgRE9NQ2xhc3M6OkJhc2U+KGV4ZWMs
IHByb3BlcnR5TmFtZSk7CiAgICAgcmV0dXJuIGVudHJ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCmluZGV4IGY1NWZiZWYuLjAxZDQzZDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5j
cHAKQEAgLTM3LDcgKzM3LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1jb25zdCBDbGFzc0luZm8gSlNET01HbG9iYWxPYmplY3Q6OnNfaW5mbyA9IHsg
IkRPTUdsb2JhbE9iamVjdCIsICZKU0dsb2JhbE9iamVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVf
TUVUSE9EX1RBQkxFKEpTRE9NR2xvYmFsT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIEpTRE9N
R2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJET01HbG9iYWxPYmplY3QiLCAmSlNHbG9iYWxPYmpl
Y3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU0RPTUdsb2JhbE9iamVjdCkgfTsK
IAogSlNET01HbG9iYWxPYmplY3Q6OkpTRE9NR2xvYmFsT2JqZWN0KFZNJiB2bSwgU3RydWN0dXJl
KiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8RE9NV3JhcHBlcldvcmxkPiB3b3JsZCwgY29uc3QgR2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUqIGdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKQogICAgIDogSlNH
bG9iYWxPYmplY3Qodm0sIHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0Jhc2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcAppbmRleCA0YThi
NzEzLi43ODAzYWY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93QmFzZS5jcHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIGJvb2wgc2hvdWxkQWxsb3dBY2Nl
c3NGcm9tKGNvbnN0IEpTR2xvYmFsT2JqZWN0KiB0aGlzT2JqZWN0LCBFeGVjU3RhdGUqIGUKICAg
ICByZXR1cm4gQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2luZG93KGV4
ZWMsIGFzSlNET01XaW5kb3codGhpc09iamVjdCktPmltcGwoKSk7CiB9CiAKLWNvbnN0IENsYXNz
SW5mbyBKU0RPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIsICZKU0RPTUdsb2JhbE9i
amVjdDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9NV2luZG93QmFzZSkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU0RPTVdpbmRvd0Jhc2U6OnNfaW5mbyA9IHsgIldpbmRvdyIs
ICZKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93QmFzZSkgfTsKIAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNET01XaW5k
b3dCYXNlOjpzX2dsb2JhbE9iamVjdE1ldGhvZFRhYmxlID0geyAmc2hvdWxkQWxsb3dBY2Nlc3NG
cm9tLCAmc3VwcG9ydHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLCAmc2hvdWxk
SW50ZXJydXB0U2NyaXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwgJnF1ZXVlVGFz
a1RvRXZlbnRMb29wLCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0QmVmb3JlVGltZW91dCB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAKaW5k
ZXggMmM5NzFlMy4uMjkyNTZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01XaW5kb3dDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NV2luZG93Q3VzdG9tLmNwcApAQCAtMTgyLDcgKzE4Miw3IEBAIGJvb2wgSlNET01XaW5k
b3c6OmdldE93blByb3BlcnR5U2xvdChKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMs
IFByb3BlcnR5CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBjb25zdCBIYXNoVGFibGVWYWx1ZSog
ZW50cnkgPSBKU0RPTVdpbmRvdzo6aW5mbygpLT5wcm9wSGFzaFRhYmxlKGV4ZWMpLT5lbnRyeShl
eGVjLCBwcm9wZXJ0eU5hbWUpOworICAgIGNvbnN0IEhhc2hUYWJsZVZhbHVlKiBlbnRyeSA9IEpT
RE9NV2luZG93OjppbmZvKCktPnN0YXRpY1Byb3BIYXNoVGFibGUtPmVudHJ5KHByb3BlcnR5TmFt
ZSk7CiAgICAgaWYgKGVudHJ5KSB7CiAgICAgICAgIHNsb3Quc2V0Q2FjaGVhYmxlQ3VzdG9tKHRo
aXNPYmplY3QsIGFsbG93c0FjY2VzcyA/IGVudHJ5LT5hdHRyaWJ1dGVzKCkgOiBSZWFkT25seSB8
IERvbnREZWxldGUgfCBEb250RW51bSwgZW50cnktPnByb3BlcnR5R2V0dGVyKCkpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKQEAgLTM0NSw3ICszNDUsNyBAQCB2b2lkIEpTRE9NV2luZG93OjpwdXQo
SlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUs
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAobG9va3VwUHV0KGV4ZWMsIHByb3Bl
cnR5TmFtZSwgdGhpc09iamVjdCwgdmFsdWUsICpzX2luZm8ucHJvcEhhc2hUYWJsZShleGVjKSwg
c2xvdCkpCisgICAgaWYgKGxvb2t1cFB1dChleGVjLCBwcm9wZXJ0eU5hbWUsIHRoaXNPYmplY3Qs
IHZhbHVlLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHNsb3QpKQogICAgICAgICByZXR1
cm47CiAKICAgICBpZiAoQmluZGluZ1NlY3VyaXR5OjpzaG91bGRBbGxvd0FjY2Vzc1RvRE9NV2lu
ZG93KGV4ZWMsIHRoaXNPYmplY3QtPmltcGwoKSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCmluZGV4IDJkOGEwZWEuLjUzNjhhM2UgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCkBAIC00
MSw3ICs0MSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotY29uc3QgQ2xhc3NJbmZvIEpTRE9NV2luZG93U2hlbGw6OnNfaW5mbyA9IHsgIkpTRE9NV2lu
ZG93U2hlbGwiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTRE9N
V2luZG93U2hlbGwpIH07Citjb25zdCBDbGFzc0luZm8gSlNET01XaW5kb3dTaGVsbDo6c19pbmZv
ID0geyAiSlNET01XaW5kb3dTaGVsbCIsICZCYXNlOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoSlNET01XaW5kb3dTaGVsbCkgfTsKIAogSlNET01XaW5kb3dTaGVsbDo6SlNET01XaW5k
b3dTaGVsbChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBET01XcmFwcGVyV29ybGQmIHdv
cmxkKQogICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggNzAwNzUyNS4uNzNjY2IzZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3Iu
Y3BwCkBAIC0zMiw3ICszMiw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKEpTSW1hZ2VDb25zdHJ1Y3Rvcik7CiAKLWNvbnN0
IENsYXNzSW5mbyBKU0ltYWdlQ29uc3RydWN0b3I6OnNfaW5mbyA9IHsgIkltYWdlQ29uc3RydWN0
b3IiLCAmQmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTSW1hZ2VDb25z
dHJ1Y3RvcikgfTsKK2NvbnN0IENsYXNzSW5mbyBKU0ltYWdlQ29uc3RydWN0b3I6OnNfaW5mbyA9
IHsgIkltYWdlQ29uc3RydWN0b3IiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RB
QkxFKEpTSW1hZ2VDb25zdHJ1Y3RvcikgfTsKIAogSlNJbWFnZUNvbnN0cnVjdG9yOjpKU0ltYWdl
Q29uc3RydWN0b3IoU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCiAgICAgOiBET01Db25zdHJ1Y3RvcldpdGhEb2N1bWVudChzdHJ1Y3R1cmUsIGds
b2JhbE9iamVjdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTG9j
YXRpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1
c3RvbS5jcHAKaW5kZXggOWYwNDRjNC4uZjE1OGEyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAKQEAgLTgyLDcgKzgyLDcgQEAgYm9vbCBK
U0xvY2F0aW9uOjpwdXREZWxlZ2F0ZShFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9w
ZXJ0eU5hbWUsIEpTVmFsdWUKIAogICAgIGJvb2wgc2FtZURvbWFpbkFjY2VzcyA9IHNob3VsZEFs
bG93QWNjZXNzVG9GcmFtZShleGVjLCBmcmFtZSk7CiAKLSAgICBjb25zdCBIYXNoVGFibGVWYWx1
ZSogZW50cnkgPSBKU0xvY2F0aW9uOjppbmZvKCktPnByb3BIYXNoVGFibGUoZXhlYyktPmVudHJ5
KGV4ZWMsIHByb3BlcnR5TmFtZSk7CisgICAgY29uc3QgSGFzaFRhYmxlVmFsdWUqIGVudHJ5ID0g
SlNMb2NhdGlvbjo6aW5mbygpLT5zdGF0aWNQcm9wSGFzaFRhYmxlLT5lbnRyeShwcm9wZXJ0eU5h
bWUpOwogICAgIGlmICghZW50cnkpIHsKICAgICAgICAgaWYgKHNhbWVEb21haW5BY2Nlc3MpCiAg
ICAgICAgICAgICBKU09iamVjdDo6cHV0KHRoaXMsIGV4ZWMsIHByb3BlcnR5TmFtZSwgdmFsdWUs
IHNsb3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNTdG9yYWdl
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU3RvcmFnZUN1c3RvbS5j
cHAKaW5kZXggZGVhMDJlNS4uOTQyYzRkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNTdG9yYWdlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwCkBAIC02NCw3ICs2NCw3IEBAIGJvb2wgSlNTdG9yYWdl
OjpkZWxldGVQcm9wZXJ0eShKU0NlbGwqIGNlbGwsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlO
YW1lIHByb3BlCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHkoKSB3b3VsZCBlbmQgdXAgY2FsbGlu
ZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVkLCB3ZSBuZWVkIHRvIGNoZWNrCiAg
ICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51YWxseS4KICAgICBQcm9wZXJ0eVNs
b3Qgc2xvdCh0aGlzT2JqZWN0KTsKLSAgICBpZiAoZ2V0U3RhdGljVmFsdWVTbG90PEpTU3RvcmFn
ZSwgQmFzZT4oZXhlYywgKnNfaW5mby5wcm9wSGFzaFRhYmxlKGV4ZWMpLCB0aGlzT2JqZWN0LCBw
cm9wZXJ0eU5hbWUsIHNsb3QpKQorICAgIGlmIChnZXRTdGF0aWNWYWx1ZVNsb3Q8SlNTdG9yYWdl
LCBCYXNlPihleGVjLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHRoaXNPYmplY3QsIHBy
b3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgCiAgICAg
SlNWYWx1ZSBwcm90b3R5cGUgPSB0aGlzT2JqZWN0LT5wcm90b3R5cGUoKTsKQEAgLTEwNiw3ICsx
MDYsNyBAQCBib29sIEpTU3RvcmFnZTo6cHV0RGVsZWdhdGUoRXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lLCBKU1ZhbHVlCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHko
KSB3b3VsZCBlbmQgdXAgY2FsbGluZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVk
LCB3ZSBuZWVkIHRvIGNoZWNrCiAgICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51
YWxseS4KICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzKTsKLSAgICBpZiAoZ2V0U3RhdGljVmFs
dWVTbG90PEpTU3RvcmFnZSwgQmFzZT4oZXhlYywgKnNfaW5mby5wcm9wSGFzaFRhYmxlKGV4ZWMp
LCB0aGlzLCBwcm9wZXJ0eU5hbWUsIHNsb3QpKQorICAgIGlmIChnZXRTdGF0aWNWYWx1ZVNsb3Q8
SlNTdG9yYWdlLCBCYXNlPihleGVjLCAqc19pbmZvLnN0YXRpY1Byb3BIYXNoVGFibGUsIHRoaXMs
IHByb3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIEpTVmFs
dWUgcHJvdG90eXBlID0gdGhpcy0+cHJvdG90eXBlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAKaW5kZXggOTRmMTg5
Mi4uYTM0ZDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNXb3Jr
ZXJHbG9iYWxTY29wZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
V29ya2VyR2xvYmFsU2NvcGVCYXNlLmNwcApAQCAtNDUsNyArNDUsNyBAQCB1c2luZyBuYW1lc3Bh
Y2UgSlNDOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNvbnN0IENsYXNzSW5mbyBKU1dvcmtl
ckdsb2JhbFNjb3BlQmFzZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmSlNET01H
bG9iYWxPYmplY3Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckds
b2JhbFNjb3BlQmFzZSkgfTsKK2NvbnN0IENsYXNzSW5mbyBKU1dvcmtlckdsb2JhbFNjb3BlQmFz
ZTo6c19pbmZvID0geyAiV29ya2VyR2xvYmFsU2NvcGUiLCAmSlNET01HbG9iYWxPYmplY3Q6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSkgfTsK
IAogY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2U6
OnNfZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgPSB7ICZhbGxvd3NBY2Nlc3NGcm9tLCAmc3VwcG9y
dHNQcm9maWxpbmcsICZzdXBwb3J0c1JpY2hTb3VyY2VJbmZvLCAmc2hvdWxkSW50ZXJydXB0U2Ny
aXB0LCAmamF2YVNjcmlwdEV4cGVyaW1lbnRzRW5hYmxlZCwgJnF1ZXVlVGFza1RvRXZlbnRMb29w
LCAmc2hvdWxkSW50ZXJydXB0U2NyaXB0QmVmb3JlVGltZW91dCB9OwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRhLmgKaW5kZXggOTg5OThhNy4u
NjU0NTEzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpT
Q2xpZW50RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0Ns
aWVudERhdGEuaApAQCAtMjMsNyArMjMsNiBAQAogI2RlZmluZSBXZWJDb3JlSlNDbGllbnREYXRh
X2gKIAogI2luY2x1ZGUgIkRPTVdyYXBwZXJXb3JsZC5oIgotI2luY2x1ZGUgIkRPTU9iamVjdEhh
c2hUYWJsZU1hcC5oIgogI2luY2x1ZGUgIldlYkNvcmVUeXBlZEFycmF5Q29udHJvbGxlci5oIgog
I2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNzIs
OCArNzEsNiBAQCBwdWJsaWM6CiAgICAgICAgIG1fd29ybGRTZXQucmVtb3ZlKCZ3b3JsZCk7CiAg
ICAgfQogCi0gICAgRE9NT2JqZWN0SGFzaFRhYmxlTWFwIGhhc2hUYWJsZU1hcDsKLQogcHJpdmF0
ZToKICAgICBIYXNoU2V0PERPTVdyYXBwZXJXb3JsZCo+IG1fd29ybGRTZXQ7CiAgICAgUmVmUHRy
PERPTVdyYXBwZXJXb3JsZD4gbV9ub3JtYWxXb3JsZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNDk1YTQ3YS4uNmJlOWVk
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KQEAgLTMzNCwzOSArMzM0LDYgQEAgc3ViIEFkZENsYXNzRm9yd2FyZElmTmVlZGVk
CiAgICAgfQogfQogCi1zdWIgaGFzaFRhYmxlQWNjZXNzb3IKLXsKLSAgICBteSAkbm9TdGF0aWNU
YWJsZXMgPSBzaGlmdDsKLSAgICBteSAkY2xhc3NOYW1lID0gc2hpZnQ7Ci0gICAgaWYgKCRub1N0
YXRpY1RhYmxlcykgewotICAgICAgICByZXR1cm4gImdldCR7Y2xhc3NOYW1lfVRhYmxlKGV4ZWMt
PnZtKCkpIjsKLSAgICB9IGVsc2UgewotICAgICAgICByZXR1cm4gIiR7Y2xhc3NOYW1lfVRhYmxl
IjsKLSAgICB9Ci19Ci0KLXN1YiBwcm90b3R5cGVIYXNoVGFibGVBY2Nlc3NvcgotewotICAgIG15
ICRub1N0YXRpY1RhYmxlcyA9IHNoaWZ0OwotICAgIG15ICRjbGFzc05hbWUgPSBzaGlmdDsKLSAg
ICBpZiAoJG5vU3RhdGljVGFibGVzKSB7Ci0gICAgICAgIHJldHVybiAiZ2V0JHtjbGFzc05hbWV9
UHJvdG90eXBlVGFibGUodm0pIjsKLSAgICB9IGVsc2UgewotICAgICAgICByZXR1cm4gIiR7Y2xh
c3NOYW1lfVByb3RvdHlwZVRhYmxlIjsKLSAgICB9Ci19Ci0KLXN1YiBjb25zdHJ1Y3Rvckhhc2hU
YWJsZUFjY2Vzc29yCi17Ci0gICAgbXkgJG5vU3RhdGljVGFibGVzID0gc2hpZnQ7Ci0gICAgbXkg
JGNvbnN0cnVjdG9yQ2xhc3NOYW1lID0gc2hpZnQ7Ci0gICAgaWYgKCRub1N0YXRpY1RhYmxlcykg
ewotICAgICAgICByZXR1cm4gImdldCR7Y29uc3RydWN0b3JDbGFzc05hbWV9VGFibGUoZXhlYy0+
dm0oKSkiOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHJldHVybiAiJHtjb25zdHJ1Y3RvckNsYXNz
TmFtZX1UYWJsZSI7Ci0gICAgfQotfQotCiBzdWIgR2V0R2VuZXJhdGVJc1JlYWNoYWJsZQogewog
ICAgIG15ICRpbnRlcmZhY2UgPSBzaGlmdDsKQEAgLTQ2MCwxMCArNDI3LDkgQEAgc3ViIEdlbmVy
YXRlR2V0T3duUHJvcGVydHlTbG90Qm9keQogCiAgICAgaWYgKCRoYXNBdHRyaWJ1dGVzKSB7CiAg
ICAgICAgIGlmICgkaW5saW5lZCkgewotICAgICAgICAgICAgZGllICJDYW5ub3QgaW5saW5lIGlm
IE5vU3RhdGljVGFibGVzIGlzIHNldC4iIGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KTsKICAgICAgICAgICAgIHB1c2goQGdldE93blByb3Bl
cnR5U2xvdEltcGwsICIgICAgcmV0dXJuICR7bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVT
bG90PCRjbGFzc05hbWUsIEJhc2U+KGV4ZWMsICppbmZvKCktPnN0YXRpY1Byb3BIYXNoVGFibGUs
IHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAgfSBlbHNlIHsK
LSAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdEltcGwsICIgICAgcmV0dXJuICR7
bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVTbG90PCRjbGFzc05hbWUsIEJhc2U+KGV4ZWMs
ICIgLiBoYXNoVGFibGVBY2Nlc3NvcigkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsi
SlNOb1N0YXRpY1RhYmxlcyJ9LCAkY2xhc3NOYW1lKSAuICIsIHRoaXNPYmplY3QsIHByb3BlcnR5
TmFtZSwgc2xvdCk7XG4iKTsKKyAgICAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5U2xvdElt
cGwsICIgICAgcmV0dXJuICR7bmFtZXNwYWNlTWF5YmV9Z2V0U3RhdGljVmFsdWVTbG90PCRjbGFz
c05hbWUsIEJhc2U+KGV4ZWMsICR7Y2xhc3NOYW1lfVRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0
eU5hbWUsIHNsb3QpO1xuIik7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICBwdXNo
KEBnZXRPd25Qcm9wZXJ0eVNsb3RJbXBsLCAiICAgIHJldHVybiBCYXNlOjpnZXRPd25Qcm9wZXJ0
eVNsb3QodGhpc09iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOwpAQCAtMTk4
MiwxNSArMTk0OCw5IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXCVjb25kaXRpb25hbHMsICRqdXN0R2VuZXJhdGVWYWx1ZUFycmF5
KTsKIAogICAgIGlmICgkanVzdEdlbmVyYXRlVmFsdWVBcnJheSkgewotICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgImNvbnN0IENsYXNzSW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5m
byA9IHsgXCIke3Zpc2libGVJbnRlcmZhY2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZv
LCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCR7Y2xhc3NOYW1lfVByb3RvdHlwZSkgfTtcblxu
Iik7Ci0gICAgfSBlbHNpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTTm9T
dGF0aWNUYWJsZXMifSkgewotICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgInN0YXRpYyBjb25z
dCBIYXNoVGFibGUmIGdldCR7Y2xhc3NOYW1lfVByb3RvdHlwZVRhYmxlKFZNJiB2bSlcbiIpOwot
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIntcbiIpOwotICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudCwgIiAgICByZXR1cm4gZ2V0SGFzaFRhYmxlRm9yR2xvYmFsRGF0YSh2bSwgJHtjbGFzc05h
bWV9UHJvdG90eXBlVGFibGUpO1xuIik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAifVxu
XG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFz
c05hbWV9UHJvdG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Qcm90
b3R5cGVcIiwgJkJhc2U6OnNfaW5mbywgMCwgZ2V0JHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUs
IENSRUFURV9NRVRIT0RfVEFCTEUoJHtjbGFzc05hbWV9UHJvdG90eXBlKSB9O1xuXG4iKTsKKyAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJjb25zdCBDbGFzc0luZm8gJHtjbGFzc05hbWV9UHJv
dG90eXBlOjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Qcm90b3R5cGVcIiwg
JkJhc2U6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90b3R5
cGUpIH07XG5cbiIpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
Y29uc3QgQ2xhc3NJbmZvICR7Y2xhc3NOYW1lfVByb3RvdHlwZTo6c19pbmZvID0geyBcIiR7dmlz
aWJsZUludGVyZmFjZU5hbWV9UHJvdG90eXBlXCIsICZCYXNlOjpzX2luZm8sICYke2NsYXNzTmFt
ZX1Qcm90b3R5cGVUYWJsZSwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRSgke2NsYXNzTmFtZX1Qcm90
b3R5cGUpIH07XG5cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgImNvbnN0IENsYXNz
SW5mbyAke2NsYXNzTmFtZX1Qcm90b3R5cGU6OnNfaW5mbyA9IHsgXCIke3Zpc2libGVJbnRlcmZh
Y2VOYW1lfVByb3RvdHlwZVwiLCAmQmFzZTo6c19pbmZvLCAmJHtjbGFzc05hbWV9UHJvdG90eXBl
VGFibGUsIENSRUFURV9NRVRIT0RfVEFCTEUoJHtjbGFzc05hbWV9UHJvdG90eXBlKSB9O1xuXG4i
KTsKICAgICB9CiAKICAgICBpZiAoUHJvdG90eXBlT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlTbG90
KCRpbnRlcmZhY2UpKSB7CkBAIC0yMDA1LDExICsxOTY1LDExIEBAIHN1YiBHZW5lcmF0ZUltcGxl
bWVudGF0aW9uCiAgICAgICAgICAgICBpZiAoJG51bUNvbnN0YW50cyBlcSAwICYmICRudW1GdW5j
dGlvbnMgZXEgMCAmJiAkbnVtUHJvdG90eXBlQXR0cmlidXRlcyBlcSAwKSB7CiAgICAgICAgICAg
ICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5
U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7ICAgICAgICAK
ICAgICAgICAgICAgIH0gZWxzaWYgKCRudW1Db25zdGFudHMgZXEgMCAmJiAkbnVtUHJvdG90eXBl
QXR0cmlidXRlcyBlcSAwKSB7Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgcmV0dXJuIGdldFN0YXRpY0Z1bmN0aW9uU2xvdDxKU09iamVjdD4oZXhlYywgIiAuIHByb3Rv
dHlwZUhhc2hUYWJsZUFjY2Vzc29yKCRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U05vU3RhdGljVGFibGVzIn0sICRjbGFzc05hbWUpIC4gIiwgdGhpc09iamVjdCwgcHJvcGVydHlO
YW1lLCBzbG90KTtcbiIpOworICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IHJldHVybiBnZXRTdGF0aWNGdW5jdGlvblNsb3Q8SlNPYmplY3Q+KGV4ZWMsICR7Y2xhc3NOYW1l
fVByb3RvdHlwZVRhYmxlLCB0aGlzT2JqZWN0LCBwcm9wZXJ0eU5hbWUsIHNsb3QpO1xuIik7CiAg
ICAgICAgICAgICB9IGVsc2lmICgkbnVtRnVuY3Rpb25zIGVxIDAgJiYgJG51bVByb3RvdHlwZUF0
dHJpYnV0ZXMgZXEgMCkgewotICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
IHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8JHtjbGFzc05hbWV9UHJvdG90eXBlLCBKU09iamVj
dD4oZXhlYywgIiAuIHByb3RvdHlwZUhhc2hUYWJsZUFjY2Vzc29yKCRpbnRlcmZhY2UtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJKU05vU3RhdGljVGFibGVzIn0sICRjbGFzc05hbWUpIC4gIiwgdGhp
c09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOworICAgICAgICAgICAgICAgIHB1c2go
QGltcGxDb250ZW50LCAiICAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8JHtjbGFzc05hbWV9
UHJvdG90eXBlLCBKU09iamVjdD4oZXhlYywgJHtjbGFzc05hbWV9UHJvdG90eXBlVGFibGUsIHRo
aXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCk7XG4iKTsKICAgICAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgcmV0dXJuIGdldFN0YXRp
Y1Byb3BlcnR5U2xvdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUsIEpTT2JqZWN0PihleGVjLCAiIC4g
cHJvdG90eXBlSGFzaFRhYmxlQWNjZXNzb3IoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkpTTm9TdGF0aWNUYWJsZXMifSwgJGNsYXNzTmFtZSkgLiAiLCB0aGlzT2JqZWN0LCBwcm9w
ZXJ0eU5hbWUsIHNsb3QpO1xuIik7CisgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgcmV0dXJuIGdldFN0YXRpY1Byb3BlcnR5U2xvdDwke2NsYXNzTmFtZX1Qcm90b3R5cGUs
IEpTT2JqZWN0PihleGVjLCAke2NsYXNzTmFtZX1Qcm90b3R5cGVUYWJsZSwgdGhpc09iamVjdCwg
cHJvcGVydHlOYW1lLCBzbG90KTtcbiIpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICJ9XG5cbiIpOwogICAgICAgICB9IGVsc2lmICgkbnVtQ29uc3RhbnRz
ID4gMCB8fCAkbnVtRnVuY3Rpb25zID4gMCB8fCAkbnVtUHJvdG90eXBlQXR0cmlidXRlcyA+IDAp
IHsKQEAgLTIwNTEsMjUgKzIwMTEsMTMgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAg
ICB9CiAKICAgICAjIC0gSW5pdGlhbGl6ZSBzdGF0aWMgQ2xhc3NJbmZvIG9iamVjdAotICAgIGlm
ICgkbnVtSW5zdGFuY2VBdHRyaWJ1dGVzID4gMCAmJiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJp
YnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAic3RhdGljIGNvbnN0IEhhc2hUYWJsZSYgZ2V0JHtjbGFzc05hbWV9VGFibGUoVk0mIHZtKVxu
Iik7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAie1xuIik7Ci0gICAgICAgIHB1c2goQGlt
cGxDb250ZW50LCAiICAgIHJldHVybiBnZXRIYXNoVGFibGVGb3JHbG9iYWxEYXRhKHZtLCAke2Ns
YXNzTmFtZX1UYWJsZSk7XG4iKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ9XG5cbiIp
OwotICAgIH0KLQogICAgIHB1c2goQGltcGxDb250ZW50LCAiY29uc3QgQ2xhc3NJbmZvICRjbGFz
c05hbWUiIC4gIjo6c19pbmZvID0geyBcIiR7dmlzaWJsZUludGVyZmFjZU5hbWV9XCIsICZCYXNl
OjpzX2luZm8sICIpOwogCi0gICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAwICYmICEk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1RhYmxlcyJ9KSB7Cisg
ICAgaWYgKCRudW1JbnN0YW5jZUF0dHJpYnV0ZXMgPiAwKSB7CiAgICAgICAgIHB1c2goQGltcGxD
b250ZW50LCAiJiR7Y2xhc3NOYW1lfVRhYmxlIik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsICIwIik7CiAgICAgfQotICAgIGlmICgkbnVtSW5zdGFuY2VBdHRyaWJ1
dGVzID4gMCAmJiAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNOb1N0YXRpY1Rh
YmxlcyJ9KSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiLCBnZXQke2NsYXNzTmFtZX1U
YWJsZSAiKTsKLSAgICB9IGVsc2UgewotICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiwgMCAi
KTsKLSAgICB9CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIsIENSRUFURV9NRVRIT0RfVEFCTEUo
JGNsYXNzTmFtZSkgfTtcblxuIik7CiAKICAgICBteSAkaW1wbFR5cGUgPSAkaW50ZXJmYWNlTmFt
ZTsKQEAgLTQ3MjgsNyArNDY3Niw3IEBAIHN1YiBHZW5lcmF0ZUNvbnN0cnVjdG9ySGVscGVyTWV0
aG9kcwogICAgICAgICAkbGVhc3RDb25zdHJ1Y3Rvckxlbmd0aCA9IDA7CiAgICAgfQogCi0gICAg
cHVzaChAJG91dHB1dEFycmF5LCAiY29uc3QgQ2xhc3NJbmZvICR7Y29uc3RydWN0b3JDbGFzc05h
bWV9OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNlTmFtZX1Db25zdHJ1Y3RvclwiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKCRjb25zdHJ1Y3RvckNsYXNz
TmFtZSkgfTtcblxuIik7CisgICAgcHVzaChAJG91dHB1dEFycmF5LCAiY29uc3QgQ2xhc3NJbmZv
ICR7Y29uc3RydWN0b3JDbGFzc05hbWV9OjpzX2luZm8gPSB7IFwiJHt2aXNpYmxlSW50ZXJmYWNl
TmFtZX1Db25zdHJ1Y3RvclwiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxF
KCRjb25zdHJ1Y3RvckNsYXNzTmFtZSkgfTtcblxuIik7CiAKICAgICBwdXNoKEAkb3V0cHV0QXJy
YXksICIke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6JHtjb25zdHJ1Y3RvckNsYXNzTmFtZX0oU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpXG4iKTsK
ICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgOiAke2NvbnN0cnVjdG9yUGFyZW50Q2xhc3NO
YW1lfShzdHJ1Y3R1cmUsIGdsb2JhbE9iamVjdClcbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKaW5kZXggOGVkZjVlZC4uYjkwNzkw
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1
dGVzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0
ZXMudHh0CkBAIC04Miw3ICs4Miw2IEBAIEpTQ3VzdG9tVG9OYXRpdmVPYmplY3QKIEpTR2VuZXJh
dGVUb0pTT2JqZWN0CiBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QKIEpTTGVnYWN5UGFyZW50PSoK
LUpTTm9TdGF0aWNUYWJsZXMKIEpTV2luZG93RXZlbnRMaXN0ZW5lcgogTWFzcXVlcmFkZXNBc1Vu
ZGVmaW5lZAogTmFtZWRDb25zdHJ1Y3Rvcj0qCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvYy9DUnVudGltZU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvYy9DUnVu
dGltZU9iamVjdC5jcHAKaW5kZXggMmQ5NjY0NS4uZDQwYTk1OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL2MvQ1J1bnRpbWVPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9jL0NSdW50aW1lT2JqZWN0LmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNl
IEpTQyB7CiBuYW1lc3BhY2UgQmluZGluZ3MgewogCi1jb25zdCBDbGFzc0luZm8gQ1J1bnRpbWVP
YmplY3Q6OnNfaW5mbyA9IHsgIkNSdW50aW1lT2JqZWN0IiwgJlJ1bnRpbWVPYmplY3Q6OnNfaW5m
bywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDUnVudGltZU9iamVjdCkgfTsKK2NvbnN0IENs
YXNzSW5mbyBDUnVudGltZU9iamVjdDo6c19pbmZvID0geyAiQ1J1bnRpbWVPYmplY3QiLCAmUnVu
dGltZU9iamVjdDo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKENSdW50aW1lT2JqZWN0
KSB9OwogCiBDUnVudGltZU9iamVjdDo6Q1J1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxDSW5zdGFuY2U+IGluc3RhbmNlKQogICAgIDogUnVudGlt
ZU9iamVjdCh2bSwgc3RydWN0dXJlLCBpbnN0YW5jZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9jL2NfaW5zdGFuY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL2MvY19p
bnN0YW5jZS5jcHAKaW5kZXggNmViMWVmZi4uNGIzZWY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL2MvY19pbnN0YW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdl
L2MvY19pbnN0YW5jZS5jcHAKQEAgLTE0Myw3ICsxNDMsNyBAQCBwcml2YXRlOgogCiB9OwogCi1j
b25zdCBDbGFzc0luZm8gQ1J1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIkNSdW50aW1lTWV0aG9k
IiwgJlJ1bnRpbWVNZXRob2Q6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShDUnVu
dGltZU1ldGhvZCkgfTsKK2NvbnN0IENsYXNzSW5mbyBDUnVudGltZU1ldGhvZDo6c19pbmZvID0g
eyAiQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1ldGhvZDo6c19pbmZvLCAwLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKENSdW50aW1lTWV0aG9kKSB9OwogCiBKU1ZhbHVlIENJbnN0YW5jZTo6Z2V0TWV0
aG9kKEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0Lm1tIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QubW0KaW5kZXggMGQw
YmJhNS4uYTQzOTQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2Jq
Q1J1bnRpbWVPYmplY3QubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1
bnRpbWVPYmplY3QubW0KQEAgLTMzLDcgKzMzLDcgQEAKIG5hbWVzcGFjZSBKU0MgewogbmFtZXNw
YWNlIEJpbmRpbmdzIHsKIAotY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lT2JqZWN0OjpzX2lu
Zm8gPSB7ICJPYmpDUnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2luZm8sIDAsIDAs
IENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVPYmplY3QpIH07Citjb25zdCBDbGFzc0lu
Zm8gT2JqQ1J1bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIk9iakNSdW50aW1lT2JqZWN0IiwgJlJ1
bnRpbWVPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpDUnVudGltZU9i
amVjdCkgfTsKIAogT2JqQ1J1bnRpbWVPYmplY3Q6Ok9iakNSdW50aW1lT2JqZWN0KFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8T2JqY0luc3RhbmNlPiBpbnN0YW5jZSkK
ICAgICA6IFJ1bnRpbWVPYmplY3Qodm0sIHN0cnVjdHVyZSwgaW5zdGFuY2UpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tIGIvU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQppbmRleCAzZmIzMzYyLi4wMTVhNmZi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KQEAgLTIx
OCw3ICsyMTgsNyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAKLWNvbnN0IENsYXNzSW5mbyBPYmpD
UnVudGltZU1ldGhvZDo6c19pbmZvID0geyAiT2JqQ1J1bnRpbWVNZXRob2QiLCAmUnVudGltZU1l
dGhvZDo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKE9iakNSdW50aW1lTWV0aG9k
KSB9OworY29uc3QgQ2xhc3NJbmZvIE9iakNSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJPYmpD
UnVudGltZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0Rf
VEFCTEUoT2JqQ1J1bnRpbWVNZXRob2QpIH07CiAKIEpTVmFsdWUgT2JqY0luc3RhbmNlOjpnZXRN
ZXRob2QoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tIGIvU291
cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCmluZGV4IDM3Mjg2MjEuLmZj
NjhkNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGlt
ZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KQEAg
LTE4OCw3ICsxODgsNyBAQCB1bnNpZ25lZCBpbnQgT2JqY0FycmF5OjpnZXRMZW5ndGgoKSBjb25z
dAogICAgIHJldHVybiBbX2FycmF5LmdldCgpIGNvdW50XTsKIH0KIAotY29uc3QgQ2xhc3NJbmZv
IE9iamNGYWxsYmFja09iamVjdEltcDo6c19pbmZvID0geyAiT2JqY0ZhbGxiYWNrT2JqZWN0Iiwg
JkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShPYmpjRmFsbGJhY2tPYmpl
Y3RJbXApIH07Citjb25zdCBDbGFzc0luZm8gT2JqY0ZhbGxiYWNrT2JqZWN0SW1wOjpzX2luZm8g
PSB7ICJPYmpjRmFsbGJhY2tPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9E
X1RBQkxFKE9iamNGYWxsYmFja09iamVjdEltcCkgfTsKIAogT2JqY0ZhbGxiYWNrT2JqZWN0SW1w
OjpPYmpjRmFsbGJhY2tPYmplY3RJbXAoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIE9iamNJbnN0YW5jZSogaSwgY29uc3QgU3RyaW5nJiBwcm9wZXJ0
eU5hbWUpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0
cnVjdHVyZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmNwcAppbmRleCBkOGZm
OWUyLi5mZWVhYjg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9h
cnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwCkBA
IC0zNSw3ICszNSw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgSlND
IHsKIAotY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVBcnJheTo6c19pbmZvID0geyAiUnVudGltZUFy
cmF5IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lQXJy
YXkpIH07Citjb25zdCBDbGFzc0luZm8gUnVudGltZUFycmF5OjpzX2luZm8gPSB7ICJSdW50aW1l
QXJyYXkiLCAmQmFzZTo6c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVBcnJh
eSkgfTsKIAogUnVudGltZUFycmF5OjpSdW50aW1lQXJyYXkoRXhlY1N0YXRlKiBleGVjLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IEpTQXJyYXkoZXhlYy0+dm0oKSwgc3RydWN0dXJlLCAw
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9kLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAKaW5kZXggNTRkMzYxMy4u
YThhZDlhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfbWV0aG9k
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCkBAIC0z
OSw3ICszOSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiB1c2luZyBuYW1lc3BhY2UgQmluZGluZ3M7
CiAKLWNvbnN0IENsYXNzSW5mbyBSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJSdW50aW1lTWV0
aG9kIiwgJkludGVybmFsRnVuY3Rpb246OnNfaW5mbywgMCwgMCwgQ1JFQVRFX01FVEhPRF9UQUJM
RShSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIFJ1bnRpbWVNZXRob2Q6OnNfaW5m
byA9IHsgIlJ1bnRpbWVNZXRob2QiLCAmSW50ZXJuYWxGdW5jdGlvbjo6c19pbmZvLCAwLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVNZXRob2QpIH07CiAKIFJ1bnRpbWVNZXRob2Q6OlJ1bnRp
bWVNZXRob2QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBzdHJ1Y3R1
cmUsIE1ldGhvZCogbWV0aG9kKQogICAgIC8vIENhbGxlcnMgd2lsbCBuZWVkIHRvIHBhc3MgaW4g
dGhlIHJpZ2h0IGdsb2JhbCBvYmplY3QgY29ycmVzcG9uZGluZyB0byB0aGlzIG5hdGl2ZSBvYmpl
Y3QgIm1ldGhvZCIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9v
YmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAppbmRl
eCA0OGMyYzVlLi4xMGIwMWVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVu
dGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVj
dC5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiBuYW1lc3Bh
Y2UgSlNDIHsKIG5hbWVzcGFjZSBCaW5kaW5ncyB7CiAKLWNvbnN0IENsYXNzSW5mbyBSdW50aW1l
T2JqZWN0OjpzX2luZm8gPSB7ICJSdW50aW1lT2JqZWN0IiwgJkJhc2U6OnNfaW5mbywgMCwgMCwg
Q1JFQVRFX01FVEhPRF9UQUJMRShSdW50aW1lT2JqZWN0KSB9OworY29uc3QgQ2xhc3NJbmZvIFJ1
bnRpbWVPYmplY3Q6OnNfaW5mbyA9IHsgIlJ1bnRpbWVPYmplY3QiLCAmQmFzZTo6c19pbmZvLCAw
LCBDUkVBVEVfTUVUSE9EX1RBQkxFKFJ1bnRpbWVPYmplY3QpIH07CiAKIFJ1bnRpbWVPYmplY3Q6
OlJ1bnRpbWVPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUGFzc1JlZlB0cjxJ
bnN0YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdCh2bSwgc3RydWN0
dXJlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleS5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAppbmRleCBiYzE0ZGE4Li4zOTc0MmM4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbApAQCAtNDQsNyArNDQsNiBAQCBlbnVt
IEtleVVzYWdlIHsKICAgICBDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLAogICAgIEdlbmVyYXRl
SXNSZWFjaGFibGU9SW1wbCwKICAgICBJbnRlcmZhY2VOYW1lPUtleSwKLSAgICBKU05vU3RhdGlj
VGFibGVzLAogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9u
CiBdIGludGVyZmFjZSBDcnlwdG9LZXkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFj
ZUxvYWRFdmVudC5pZGwKaW5kZXggMTQ4ZWExZi4uYmMxNTA5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTRm9udEZhY2VMb2FkRXZlbnQuaWRsCkBAIC0zMSw3ICszMSw2IEBACiBbCiAgICAg
Tm9JbnRlcmZhY2VPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9Rk9OVF9MT0FEX0VWRU5UUywKLSAg
ICBKU05vU3RhdGljVGFibGVzLAogICAgIENvbnN0cnVjdG9yVGVtcGxhdGU9RXZlbnQKIF0gaW50
ZXJmYWNlIENTU0ZvbnRGYWNlTG9hZEV2ZW50IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5
RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIENTU0ZvbnRGYWNlUnVsZSBmb250
ZmFjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01Db3JlRXhjZXB0aW9uLmlkbAppbmRleCA1NjY0ZmUz
Li5lNGQyZTk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NQ29yZUV4Y2VwdGlv
bi5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTUNvcmVFeGNlcHRpb24uaWRsCkBAIC0y
Nyw3ICsyNyw2IEBACiAgKi8KIAogWwotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgRG9Ob3RD
aGVja0NvbnN0YW50cywKICAgICBJbnRlcmZhY2VOYW1lPURPTUV4Y2VwdGlvbiwKICAgICBJbXBs
ZW1lbnRhdGlvbkxhY2tzVlRhYmxlLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RP
TVN0cmluZ0xpc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0RPTVN0cmluZ0xpc3QuaWRsCmlu
ZGV4IDk2MThlMjQuLjI2ZWQ4YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9ET01T
dHJpbmdMaXN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRE9NU3RyaW5nTGlzdC5pZGwK
QEAgLTI1LDcgKzI1LDYgQEAKIAogWwogICAgIEpTQ3VzdG9tVG9OYXRpdmVPYmplY3QsCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAogXSBpbnRl
cmZhY2UgRE9NU3RyaW5nTGlzdCB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxv
bmcgbGVuZ3RoOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0Vycm9yRXZlbnQuaWRs
IGIvU291cmNlL1dlYkNvcmUvZG9tL0Vycm9yRXZlbnQuaWRsCmluZGV4IDFjN2JiNzkuLjU5NDFi
ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FcnJvckV2ZW50LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRXJyb3JFdmVudC5pZGwKQEAgLTI5LDcgKzI5LDYgQEAKICAqLwog
CiBbCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAgICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50
CiBdIGludGVyZmFjZSBFcnJvckV2ZW50IDogRXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZl
bnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBtZXNzYWdlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FdmVudC5pZGwKaW5kZXggZWQ5ZDc0Yy4uOGI4OTYwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0V2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnQuaWRsCkBA
IC0yMiw3ICsyMiw2IEBACiBbCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKICAgICBDb25zdHJ1Y3Rv
clRlbXBsYXRlPUV2ZW50LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgT2JqQ1BvbHltb3Jw
aGljLAogXSBpbnRlcmZhY2UgRXZlbnQgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50RXhjZXB0aW9u
LmlkbAppbmRleCBlMDcyNzI2Li5lNzljMTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRXZlbnRFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudEV4Y2Vw
dGlvbi5pZGwKQEAgLTI4LDcgKzI4LDYgQEAKIAogLy8gSW50cm9kdWNlZCBpbiBET00gTGV2ZWwg
MjoKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIERvTm90Q2hlY2tDb25zdGFudHMsCiAg
ICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gZXhjZXB0aW9uIEV2ZW50RXhjZXB0aW9u
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudExpc3RlbmVyLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FdmVudExpc3RlbmVyLmlkbAppbmRleCA4ZTcxNDhiLi42Y2FhMjVl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRMaXN0ZW5lci5pZGwKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50TGlzdGVuZXIuaWRsCkBAIC0yMSw3ICsyMSw2IEBACiAv
LyBJbnRyb2R1Y2VkIGluIERPTSBMZXZlbCAyOgogWwogICAgIE5vSW50ZXJmYWNlT2JqZWN0LAot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgT2JqQ1Byb3RvY29sLAogICAgIENQUFB1cmVJbnRl
cmZhY2UsCiBdIGludGVyZmFjZSBFdmVudExpc3RlbmVyIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZUNoYW5uZWwuaWRsCmluZGV4IDEzMTEyN2IuLmY0MmYwOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01l
c3NhZ2VDaGFubmVsLmlkbApAQCAtMzAsNyArMzAsNiBAQAogICAgIENvbnN0cnVjdG9yLAogICAg
IENvbnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBKU0N1c3Rv
bU1hcmtGdW5jdGlvbiwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIE1lc3NhZ2VDaGFubmVsIHsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VFdmVudC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZUV2ZW50LmlkbAppbmRleCA3YzdjMWI0Li4yMjVlYzg4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTWVzc2FnZUV2ZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZUV2ZW50LmlkbApAQCAtMjcsNyArMjcsNiBAQAogCiBbCiAgICAgR2xvYmFsQ29udGV4
dD1ET01XaW5kb3cmV29ya2VyR2xvYmFsU2NvcGUsCi0gICAgSlNOb1N0YXRpY1RhYmxlcywKICAg
ICBDb25zdHJ1Y3RvclRlbXBsYXRlPUV2ZW50LAogXSBpbnRlcmZhY2UgTWVzc2FnZUV2ZW50IDog
RXZlbnQgewogICAgIFtJbml0aWFsaXplZEJ5RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0
cmlidXRlIERPTVN0cmluZyBvcmlnaW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZVBvcnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0LmlkbAppbmRl
eCAyYjM0OWNiLi5kOGU5MDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZVBvcnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5pZGwKQEAgLTMw
LDcgKzMwLDYgQEAKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgQWN0aXZlRE9N
T2JqZWN0LAogICAgIEV2ZW50VGFyZ2V0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVy
ZmFjZSBNZXNzYWdlUG9ydCB7CiAvLyBXZSBuZWVkIHRvIGhhdmUgc29tZXRoaW5nIGFzIGFuIE9i
akMgYmluZGluZywgYmVjYXVzZSBNZXNzYWdlUG9ydCBpcyB1c2VkIGluIE1lc3NhZ2VFdmVudCwg
d2hpY2ggYWxyZWFkeSBoYXMgb25lLAogLy8gYnV0IHdlIGRvbid0IHdhbnQgdG8gYWN0dWFsbHkg
ZXhwb3NlIHRoZSBBUEkgd2hpbGUgaXQgaXMgaW4gZmx1eC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Qcm9ncmVzc0V2ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9ncmVz
c0V2ZW50LmlkbAppbmRleCBlMmRkZmJiLi5lM2ExMjBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vUHJvZ3Jlc3NFdmVudC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1Byb2dy
ZXNzRXZlbnQuaWRsCkBAIC0yNSw3ICsyNSw2IEBACiAKIFsKICAgICBDb25zdHJ1Y3RvclRlbXBs
YXRlPUV2ZW50LAotICAgIEpTTm9TdGF0aWNUYWJsZXMKIF0gaW50ZXJmYWNlIFByb2dyZXNzRXZl
bnQgOiBFdmVudCB7CiAgICAgW0luaXRpYWxpemVkQnlFdmVudENvbnN0cnVjdG9yXSByZWFkb25s
eSBhdHRyaWJ1dGUgYm9vbGVhbiBsZW5ndGhDb21wdXRhYmxlOwogICAgIFtJbml0aWFsaXplZEJ5
RXZlbnRDb25zdHJ1Y3Rvcl0gcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyBs
b2FkZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuaWRsIGIvU291
cmNlL1dlYkNvcmUvZmlsZWFwaS9CbG9iLmlkbAppbmRleCBhYzc3YWJkLi43MDc4YzMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2ZpbGVhcGkvQmxvYi5pZGwKQEAgLTMyLDcgKzMyLDYgQEAKICAgICBHbG9iYWxDb250ZXh0
PURPTVdpbmRvdyZXb3JrZXJHbG9iYWxTY29wZSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUlt
cGwsCiAgICAgQ3VzdG9tVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEN1
c3RvbUNvbnN0cnVjdG9yLAogICAgIEN1c3RvbUNvbnN0cnVjdG9yKHNlcXVlbmNlPGFueT4gYmxv
YlBhcnRzLCBvcHRpb25hbCBCbG9iUHJvcGVydHlCYWcgb3B0aW9ucyksCiBdIGludGVyZmFjZSBC
bG9iIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGUuaWRsCmluZGV4IDQ0NDYyZWUuLjhlMDk4OTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvZmlsZWFwaS9GaWxlLmlkbApAQCAtMjYsNyArMjYsNiBAQAogWwogICAgIEpTR2VuZXJhdGVU
b05hdGl2ZU9iamVjdCwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGlj
VGFibGVzCiBdIGludGVyZmFjZSBGaWxlIDogQmxvYiB7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBuYW1lOwogI2lmICFkZWZpbmVkKExBTkdVQUdFX0dPQkpFQ1QpIHx8ICFMQU5H
VUFHRV9HT0JKRUNUCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVFcnJv
ci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVFcnJvci5pZGwKaW5kZXggZDk2NTBm
OS4uYTRkYjA4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlRXJyb3Iu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUVycm9yLmlkbApAQCAtMjksNyAr
MjksNiBAQAogICovCiAKIFsKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIEZpbGVFcnJvciB7CiAjaWYgIWRlZmluZWQoTEFO
R1VBR0VfT0JKRUNUSVZFX0MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGVFeGNlcHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlRXhjZXB0aW9uLmlk
bAppbmRleCA2Y2FlN2E1Li43N2E1YTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxl
YXBpL0ZpbGVFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUV4
Y2VwdGlvbi5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBOb0ludGVyZmFjZU9iamVjdCwK
ICAgICBEb05vdENoZWNrQ29uc3RhbnRzLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1w
bGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gZXhjZXB0aW9uIEZpbGVFeGNlcHRpb24gewogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVMaXN0LmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCmluZGV4IDI1OGY5Y2MuLjQyZDU1MzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZUxpc3QuaWRsCkBAIC0yNCw3ICsyNCw2IEBACiAgKi8KIAogWwot
ICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0g
aW50ZXJmYWNlIEZpbGVMaXN0IHsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9u
ZyBsZW5ndGg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIu
aWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyLmlkbAppbmRleCAwMGI5MWEz
Li44YjMzMGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXIu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlci5pZGwKQEAgLTM1LDcg
KzM1LDYgQEAKICAgICBDb25zdHJ1Y3RvciwKICAgICBDb25zdHJ1Y3RvckNhbGxXaXRoPVNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQsCiAgICAgRXZlbnRUYXJnZXQsCi0gICAgSlNOb1N0YXRpY1RhYmxl
cywKIF0gaW50ZXJmYWNlIEZpbGVSZWFkZXIgewogICAgIC8vIHJlYWR5IHN0YXRlcwogICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IEVNUFRZID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVJlYWRlclN5bmMuaWRsIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxl
UmVhZGVyU3luYy5pZGwKaW5kZXggMWY3NzQxYy4uNWEwMjgyNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwKQEAgLTMxLDcgKzMxLDYgQEAKIFsKICAgICBHbG9i
YWxDb250ZXh0PVdvcmtlckdsb2JhbFNjb3BlLAogICAgIENvbnN0cnVjdG9yLAotICAgIEpTTm9T
dGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBGaWxlUmVhZGVyU3luYyB7CiAgICAgW0NhbGxXaXRo
PVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIFJhaXNlc0V4Y2VwdGlvbl0gQXJyYXlCdWZmZXIgcmVh
ZEFzQXJyYXlCdWZmZXIoQmxvYiBibG9iKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgUmFpc2VzRXhjZXB0aW9uXSBET01TdHJpbmcgcmVhZEFzQmluYXJ5U3RyaW5nKEJs
b2IgYmxvYik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0RPTVVSTC5pZGwKaW5kZXggODc2YjM0Yi4uMDg1ODA0MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9ET01VUkwuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvRE9NVVJMLmlkbApAQCAtMzIsNyArMzIsNiBAQAogICAgIENvbnN0cnVjdG9yUmFp
c2VzRXhjZXB0aW9uLAogICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICBKU0dlbmVy
YXRlVG9KU09iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogICAgIEludGVyZmFjZU5hbWU9
VVJMLAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCiBdIGludGVyZmFjZSBET01VUkwg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbAppbmRleCAxYzhhZGM5Li5lYTg4OGI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmlkbApAQCAtMzYsNyArMzYsNiBAQAogICAgIENv
bnN0cnVjdG9yQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBDb25zdHJ1Y3Rv
clJhaXNlc0V4Y2VwdGlvbiwKICAgICBFdmVudFRhcmdldCwKLSAgICBKU05vU3RhdGljVGFibGVz
LAogXSBpbnRlcmZhY2UgRXZlbnRTb3VyY2UgewogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERP
TVN0cmluZyBVUkw7IC8vIExvd2VyY2FzZWQgLnVybCBpcyB0aGUgb25lIGluIHRoZSBzcGVjLCBi
dXQgbGVhdmluZyAuVVJMIGZvciBjb21wYXRpYmlsaXR5IHJlYXNvbnMuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1dvcmtlck5hdmlnYXRvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1dvcmtlck5hdmlnYXRvci5pZGwKaW5kZXggNmY0YWQ1Ni4uODZhMWE0YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Xb3JrZXJOYXZpZ2F0b3IuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvV29ya2VyTmF2aWdhdG9yLmlkbApAQCAtMjksNyArMjksNiBAQAogWwogICAg
IE5vSW50ZXJmYWNlT2JqZWN0LAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKLSAgICBK
U05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2UgV29ya2VyTmF2aWdhdG9yIHsKICAgICByZWFk
b25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFwcE5hbWU7CiAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IERPTVN0cmluZyBhcHBWZXJzaW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmlkbAppbmRleCBmZDNlYjlmLi5kZjdmOTY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmlkbApAQCAtMzIsNyArMzIsNiBAQAogICAgIEdsb2JhbENvbnRleHQ9RGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGUsCiAgICAgQ3VzdG9tUHJveHlUb0pTT2JqZWN0LAogICAgIEpTR2Vu
ZXJhdGVUb05hdGl2ZU9iamVjdCwKLSAgICBKU05vU3RhdGljVGFibGVzLAogXSBpbnRlcmZhY2Ug
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CiAKICNpZiBk
ZWZpbmVkKExBTkdVQUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJUFQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaWRs
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9TaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5k
ZXggNDM5NWFmYy4uZDFhMTAzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9T
aGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9T
aGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTMzLDcgKzMzLDYgQEAKICAgICBDdXN0b21Q
cm94eVRvSlNPYmplY3QsCiAgICAgQ29uZGl0aW9uYWw9U0hBUkVEX1dPUktFUlMsCiAgICAgSlNH
ZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFj
ZSBTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSA6IFdvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggNjY4ZDg4NS4uMDVlMzVhYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTMxLDcgKzMxLDYg
QEAKICAgICBKU0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IsCiAgICAgRXZl
bnRUYXJnZXQsCiAgICAgSlNMZWdhY3lQYXJlbnQ9SlNXb3JrZXJHbG9iYWxTY29wZUJhc2UsCi0g
ICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIFdvcmtlckdsb2JhbFNjb3BlIHsKIAog
I2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJMb2NhdGlvbi5pZGwgYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbAppbmRleCA1NDUxMGQxLi44
NmM3N2RhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9u
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckxvY2F0aW9uLmlkbApAQCAt
MjksNyArMjksNiBAQAogWwogICAgIEdsb2JhbENvbnRleHQ9V29ya2VyR2xvYmFsU2NvcGUsCiAg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAotICAgIEpTTm9TdGF0aWNUYWJsZXMsCiAgICAg
SW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZSwKIF0gaW50ZXJmYWNlIFdvcmtlckxvY2F0aW9uIHsK
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGhyZWY7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmlkbAppbmRleCA4ZGRkMzI2Li4yMTQ4NDlmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdC5pZGwKQEAgLTQyLDcgKzQyLDYgQEAgZW51bSBYTUxIdHRwUmVxdWVz
dFJlc3BvbnNlVHlwZSB7CiAgICAgQ29uc3RydWN0b3JDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25D
b250ZXh0LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIEV2ZW50VGFyZ2V0LAotICAg
IEpTTm9TdGF0aWNUYWJsZXMsCiBdIGludGVyZmFjZSBYTUxIdHRwUmVxdWVzdCB7CiAgICAgLy8g
RnJvbSBYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0CiAgICAgLy8gZXZlbnQgaGFuZGxlciBhdHRy
aWJ1dGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RFeGNl
cHRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0RXhjZXB0aW9uLmlk
bAppbmRleCA5ZDdmYmVmLi5mMDY5NDFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxI
dHRwUmVxdWVzdEV4Y2VwdGlvbi5pZGwKQEAgLTI3LDcgKzI3LDYgQEAKICAqLwogCiBbCi0gICAg
SlNOb1N0YXRpY1RhYmxlcywKICAgICBEb05vdENoZWNrQ29uc3RhbnRzLAogICAgIEltcGxlbWVu
dGF0aW9uTGFja3NWVGFibGUsCiBdIGV4Y2VwdGlvbiBYTUxIdHRwUmVxdWVzdEV4Y2VwdGlvbiB7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2
ZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQu
aWRsCmluZGV4IDNmZDhlN2IuLjIxMTYyNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3ht
bC9YTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaWRsCkBAIC0yNCw3ICsyNCw2IEBACiAgKi8K
IAogWwotICAgIEpTTm9TdGF0aWNUYWJsZXMKIC8vIFdlIHNob3VsZCBhbHNvIGluaGVyaXQgZnJv
bSBMU1Byb2dyZXNzRXZlbnQgd2hlbiB0aGUgaWRsIGlzIGFkZGVkLgogXSBpbnRlcmZhY2UgWE1M
SHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50IDogUHJvZ3Jlc3NFdmVudCB7CiAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmcgcG9zaXRpb247CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQuaWRsIGIvU291cmNlL1dlYkNvcmUv
eG1sL1hNTEh0dHBSZXF1ZXN0VXBsb2FkLmlkbAppbmRleCA1YWRjMDExLi5hMDU1OWM4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3RVcGxvYWQuaWRsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdFVwbG9hZC5pZGwKQEAgLTI5LDcgKzI5
LDYgQEAKIFsKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgRXZlbnRUYXJnZXQs
Ci0gICAgSlNOb1N0YXRpY1RhYmxlcywKIF0gaW50ZXJmYWNlIFhNTEh0dHBSZXF1ZXN0VXBsb2Fk
IHsKICAgICAvLyBGcm9tIFhNTEh0dHBSZXF1ZXN0RXZlbnRUYXJnZXQKICAgICAvLyBldmVudCBo
YW5kbGVyIGF0dHJpYnV0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0LnZjeHBy
b2ovV2ViS2l0RXhwb3J0R2VuZXJhdG9yL1dlYktpdEV4cG9ydHMuZGVmLmluIGIvU291cmNlL1dl
YktpdC9XZWJLaXQudmN4cHJvai9XZWJLaXRFeHBvcnRHZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5k
ZWYuaW4KaW5kZXggMzNlNGRkMC4uMDE1NzJkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJLaXQudmN4cHJvai9XZWJLaXRFeHBvcnRHZW5lcmF0b3IvV2ViS2l0RXhwb3J0cy5kZWYuaW4K
KysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQudmN4cHJvai9XZWJLaXRFeHBvcnRHZW5lcmF0b3Iv
V2ViS2l0RXhwb3J0cy5kZWYuaW4KQEAgLTE0Nyw2ICsxNDcsNyBAQCBFWFBPUlRTCiAgICAgICAg
ID93YWl0Rm9yVGhyZWFkQ29tcGxldGlvbkBXVEZAQFlBSElAWgogICAgICAgICBzeW1ib2xXaXRo
UG9pbnRlcig/d2FpdEZvclRocmVhZENvbXBsZXRpb25AV1RGQEBZQUhJUEFQQVhAWiwgP3dhaXRG
b3JUaHJlYWRDb21wbGV0aW9uQFdURkBAWUFISVBFQVBFQVhAWikKICAgICAgICAgc3ltYm9sV2l0
aFBvaW50ZXIoP2NyZWF0ZVRocmVhZEBXVEZAQFlBSVA2QVBBWFBBWEBaMEBaLCA/Y3JlYXRlVGhy
ZWFkQFdURkBAWUFJUDZBUEVBWFBFQVhAWjBAWikKKyAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIo
P2dsb2JhbE9iamVjdFRhYmxlQEpTQ0BAM1VIYXNoVGFibGVAMUBCLCA/Z2xvYmFsT2JqZWN0VGFi
bGVASlNDQEAzVUhhc2hUYWJsZUAxQEIpCiAKICAgICAgICAgOyBSZS1leHBvcnRzIGZyb20gV2Vi
Q29yZSBmb3IgdGVzdCBoYXJuZXNzZXMKICAgICAgICAgc3ltYm9sV2l0aFBvaW50ZXIoPz8wSGl0
VGVzdFJlc3VsdEBXZWJDb3JlQEBRQUVAQUJWTGF5b3V0UG9pbnRAMUBAWiwgPz8wSGl0VGVzdFJl
c3VsdEBXZWJDb3JlQEBRRUFBQEFFQlZMYXlvdXRQb2ludEAxQEBaKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmlu
ZGV4IDQyYTAyMzUuLmExYjc0MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAor
MjAxNC0wNy0zMCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
U3RhdGljIGhhc2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNvdXBsZWQgd2l0aCBhIFZN
LgorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgorCisgICAgICAgIFJldmll
d2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvUHJveHlJ
bnN0YW5jZS5tbToKKyAgICAgICAgKiBQbHVnaW5zL0hvc3RlZC9Qcm94eVJ1bnRpbWVPYmplY3Qu
bW06CisKIDIwMTQtMDctMjcgIFByYXRpayBTb2xhbmtpICA8cHNvbGFua2lAYXBwbGUuY29tPgog
CiAgICAgICAgIFJlbW92ZSB1bnVzZWQgcHJlZmVyZW5jZSBrZXlzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94eUluc3RhbmNlLm1tIGIvU291cmNlL1dl
YktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvUHJveHlJbnN0YW5jZS5tbQppbmRleCA3ODMxNjNlLi4w
ZGYwZGVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94
eUluc3RhbmNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5
SW5zdGFuY2UubW0KQEAgLTIwOCw3ICsyMDgsNyBAQCBwcml2YXRlOgogICAgIH0KIH07CiAKLWNv
bnN0IENsYXNzSW5mbyBQcm94eVJ1bnRpbWVNZXRob2Q6OnNfaW5mbyA9IHsgIlByb3h5UnVudGlt
ZU1ldGhvZCIsICZSdW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFC
TEUoUHJveHlSdW50aW1lTWV0aG9kKSB9OworY29uc3QgQ2xhc3NJbmZvIFByb3h5UnVudGltZU1l
dGhvZDo6c19pbmZvID0geyAiUHJveHlSdW50aW1lTWV0aG9kIiwgJlJ1bnRpbWVNZXRob2Q6OnNf
aW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQcm94eVJ1bnRpbWVNZXRob2QpIH07CiAKIEpT
VmFsdWUgUHJveHlJbnN0YW5jZTo6Z2V0TWV0aG9kKEpTQzo6RXhlY1N0YXRlKiBleGVjLCBQcm9w
ZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
UGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tIGIvU291cmNlL1dlYktpdC9tYWMv
UGx1Z2lucy9Ib3N0ZWQvUHJveHlSdW50aW1lT2JqZWN0Lm1tCmluZGV4IGFmYWZjZGYuLmU2NmM5
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL1Byb3h5UnVu
dGltZU9iamVjdC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Qcm94
eVJ1bnRpbWVPYmplY3QubW0KQEAgLTM0LDcgKzM0LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEpTQzsK
IG5hbWVzcGFjZSBXZWJLaXQgewogCiAKLWNvbnN0IENsYXNzSW5mbyBQcm94eVJ1bnRpbWVPYmpl
Y3Q6OnNfaW5mbyA9IHsgIlByb3h5UnVudGltZU9iamVjdCIsICZSdW50aW1lT2JqZWN0OjpzX2lu
Zm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoUHJveHlSdW50aW1lT2JqZWN0KSB9OworY29u
c3QgQ2xhc3NJbmZvIFByb3h5UnVudGltZU9iamVjdDo6c19pbmZvID0geyAiUHJveHlSdW50aW1l
T2JqZWN0IiwgJlJ1bnRpbWVPYmplY3Q6OnNfaW5mbywgMCwgQ1JFQVRFX01FVEhPRF9UQUJMRShQ
cm94eVJ1bnRpbWVPYmplY3QpIH07CiAKIFByb3h5UnVudGltZU9iamVjdDo6UHJveHlSdW50aW1l
T2JqZWN0KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFBhc3NSZWZQdHI8UHJveHlJbnN0
YW5jZT4gaW5zdGFuY2UpCiAgICAgOiBSdW50aW1lT2JqZWN0KHZtLCBzdHJ1Y3R1cmUsIGluc3Rh
bmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCmluZGV4IDBmMmMwNWIuLjIwZGEwZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMyBAQAorMjAxNC0wNy0zMCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CisK
KyAgICAgICAgU3RhdGljIGhhc2ggdGFibGVzIG5vIGxvbmdlciBuZWVkIHRvIGJlIGNvdXBsZWQg
d2l0aCBhIFZNLgorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM1NDIxPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9Q
bHVnaW5zL05ldHNjYXBlL0pTTlBNZXRob2QuY3BwOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1
Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcDoKKwogMjAxNC0wNy0zMCAgQ2FybG9zIEdhcmNp
YSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gUkVHUkVTU0lP
TihyMTcxNzQyKTogVGVzdCAvd2Via2l0Mi9XZWJLaXRXZWJWaWV3L2Rpc2FsbG93LW1vZGFsLWRp
YWxvZ3MgZmFpbHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9OZXRzY2FwZS9KU05QTWV0aG9kLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1
Z2lucy9OZXRzY2FwZS9KU05QTWV0aG9kLmNwcAppbmRleCA1NzZhZDNmLi4yMTQ4MzhjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE1l
dGhvZC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBl
L0pTTlBNZXRob2QuY3BwCkBAIC00Myw3ICs0Myw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoSlNOUE1ldGhvZCk7CiAKLWNv
bnN0IENsYXNzSW5mbyBKU05QTWV0aG9kOjpzX2luZm8gPSB7ICJOUE1ldGhvZCIsICZJbnRlcm5h
bEZ1bmN0aW9uOjpzX2luZm8sIDAsIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNOUE1ldGhvZCkg
fTsKK2NvbnN0IENsYXNzSW5mbyBKU05QTWV0aG9kOjpzX2luZm8gPSB7ICJOUE1ldGhvZCIsICZJ
bnRlcm5hbEZ1bmN0aW9uOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNOUE1ldGhv
ZCkgfTsKIAogSlNOUE1ldGhvZDo6SlNOUE1ldGhvZChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgTlBJZGVudGlmaWVyIG5wSWRlbnRpZmllcikKICAg
ICA6IEludGVybmFsRnVuY3Rpb24oZ2xvYmFsT2JqZWN0LT52bSgpLCBzdHJ1Y3R1cmUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9i
amVjdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNO
UE9iamVjdC5jcHAKaW5kZXggMWFjNmZkYS4uY2VkOTMyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcApA
QCAtNTUsNyArNTUsNyBAQCBzdGF0aWMgTlBJZGVudGlmaWVyIG5wSWRlbnRpZmllckZyb21JZGVu
dGlmaWVyKFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0
PE5QSWRlbnRpZmllcj4oSWRlbnRpZmllclJlcDo6Z2V0KG5hbWUudXRmOCgpLmRhdGEoKSkpOwog
fQogCi1jb25zdCBDbGFzc0luZm8gSlNOUE9iamVjdDo6c19pbmZvID0geyAiTlBPYmplY3QiLCAm
QmFzZTo6c19pbmZvLCAwLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBPYmplY3QpIH07Citj
b25zdCBDbGFzc0luZm8gSlNOUE9iamVjdDo6c19pbmZvID0geyAiTlBPYmplY3QiLCAmQmFzZTo6
c19pbmZvLCAwLCBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTTlBPYmplY3QpIH07CiAKIEpTTlBPYmpl
Y3Q6OkpTTlBPYmplY3QoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgU3RydWN0dXJlKiBz
dHJ1Y3R1cmUsIE5QUnVudGltZU9iamVjdE1hcCogb2JqZWN0TWFwLCBOUE9iamVjdCogbnBPYmpl
Y3QpCiAgICAgOiBKU0Rlc3RydWN0aWJsZU9iamVjdChnbG9iYWxPYmplY3QtPnZtKCksIHN0cnVj
dHVyZSkK
</data>
<flag name="commit-queue"
          id="260342"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>