<?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>148689</bug_id>
          
          <creation_ts>2015-09-01 14:44:04 -0700</creation_ts>
          <short_desc>[ES6] Enable ES6 Module in JSC shell by default</short_desc>
          <delta_ts>2015-09-06 20:10:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>148053</dependson>
    
    <dependson>148705</dependson>
          <blocked>147340</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>ossy</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1122651</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-01 14:44:04 -0700</bug_when>
    <thetext>Since the entry point to evaluate the modules are completely separated from the usual entry point to evaluate the script,
we can safely enable ES6 modules in JSC shell.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1122913</commentid>
    <comment_count>1</comment_count>
      <attachid>260439</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-02 14:27:14 -0700</bug_when>
    <thetext>Created attachment 260439
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1122914</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-02 14:27:40 -0700</bug_when>
    <thetext>This patch is based on the https://bugs.webkit.org/show_bug.cgi?id=148705 and https://bugs.webkit.org/show_bug.cgi?id=148053.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123358</commentid>
    <comment_count>3</comment_count>
      <attachid>260571</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-03 23:29:58 -0700</bug_when>
    <thetext>Created attachment 260571
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123630</commentid>
    <comment_count>4</comment_count>
      <attachid>260571</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-09-04 14:24:41 -0700</bug_when>
    <thetext>Comment on attachment 260571
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123907</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-05 00:44:45 -0700</bug_when>
    <thetext>Committed r189431: &lt;http://trac.webkit.org/changeset/189431&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123924</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-09-05 06:39:22 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Committed r189431: &lt;http://trac.webkit.org/changeset/189431&gt;

There are 162 failures on the Apple Windows buildbots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123931</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-05 09:12:00 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; Committed r189431: &lt;http://trac.webkit.org/changeset/189431&gt;
&gt; 
&gt; There are 162 failures on the Apple Windows buildbots.

I&apos;ll look into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123938</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-05 09:20:52 -0700</bug_when>
    <thetext>Ah, ok. I&apos;ve found the problem.
Now, we specify the module path with UNIX path separator like,

`import A from &quot;A/main.js&quot;`.

We already represents the current path with `\\` style.
However, when concatenating the current path + the module path,
we did not convert the module path to `\\` style.
This causes the incorrect path like,

`C:\cygwin\home\buildbot\slave\win-debug-tests\build\WebKitBuild\Debug\bin32\jsc-stress-results\.tests\modules.yaml\modules\im\./resources/assert.js`

I&apos;ll submit the unreviewed attempt to fix patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123975</commentid>
    <comment_count>9</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-05 14:07:34 -0700</bug_when>
    <thetext>The incorrect path peoblem seems solved.
But it seems that the current working directory path seems truncated.
I&apos;ll now checking...
(I guess it is due to too long path name)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1123983</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-05 15:23:39 -0700</bug_when>
    <thetext>OK, the problem is,
the max path of the Windows is limited and short (260),
Modules in JSC shell uses an absolute path as an unique key to each module, so files are opened by an absolute path. Do, when getting the current working directory, the path is truncated.
Now in the meantime, we will skip them in Windows.
Later, I&apos;ll fix the problem and enable the tests in Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1124067</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-09-06 20:10:41 -0700</bug_when>
    <thetext>Committed r189453: &lt;http://trac.webkit.org/changeset/189453&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260439</attachid>
            <date>2015-09-02 14:27:14 -0700</date>
            <delta_ts>2015-09-03 23:29:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148689-20150902142714.patch</filename>
            <type>text/plain</type>
            <size>83662</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg5MjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
MjIyN2UwZTI1Y2FkNTIwMTIxYjEwYmMwNGI2YTQ5NjIyNDE0YzM5Li5hOTc0MTQ3OWNkNTk4ODJk
MmMxNWVhMTlkYTY3MzNhMmIyNGQyNjU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwxNTEgQEAKIDIwMTUtMDktMDIgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFp
bC5jb20+CiAKKyAgICAgICAgW0VTNl0gRW5hYmxlIEVTNiBNb2R1bGUgaW4gSlNDIHNoZWxsIGJ5
IGRlZmF1bHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0ODY4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEVuYWJsZSBFUzYgTW9kdWxlcyBpbiBKU0Mgc2hlbGwgYnkgZGVmYXVsdC4gQ29tcGlsZSB0aW1l
IGZsYWcgaXMgbGVmdCBmb3IgV2ViQ29yZS4KKyAgICAgICAgU2luY2UgdGhlIGVudHJ5IHBvaW50
IHRvIGV2YWx1YXRlIHRoZSBtb2R1bGVzIGFyZSBjb21wbGV0ZWx5IHNlcGFyYXRlZCBmcm9tIHRo
ZSB1c3VhbAorICAgICAgICBlbnRyeSBwb2ludCB0byBldmFsdWF0ZSB0aGUgc2NyaXB0LCB3ZSBj
YW4gc2FmZWx5IGVuYWJsZSBFUzYgbW9kdWxlcyBpbiBKU0Mgc2hlbGwuCisKKyAgICAgICAgQW5k
IGFkZCBidW5jaCBvZiB0ZXN0cyBmb3IgRVM2IE1vZHVsZXMuCisKKyAgICAgICAgKiBqc2MuY3Bw
OgorICAgICAgICAoR2xvYmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChmdW5j
dGlvbkxvYWRNb2R1bGUpOgorICAgICAgICAocnVuV2l0aFNjcmlwdHMpOgorICAgICAgICAocHJp
bnRVc2FnZVN0YXRlbWVudCk6IERlbGV0ZWQuCisgICAgICAgIChDb21tYW5kTGluZTo6cGFyc2VB
cmd1bWVudHMpOiBEZWxldGVkLgorICAgICAgICAqIHBhcnNlci9QYXJzZXIuY3BwOgorICAgICAg
ICAoSlNDOjpQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcik6IERlbGV0ZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy55YW1sOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2Fs
aWFzaW5nLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5r
LTIuanM6IEFkZGVkLgorICAgICAgICAoZXhwb3J0LmxldC5DYXBwdWNjaW5vLnN0cmluZ19hcHBl
YXJlZF9oZXJlLmV4cG9ydC5jaGFuZ2VDYXBwdWNjaW5vKToKKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2FsaWFzaW5nL2RyaW5rLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5jaGFuZ2VDb2Nv
YSk6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6LmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6
LzIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZGVmYXVsdC1lcnJvci9tYWlu
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNs
aWMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy8xLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRl
ci1jeWNsaWMvMTAuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLWN5Y2xpYy8xMS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItY3ljbGljLzIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMv
ZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8zLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzUuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy82LmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNy5qczogQWRkZWQuCisgICAg
ICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzguanM6IEFkZGVkLgor
ICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy85LmpzOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8xLmpzOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMTAuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8yLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMy5qczog
QWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzQuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy81Lmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNi5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzcu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy84
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcv
OS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGVw
dGguanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRl
cHRoLzEuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWRlcHRoLzIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9y
ZGVyLWRlcHRoLzMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXNlbGYuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXNpYmxpbmcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLXNpYmxpbmcvMS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItc2libGluZy8yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvMS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMC5qczogQWRkZWQuCisgICAgICAgICog
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMS5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8yLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzMuanM6IEFkZGVkLgorICAg
ICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNC5qczogQWRkZWQuCisg
ICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS81LmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzYuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNy5qczogQWRk
ZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS84LmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzkuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9BLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9CLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9tYWluLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4cG9ydGVkLWZ1bmN0aW9uLW1heS1i
ZS1jYWxsZWQtYmVmb3JlLW1vZHVsZS1pcy1leGVjdXRlZC5qczogQWRkZWQuCisgICAgICAgICog
dGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1
bGUtaXMtZXhlY3V0ZWQvMS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leHBv
cnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQvMi5q
czogQWRkZWQuCisgICAgICAgIChleHBvcnQuYWRkKToKKyAgICAgICAgKGV4cG9ydC5yYWlzZSk6
CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMtMS5qczogQWRk
ZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFtYmlndW91
cy0yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBv
cnQtYW1iaWd1b3VzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1l
cnJvci9leHBvcnQtZGVmYXVsdC1mcm9tLXN0YXItMi5qczogQWRkZWQuCisgICAgICAgIChleHBv
cnQuZGVmYXVsdC5Db2NvYSk6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3Iv
ZXhwb3J0LWRlZmF1bHQtZnJvbS1zdGFyLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtbm90LWZvdW5kLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9pbXBvcnQtYW1iaWd1b3VzLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9pbXBvcnQtZGVmYXVsdC1mcm9tLXN0
YXIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9y
dC1ub3QtZm91bmQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW1wb3J0ZWQt
YmluZGluZ3MtYXJlLWltbXV0YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxl
cy9pbXBvcnRlZC1iaW5kaW5ncy1hcmUtaW1tdXRhYmxlL2JpbmRpbmdzLmpzOiBBZGRlZC4KKyAg
ICAgICAgKGV4cG9ydC5mdW5jdGlvbkRlY2xhcmF0aW9uKToKKyAgICAgICAgKGV4cG9ydC5jbGFz
c0RlY2xhcmF0aW9uKToKKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJpbmRpbmdz
LWNhbi1iZS1jaGFuZ2VkLWluLW9yaWdpbmFsLW1vZHVsZS5qczogQWRkZWQuCisgICAgICAgICog
dGVzdHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5h
bC1tb2R1bGUvYmluZGluZ3MuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW5k
aXJlY3QtZXhwb3J0LWVycm9yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2lu
ZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtYW1iaWd1b3VzLTIuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0
LWV4cG9ydC1hbWJpZ3VvdXMtMy5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9p
bmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy00LmpzOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVj
dC1leHBvcnQtYW1iaWd1b3VzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2lu
ZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1l
eHBvcnQtZGVmYXVsdC0zLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5kZWZhdWx0LkNvY29h
KToKKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVj
dC1leHBvcnQtZGVmYXVsdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbmRp
cmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0yLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1l
eHBvcnQtbm90LWZvdW5kLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL21vZHVs
ZS1pcy1zdHJpY3QtY29kZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1l
c3BhY2UtYW1iaWd1b3VzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVz
cGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21v
ZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtMy5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy00LmpzOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3Vz
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci5qczog
QWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNl
LWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktMi5qczogQWRkZWQuCisg
ICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVy
cm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktMy5qczogQWRkZWQuCisgICAgICAgICog
dGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3Vs
ZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWds
b2JhbC1hbWJpZ3VpdHktNS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1l
c3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJp
Z3VpdHktNi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJy
b3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNy5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNw
YWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHkuanM6IEFkZGVkLgor
ICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L0EuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei9CLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5s
YXRlcik6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L21haW4uanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9hZGRpdGlvbmFsLWRyaW5rLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9kcmluay5qczogQWRkZWQuCisgICAg
ICAgIChleHBvcnQuZGVmYXVsdC5jaGFuZ2VDYXBwdWNjaW5vKToKKyAgICAgICAgKiB0ZXN0cy9t
b2R1bGVzL25hbWVzcGFjZS9tb3JlLWFkZGl0aW9uYWwtZHJpbmsuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3RzL21vZHVsZXMvcmVzb3VyY2VzL2Fzc2VydC5qczogQWRkZWQuCisgICAgICAgIChl
eHBvcnQuc2hvdWxkQmUpOgorICAgICAgICAoZXhwb3J0LnNob3VsZFRocm93KToKKyAgICAgICAg
KiB0ZXN0cy9tb2R1bGVzL3Njb3Blcy5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxl
cy9zY29wZXMvYWRkaXRpb25hbC1kcmluay5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9zY29wZXMvZHJpbmsuanM6IEFkZGVkLgorICAgICAgICAoZXhwb3J0LmRlZmF1bHQuY2hh
bmdlQ2FwcHVjY2lubyk6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9zY29wZXMvbW9yZS1hZGRp
dGlvbmFsLWRyaW5rLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL3RoaXMtc2hv
dWxkLWJlLXVuZGVmaW5lZC5qczogQWRkZWQuCisKKzIwMTUtMDktMDIgIFl1c3VrZSBTdXp1a2kg
IDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKICAgICAgICAgW0VTNl0gSW1wbGVtZW50IE1vZHVs
ZU5hbWVzcGFjZU9iamVjdAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTQ4NzA1CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2Mu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggNzRjYjMzMTNlYWRiMDE0
OGFhYjI4YWIyODUwMzI1ZWFhNWExZmUxNy4uODBhZjc4MTQ0MGJlY2Q2MDI2NzJhYTBhMzdmMzAz
YTliODZjN2Y2MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTQ5OSw5ICs0OTksOCBAQCBzdGF0
aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbkRyYWluTWljcm90YXNrcyhF
eGVjU3RhdGUqKTsKICNpZiBFTkFCTEUoV0VCQVNTRU1CTFkpCiBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbkxvYWRXZWJBc3NlbWJseShFeGVjU3RhdGUqKTsKICNl
bmRpZgotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGZ1bmN0aW9uTG9hZE1vZHVsZShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uQ2hlY2tNb2R1bGVTeW50YXgoRXhlY1N0YXRl
Kik7Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTQU1QTElOR19GTEFHUykKIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uU2V0U2FtcGxpbmdGbGFncyhFeGVjU3RhdGUq
KTsKQEAgLTY3OCw5ICs2NzcsOCBAQCBjbGFzcyBHbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNHbG9i
YWxPYmplY3QgewogI2lmIEVOQUJMRShXRUJBU1NFTUJMWSkKICAgICAgICAgYWRkRnVuY3Rpb24o
dm0sICJsb2FkV2ViQXNzZW1ibHkiLCBmdW5jdGlvbkxvYWRXZWJBc3NlbWJseSwgMSk7CiAjZW5k
aWYKLSNpZiBFTkFCTEUoRVM2X01PRFVMRVMpCisgICAgICAgIGFkZEZ1bmN0aW9uKHZtLCAibG9h
ZE1vZHVsZSIsIGZ1bmN0aW9uTG9hZE1vZHVsZSwgMSk7CiAgICAgICAgIGFkZEZ1bmN0aW9uKHZt
LCAiY2hlY2tNb2R1bGVTeW50YXgiLCBmdW5jdGlvbkNoZWNrTW9kdWxlU3ludGF4LCAxKTsKLSNl
bmRpZgogCiAgICAgICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9i
YWxFeGVjKCksIDApOwogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGFyZ3VtZW50cy5z
aXplKCk7ICsraSkKQEAgLTEzNjAsNyArMTM1OCwzMCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGZ1bmN0aW9uTG9hZFdlYkFzc2VtYmx5KEV4ZWNTdGF0ZSogZXhlYykKIH0KICNlbmRp
ZgogCi0jaWYgRU5BQkxFKEVTNl9NT0RVTEVTKQorRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBmdW5jdGlvbkxvYWRNb2R1bGUoRXhlY1N0YXRlKiBleGVjKQoreworICAgIFN0cmluZyBmaWxl
TmFtZSA9IGV4ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVjKTsKKyAg
ICBWZWN0b3I8Y2hhcj4gc2NyaXB0OworICAgIGlmICghZmlsbEJ1ZmZlcldpdGhDb250ZW50c09m
RmlsZShmaWxlTmFtZSwgc2NyaXB0KSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShl
eGVjLT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZUVycm9yKGV4ZWMsIEFTQ0lJTGl0
ZXJhbCgiQ291bGQgbm90IG9wZW4gZmlsZS4iKSkpKTsKKworICAgIEpTSW50ZXJuYWxQcm9taXNl
KiBwcm9taXNlID0gZXZhbHVhdGVNb2R1bGUoZXhlYywgZmlsZU5hbWUpOworICAgIGlmIChleGVj
LT5oYWRFeGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVm
aW5lZCgpKTsKKworICAgIEpTVmFsdWUgZXJyb3I7CisgICAgSlNGdW5jdGlvbiogZXJyb3JIYW5k
bGVyID0gSlNOYXRpdmVTdGRGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCksIGV4ZWMtPmxleGlj
YWxHbG9iYWxPYmplY3QoKSwgMSwgU3RyaW5nKCksIFsmXShFeGVjU3RhdGUqIGV4ZWMpIHsKKyAg
ICAgICAgZXJyb3IgPSBleGVjLT5hcmd1bWVudCgwKTsKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKKyAgICB9KTsKKworICAgIHByb21pc2UtPnRoZW4oZXhl
YywgbnVsbHB0ciwgZXJyb3JIYW5kbGVyKTsKKyAgICBleGVjLT52bSgpLmRyYWluTWljcm90YXNr
cygpOworICAgIGlmIChlcnJvcikKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShleGVj
LT52bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGVycm9yKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FM
TCBmdW5jdGlvbkNoZWNrTW9kdWxlU3ludGF4KEV4ZWNTdGF0ZSogZXhlYykKIHsKICAgICBTdHJp
bmcgc291cmNlID0gZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYyktPnZhbHVlKGV4ZWMp
OwpAQCAtMTM3Niw3ICsxMzk3LDYgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5j
dGlvbkNoZWNrTW9kdWxlU3ludGF4KEV4ZWNTdGF0ZSogZXhlYykKICAgICAgICAgZXhlYy0+dm0o
KS50aHJvd0V4Y2VwdGlvbihleGVjLCBqc05vbnRyaXZpYWxTdHJpbmcoZXhlYywgdG9TdHJpbmco
IlN5bnRheEVycm9yOiAiLCBlcnJvci5tZXNzYWdlKCksICI6IiwgZXJyb3IubGluZSgpKSkpOwog
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNOdW1iZXIoc3RvcFdhdGNoLmdldEVsYXBzZWRN
UygpKSk7CiB9Ci0jZW5kaWYKIAogLy8gVXNlIFNFSCBmb3IgUmVsZWFzZSBidWlsZHMgb25seSB0
byBnZXQgcmlkIG9mIHRoZSBjcmFzaCByZXBvcnQgZGlhbG9nCiAvLyAobHVja2lseSB0aGUgc2Ft
ZSB0ZXN0cyBmYWlsIGluIFJlbGVhc2UgYW5kIERlYnVnIGJ1aWxkcyBzbyBmYXIpLiBOZWVkIHRv
CkBAIC0xNTA0LDMxICsxNTI0LDIzIEBAIHN0YXRpYyBib29sIHJ1bldpdGhTY3JpcHRzKEdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBWZWN0b3I8U2NyaXB0PiYgc2NyCiAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGJvb2wgc3VjY2VzcyA9IHRydWU7CiAKLSNp
ZiBFTkFCTEUoRVM2X01PRFVMRVMpCiAgICAgSlNGdW5jdGlvbiogZXJyb3JIYW5kbGVyID0gSlNO
YXRpdmVTdGRGdW5jdGlvbjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsIFN0cmluZygpLCBb
Jl0oRXhlY1N0YXRlKiBleGVjKSB7CiAgICAgICAgIHN1Y2Nlc3MgPSBmYWxzZTsKICAgICAgICAg
ZHVtcEV4Y2VwdGlvbihnbG9iYWxPYmplY3QsIGV4ZWMtPmFyZ3VtZW50KDApKTsKICAgICAgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKICAgICB9KTsKLSNlbmRpZgog
CiAjaWYgRU5BQkxFKFNBTVBMSU5HX0ZMQUdTKQogICAgIFNhbXBsaW5nRmxhZ3M6OnN0YXJ0KCk7
CiAjZW5kaWYKIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2NyaXB0cy5zaXplKCk7IGkr
KykgewotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKICAgICAgICAgSlNJbnRlcm5hbFByb21pc2Uq
IHByb21pc2UgPSBudWxscHRyOwotI2VuZGlmCiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmlzRmls
ZSkgewogICAgICAgICAgICAgZmlsZU5hbWUgPSBzY3JpcHRzW2ldLmFyZ3VtZW50OwotICAgICAg
ICAgICAgaWYgKG1vZHVsZSkgewotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKKyAgICAgICAgICAg
IGlmIChtb2R1bGUpCiAgICAgICAgICAgICAgICAgcHJvbWlzZSA9IGV2YWx1YXRlTW9kdWxlKGds
b2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpLCBmaWxlTmFtZSk7Ci0jZWxzZQotICAgICAgICAgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZW5kaWYKLSAgICAgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAoIWZpbGxCdWZm
ZXJXaXRoQ29udGVudHNPZkZpbGUoZmlsZU5hbWUsIHNjcmlwdEJ1ZmZlcikpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsgLy8gZmFpbCBlYXJseSBzbyB3ZSBjYW4gY2F0Y2ggbWlz
c2luZyBmaWxlcwogICAgICAgICAgICAgICAgIHNjcmlwdCA9IHNjcmlwdEJ1ZmZlci5kYXRhKCk7
CkBAIC0xNTQxLDE1ICsxNTUzLDExIEBAIHN0YXRpYyBib29sIHJ1bldpdGhTY3JpcHRzKEdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBjb25zdCBWZWN0b3I8U2NyaXB0PiYgc2NyCiAgICAgICAg
IHZtLnN0YXJ0U2FtcGxpbmcoKTsKIAogICAgICAgICBpZiAobW9kdWxlKSB7Ci0jaWYgRU5BQkxF
KEVTNl9NT0RVTEVTKQogICAgICAgICAgICAgaWYgKCFwcm9taXNlKQogICAgICAgICAgICAgICAg
IHByb21pc2UgPSBldmFsdWF0ZU1vZHVsZShnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKSwganNj
U291cmNlKHNjcmlwdCwgZmlsZU5hbWUpKTsKICAgICAgICAgICAgIGdsb2JhbE9iamVjdC0+Z2xv
YmFsRXhlYygpLT5jbGVhckV4Y2VwdGlvbigpOwogICAgICAgICAgICAgcHJvbWlzZS0+dGhlbihn
bG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKSwgbnVsbHB0ciwgZXJyb3JIYW5kbGVyKTsKICAgICAg
ICAgICAgIGdsb2JhbE9iamVjdC0+dm0oKS5kcmFpbk1pY3JvdGFza3MoKTsKLSNlbHNlCi0gICAg
ICAgICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwotI2VuZGlmCiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBOYWtlZFB0cjxFeGNlcHRpb24+IGV2YWx1YXRpb25FeGNlcHRp
b247CiAgICAgICAgICAgICBKU1ZhbHVlIHJldHVyblZhbHVlID0gZXZhbHVhdGUoZ2xvYmFsT2Jq
ZWN0LT5nbG9iYWxFeGVjKCksIGpzY1NvdXJjZShzY3JpcHQsIGZpbGVOYW1lKSwgSlNWYWx1ZSgp
LCBldmFsdWF0aW9uRXhjZXB0aW9uKTsKQEAgLTE2NDgsOSArMTY1Niw3IEBAIHN0YXRpYyBOT19S
RVRVUk4gdm9pZCBwcmludFVzYWdlU3RhdGVtZW50KGJvb2wgaGVscCA9IGZhbHNlKQogICAgIGZw
cmludGYoc3RkZXJyLCAiICAtZiAgICAgICAgIFNwZWNpZmllcyBhIHNvdXJjZSBmaWxlIChkZXBy
ZWNhdGVkKVxuIik7CiAgICAgZnByaW50ZihzdGRlcnIsICIgIC1ofC0taGVscCAgUHJpbnRzIHRo
aXMgaGVscCBtZXNzYWdlXG4iKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIiAgLWkgICAgICAgICBF
bmFibGVzIGludGVyYWN0aXZlIG1vZGUgKGRlZmF1bHQgaWYgbm8gZmlsZXMgYXJlIHNwZWNpZmll
ZClcbiIpOwotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKICAgICBmcHJpbnRmKHN0ZGVyciwgIiAg
LW0gICAgICAgICBFeGVjdXRlIGFzIGEgbW9kdWxlXG4iKTsKLSNlbmRpZgogI2lmIEhBVkUoU0lH
TkFMX0gpCiAgICAgZnByaW50ZihzdGRlcnIsICIgIC1zICAgICAgICAgSW5zdGFsbHMgc2lnbmFs
IGhhbmRsZXJzIHRoYXQgZXhpdCBvbiBhIGNyYXNoIChVbml4IHBsYXRmb3JtcyBvbmx5KVxuIik7
CiAjZW5kaWYKQEAgLTE3MDIsMTIgKzE3MDgsMTAgQEAgdm9pZCBDb21tYW5kTGluZTo6cGFyc2VB
cmd1bWVudHMoaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogICAgICAgICAgICAgbV9wcm9maWxlck91
dHB1dCA9IGFyZ3ZbaV07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotI2lmIEVO
QUJMRShFUzZfTU9EVUxFUykKICAgICAgICAgaWYgKCFzdHJjbXAoYXJnLCAiLW0iKSkgewogICAg
ICAgICAgICAgbV9tb2R1bGUgPSB0cnVlOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
IH0KLSNlbmRpZgogICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItcyIpKSB7CiAjaWYgSEFWRShT
SUdOQUxfSCkKICAgICAgICAgICAgIHNpZ25hbChTSUdJTEwsIF9leGl0KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCA3ZjA1MDFjNjUzMTJkYjRkNGZmODVkYzRk
YjEzYWYyNjMxZGRlYzYyLi5jMDlkNTQwNzk1NGFlMWQwNmNlODE2NTQzMTdmNzZlOThjNDMzNjE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC0yNjksMTAgKzI2
OSw4IEBAIFN0cmluZyBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcihjb25zdCBJZGVudGlm
aWVyJiBjYWxsZWVOYW1lLCBTb3VyY2VQYXJzZU1vCiAgICAgaWYgKCFoYXNFcnJvcigpKSB7CiAg
ICAgICAgIGlmIChpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbikKICAgICAgICAgICAgIHNv
dXJjZUVsZW1lbnRzID0gcGFyc2VBcnJvd0Z1bmN0aW9uU2luZ2xlRXhwcmVzc2lvbkJvZHlTb3Vy
Y2VFbGVtZW50cyhjb250ZXh0KTsKLSNpZiBFTkFCTEUoRVM2X01PRFVMRVMpCiAgICAgICAgIGVs
c2UgaWYgKGlzTW9kdWxlUGFyc2VNb2RlKHBhcnNlTW9kZSkpCiAgICAgICAgICAgICBzb3VyY2VF
bGVtZW50cyA9IHBhcnNlTW9kdWxlU291cmNlRWxlbWVudHMoY29udGV4dCwgcGFyc2VNb2RlKTsK
LSNlbmRpZgogICAgICAgICBlbHNlCiAgICAgICAgICAgICBzb3VyY2VFbGVtZW50cyA9IHBhcnNl
U291cmNlRWxlbWVudHMoY29udGV4dCwgQ2hlY2tGb3JTdHJpY3RNb2RlKTsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy55YW1sIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMueWFtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYjQ3OGYxZjY0
NDlhMTJmZWU4ZDRjNjFmNTI5MDBiNWQwODljNWFmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMueWFtbApAQCAtMCwwICsxLDI1IEBACisjIENv
cHlyaWdodCAoQykgMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMKKyMgMS4gIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisjIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJV
VE9SUyAiQVMgSVMiIEFORCBBTlkKKyMgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkKKyMgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyMgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GCisjIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKy0gcGF0aDogbW9kdWxlcworICBjbWQ6IHJ1bk1v
ZHVsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Fs
aWFzaW5nLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvYWxpYXNpbmcu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uY2Y1ZTNlZWU0Nzk1ODkyOTIzMzM0NjRlMjI5ZGM4OWQ1Mjc2NjEwYgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Fs
aWFzaW5nLmpzCkBAIC0wLDAgKzEsMTggQEAKK2ltcG9ydCB7IENvY29hIGFzIERyaW5rLCBjaGFu
Z2VDb2NvYSwgU3ViRHJpbmssIGNoYW5nZUNhcHB1Y2Npbm8gfSBmcm9tICIuL2FsaWFzaW5nL2Ry
aW5rLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9yZXNvdXJj
ZXMvYXNzZXJ0LmpzIjsKKworc2hvdWxkQmUoRHJpbmssICJDb2NvYSIpOworc2hvdWxkQmUoU3Vi
RHJpbmssICJDYXBwdWNjaW5vIik7CitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgQ29jb2EKK30s
IGBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogQ29jb2FgKTsKKworc2hvdWxk
VGhyb3coKCkgPT4geworICAgIENhcHB1Y2Npbm8KK30sIGBSZWZlcmVuY2VFcnJvcjogQ2FuJ3Qg
ZmluZCB2YXJpYWJsZTogQ2FwcHVjY2lub2ApOworCitjaGFuZ2VDb2NvYSgiTW9jaGEiKTsKK3No
b3VsZEJlKERyaW5rLCAiTW9jaGEiKTsKKworY2hhbmdlQ2FwcHVjY2lubygiTWF0Y2hhIik7Citz
aG91bGRCZShTdWJEcmluaywgIk1hdGNoYSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvYWxpYXNpbmcvZHJpbmstMi5qcyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5rLTIuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTkw
YWM4YmZkMDYxYjBkZmIzMTMyMWQ3Mzg1YzRkODQxNGM1Y2RlNQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5rLTIuanMK
QEAgLTAsMCArMSw1IEBACitleHBvcnQgbGV0IENhcHB1Y2Npbm8gPSAiQ2FwcHVjY2lubyIKKwor
ZXhwb3J0IGZ1bmN0aW9uIGNoYW5nZUNhcHB1Y2Npbm8odmFsdWUpIHsKKyAgICBDYXBwdWNjaW5v
ID0gdmFsdWU7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9hbGlhc2luZy9kcmluay5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2FsaWFzaW5nL2RyaW5rLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkYTg0YTBmOGYwYWFhMGE0OTNjOWFi
MTRlNjM4NGRlZmYzMWM2NjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9hbGlhc2luZy9kcmluay5qcwpAQCAtMCwwICsxLDcgQEAKK2V4cG9y
dCBsZXQgQ29jb2EgPSAiQ29jb2EiOworZXhwb3J0IGZ1bmN0aW9uIGNoYW5nZUNvY29hKHZhbHVl
KSB7CisgICAgQ29jb2EgPSB2YWx1ZTsKK30KKworaW1wb3J0IHsgQ2FwcHVjY2lubyBhcyBTdWJE
cmluaywgY2hhbmdlQ2FwcHVjY2lubyB9IGZyb20gImRyaW5rLTIuanMiCitleHBvcnQgeyBTdWJE
cmluaywgY2hhbmdlQ2FwcHVjY2lubyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6LmpzIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1wcm9kdWNlLXRkei5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xMmJhZDYwYTVhYmY3YzU3MjJhMTYzYTA4NzU0MGZmNDNjZDhiYjliCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1w
cm9kdWNlLXRkei5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCB7IENvY29hLCBDYXBwdWNjaW5v
LCBNYXRjaGEgfSBmcm9tICIuL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcyIKK2ltcG9ydCB7
IHNob3VsZEJlIH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworLy8gQWxsIHRoaW5n
cyBhcmUgYWxyZWFkeSBzZXQuCitzaG91bGRCZShDb2NvYSwgIkNvY29hIik7CitzaG91bGRCZShD
YXBwdWNjaW5vLCAiQ2FwcHVjY2lubyIpOworc2hvdWxkQmUoTWF0Y2hhLCAiTWF0Y2hhIik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5
LXByb2R1Y2UtdGR6LzEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9j
eWNsaWMtbWF5LXByb2R1Y2UtdGR6LzEuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDBjMjZmNjFiYjdhMGE2MDY0
ODgzNTNhMDZkYzY3YWQ0YTlkN2Q4YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMS5qcwpAQCAtMCww
ICsxLDEyIEBACitpbXBvcnQgeyBDYXBwdWNjaW5vLCBNYXRjaGEgfSBmcm9tICIuLzIuanMiCitp
bXBvcnQgeyBzaG91bGRUaHJvdywgc2hvdWxkQmUgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0
LmpzIjsKKworZXhwb3J0IGxldCBDb2NvYSA9ICJDb2NvYSI7CisKKy8vIG1vZHVsZSAiMiIgaXMg
bm90IGxvYWRlZCB5ZXQsIFREWi4KK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBDYXBwdWNjaW5v
OworfSwgYFJlZmVyZW5jZUVycm9yOiBDYW5ub3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFi
bGUuYCk7CisKKy8vIEJ1dCAiTWF0Y2hhIiBpcyB2YXJpYWJsZSAobm90IGxleGljYWwgdmFyaWFi
bGUpLiBJdCBpcyBhbHJlYWR5IGluaXRpYWxpemVkIGFzIHVuZGVmaW5lZC4KK3Nob3VsZEJlKE1h
dGNoYSwgdW5kZWZpbmVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yMGYxNjM5YjViYWNkYTRmZmVlNDNjMGIzN2EwZjNlOGJhMTc1ZDRkCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1wcm9k
dWNlLXRkei8yLmpzCkBAIC0wLDAgKzEsMTUgQEAKK2ltcG9ydCB7IENvY29hIH0gZnJvbSAiLi8x
LmpzIgoraW1wb3J0IHsgc2hvdWxkQmUgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsK
KworZXhwb3J0IGxldCBDYXBwdWNjaW5vID0gIkNhcHB1Y2Npbm8iOworCitleHBvcnQgdmFyIE1h
dGNoYSA9ICJNYXRjaGEiOworCisvLyAxIGlzIGFscmVhZHkgbG9hZGVkLgorc2hvdWxkQmUoQ29j
b2EsICJDb2NvYSIpOworCitzaG91bGRCZShDYXBwdWNjaW5vLCAiQ2FwcHVjY2lubyIpOworc2hv
dWxkQmUoTWF0Y2hhLCAiTWF0Y2hhIik7CisKKy8vIEluZGlyZWN0bHkgZXhwb3J0ICJDb2NvYSIK
K2V4cG9ydCB7IENvY29hIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9kZWZhdWx0LWVycm9yL21haW4uanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9kZWZhdWx0LWVycm9yL21haW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGFhYjEzNTkx
ODM2NTU4MjY4OGY1ODhjMWE5ZTUzYjE3NTY0YjQyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHQtZXJyb3IvbWFpbi5qcwpAQCAt
MCwwICsxIEBACitpbXBvcnQgIkEiOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy5qcyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZmU1MjlkZDYxMThmMTBlNDVmODk2MDhkYmIyYzc0ZWFlYTlhZDgwYgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRl
ci1jeWNsaWMuanMKQEAgLTAsMCArMSw1IEBACitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy8xMS5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsK
K2lmIChnbG9iYWwuY291bnQgIT09IDExKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVl
ICR7Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8xLmpzIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8xLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjc5MGZkOGUzZmI4ZmViOGE1ZmU0ZTk2YjRjMzlmMTg1Mzk2ZGViMmEKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItY3ljbGljLzEuanMKQEAgLTAsMCArMSw1IEBACitpbXBvcnQgIi4vMTEuanMiCit2YXIgZ2xv
YmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwuY291
bnQgIT09ICd1bmRlZmluZWQnKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xv
YmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMTAuanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGlj
LzEwLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjlkY2U1ZDNiOWE2ZTlmZjNkNmE5Njg3NTA4MDZkMjA0YjdmNmIx
NWIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9leGVjdXRpb24tb3JkZXItY3ljbGljLzEwLmpzCkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIu
LzExLmpzIgoraW1wb3J0ICIuLzkuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVy
biB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA5KQorICAgIHRocm93IG5ldyBFcnJv
cihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItY3ljbGljLzExLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhl
Y3V0aW9uLW9yZGVyLWN5Y2xpYy8xMS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMGYzY2VkYWUxODFmYjE5YzFi
OTU4NzQzNjg1NDk1YjdjM2YyM2U3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8xMS5qcwpAQCAtMCww
ICsxLDcgQEAKK2ltcG9ydCAiLi8xMC5qcyIKK2ltcG9ydCAiLi80LmpzIgorCit2YXIgZ2xvYmFs
ID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMTAp
CisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9i
YWwuY291bnQgPSAxMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMi5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
ODY4ZTZmNmFmNjQ3YmNiMjE2MjFjZGFiMWFmNTYyNmZjOThjNWZkCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy8yLmpzCkBAIC0wLDAgKzEsOCBAQAoraW1wb3J0ICIuLzExLmpzIgoraW1wb3J0ICIuLzku
anMiCitpbXBvcnQgIi4vNS5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRo
aXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDEpCisgICAgdGhyb3cgbmV3IEVycm9yKGBi
YWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAyOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy8zLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLWN5Y2xpYy8zLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczYzEwNTQwM2U4NTdhMmQ0NGFlNmExYjVi
MTM3YzJmMTE1OTNlOWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzMuanMKQEAgLTAsMCArMSw3IEBA
CitpbXBvcnQgIi4vMS5qcyIKK2ltcG9ydCAiLi8yLmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0
aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMikKKyAgICB0aHJv
dyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9
IDM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItY3ljbGljLzQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWZkMWE4OTE3MTU2
MGNhMzcwMDkwMjJlMmU1MDhjOTc3ZWRjNzZkYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNC5qcwpA
QCAtMCwwICsxLDYgQEAKK2ltcG9ydCAiLi8yLmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9u
KCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMykKKyAgICB0aHJvdyBu
ZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItY3ljbGljLzUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9leGVjdXRpb24tb3JkZXItY3ljbGljLzUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTFkZWVmOTJkMTJmNWFi
YzY4NmEzMThjMmJhYTQ5OGJmNjQ4MWU4ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNS5qcwpAQCAt
MCwwICsxLDcgQEAKK2ltcG9ydCAiMy5qcyIKK2ltcG9ydCAiNC5qcyIKKwordmFyIGdsb2JhbCA9
IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDQpCisg
ICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwu
Y291bnQgPSA1OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy82LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy82LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwNWM1
OTMxN2JmMWY1NzU2ODQzYWEwOWRjMWUxMGEwNjk4MGUyNGEKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGlj
LzYuanMKQEAgLTAsMCArMSw3IEBACitpbXBvcnQgIi4vNS5qcyIKK2ltcG9ydCAiLi85LmpzIgor
Cit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5j
b3VudCAhPT0gNSkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3Vu
dH1gKTsKK2dsb2JhbC5jb3VudCA9IDY7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzcuanMgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzcuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYmFlNmMwNTk5YTUxODk2ZTNiYmJkNjBjNTFiNmMzNzNiYjZmYTc5MAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci1jeWNsaWMvNy5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiLi82LmpzIjsKK2lt
cG9ydCAiLi85LmpzIjsKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSko
KTsKK2lmIChnbG9iYWwuY291bnQgIT09IDYpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFs
dWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSA3OwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy84
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWN5Y2xpYy84LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzYjBkYTVkZmIyZWRjM2Q0N2I2N2U5YWNiNzBjYzEy
NzhjZTI4MDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzguanMKQEAgLTAsMCArMSw2IEBACitpbXBv
cnQgIi4vNy5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsK
K2lmIChnbG9iYWwuY291bnQgIT09IDcpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUg
JHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSA4OwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy85Lmpz
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy85LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3ZWNkYzllMjMyMzJkNWI2NWExN2QzZTlmYzcxMjA5OWQw
ZWI0ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzkuanMKQEAgLTAsMCArMSw4IEBACitpbXBvcnQg
Ii4vMTEuanMiOworaW1wb3J0ICIuLzguanMiOworaW1wb3J0ICIuLzYuanMiOworCit2YXIgZ2xv
YmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0g
OCkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2ds
b2JhbC5jb3VudCA9IDk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZTdhYzdmZjlm
MmEzZmYyMmM2YmEwNWNkMzg4YWJiZGQ2M2I5MTczCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy5qcwpAQCAt
MCwwICsxLDcgQEAKKy8vIFRoaXMgdGVzdHMgdGhlIERBRy4KK2ltcG9ydCAiLi9leGVjdXRpb24t
b3JkZXItZGFnLzkuanMiCitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLWRhZy8xMC5qcyIKKwor
dmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291
bnQgIT09IDEwKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50
fWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhl
Y3V0aW9uLW9yZGVyLWRhZy8xLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRiMWMzY2M1ZDBkNjNjMGMy
OTBlM2JlNjk1ZjFkZGU2ZjEzYjczYTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzEuanMKQEAgLTAsMCAr
MSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKHR5
cGVvZiBnbG9iYWwuY291bnQgIT09ICd1bmRlZmluZWQnKQorICAgIHRocm93IG5ldyBFcnJvcihg
YmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1k
YWcvMTAuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItZGFnLzEwLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyODA0OWRlNmVkNjYwYTVlZWZjMmRlYjdmMzg5
OTQ2ZTVkMTdhZWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzEwLmpzCkBAIC0wLDAgKzEsNyBAQAoraW1w
b3J0ICIuLzguanMiCitpbXBvcnQgIi4vNy5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigi
cmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDkpCisgICAgdGhyb3cgbmV3
IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAxMDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci1kYWcvMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
ZWN1dGlvbi1vcmRlci1kYWcvMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZjUzYmQ4NTA3NjM5MjkwYjY0YjZh
ZDMyNjE1MmVjMTkzNDQ0ODA1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8yLmpzCkBAIC0wLDAgKzEsNiBA
QAoraW1wb3J0ICIuLzEuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhp
cyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMSkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJh
ZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDI7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFn
LzMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItZGFnLzMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjI1ZWI0ODY4YWUyMTAwODk5ZjA2OGJkOGJiMDYyMzdk
OGNkMWFlOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMy5qcwpAQCAtMCwwICsxLDYgQEAKK2ltcG9ydCAi
Li8yLmpzIjsKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lm
IChnbG9iYWwuY291bnQgIT09IDIpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtn
bG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy80LmpzIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy80Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjliZGFlNDlkOWQwMzlkMTZkMWM5YmNlZDNkYjI0YmIyZDViNTRjZDgKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItZGFnLzQuanMKQEAgLTAsMCArMSw2IEBACitpbXBvcnQgIi4vMS5qcyIKKwor
dmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291
bnQgIT09IDMpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9
YCk7CitnbG9iYWwuY291bnQgPSA0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy81LmpzIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy81LmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmEzM2I2M2NmNTRjYTdlNTkzYzNiYjcxYTA2OTdmNmI4NTk2M2JlYzUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXIt
ZGFnLzUuanMKQEAgLTAsMCArMSw3IEBACitpbXBvcnQgIjQuanMiCitpbXBvcnQgIjEuanMiCisK
K3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNv
dW50ICE9PSA0KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50
fWApOworZ2xvYmFsLmNvdW50ID0gNTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNi5qcyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNi5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44NjEzZTcxMmI4Nzc5MGM2MWMzZmVmOWFlYTBiNGIxYmM5NDRlMjJlCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWRhZy82LmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzUuanMiCisKK3ZhciBnbG9iYWwg
PSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA1KQor
ICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFs
LmNvdW50ID0gNjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYjhlOWEwNjNm
NGU5NGFjNmQ4NmQwOGVjNmZhMjQxMmEyY2Y4ZGNmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy83LmpzCkBA
IC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzYuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9u
KCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gNikKKyAgICB0aHJvdyBu
ZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDc7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItZGFnLzguanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItZGFnLzguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjNlM2I1ZjQ5OTIyODRhODkxY2Fh
YTRjYzNiYTA2NDYyZmI3Mjg3OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvOC5qcwpAQCAtMCwwICsxLDcg
QEAKK2ltcG9ydCAiLi8zLmpzIgoraW1wb3J0ICIuLzcuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1
bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gNykKKyAgICB0
aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3Vu
dCA9IDg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItZGFnLzkuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjMyZTQyNWEyMmY4OTI1
NGVjMjE4OGI0MzAwMTI4NDA5MDA2MzNiZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvOS5qcwpAQCAtMCww
ICsxLDYgQEAKK2ltcG9ydCAiLi84LmpzIjsKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0
dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDgpCisgICAgdGhyb3cgbmV3IEVy
cm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSA5OwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9y
ZGVyLWRlcHRoLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLWRlcHRoLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyZTg5ZmQ4YjRjNDJjNDc5NDIzZWM5Yjlh
MjA1OTJhZDgxMjU4ZGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGVwdGguanMKQEAgLTAsMCArMSw1IEBACitp
bXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLWRlcHRoLzMuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVu
Y3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAzKQorICAgIHRo
cm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRo
LzEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItZGVwdGgvMS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YjFjM2NjNWQwZDYzYzBjMjkwZTNiZTY5NWYxZGRl
NmYxM2I3M2EzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLzEuanMKQEAgLTAsMCArMSw0IEBACit2YXIg
Z2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwu
Y291bnQgIT09ICd1bmRlZmluZWQnKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7
Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8yLmpzIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRo
LzIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uY2Y1M2JkODUwNzYzOTI5MGI2NGI2YWQzMjYxNTJlYzE5MzQ0NDgw
NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8yLmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzEu
anMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGds
b2JhbC5jb3VudCAhPT0gMSkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2Jh
bC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGVwdGgvMy5qcyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8zLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmIyNWViNDg2OGFlMjEwMDg5OWYwNjhiZDhiYjA2MjM3ZDhjZDFhZTgKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItZGVwdGgvMy5qcwpAQCAtMCwwICsxLDYgQEAKK2ltcG9ydCAiLi8yLmpzIjsK
KwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwu
Y291bnQgIT09IDIpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291
bnR9YCk7CitnbG9iYWwuY291bnQgPSAzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNlbGYuanMgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2VsZi5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NjVkOTAzZDA1ODdiMWU3NDNmMGYxYzQ4MzFhMTA5N2Q2OTUwMDU5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXNlbGYuanMKQEAgLTAsMCArMSw2IEBACitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLXNlbGYu
anMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAodHlw
ZW9mIGdsb2JhbC5jb3VudCAhPT0gJ3VuZGVmaW5lZCcpCisgICAgdGhyb3cgbmV3IEVycm9yKGBi
YWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAxOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNp
YmxpbmcuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItc2libGluZy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NTJlZGIxMDU0YTg3ZjJkMWI4Y2I5YjgyMzY0
ODBiYWM5MmJkMDY0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcuanMKQEAgLTAsMCArMSw3IEBACitp
bXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcvMS5qcyIKK2ltcG9ydCAiLi9leGVjdXRp
b24tb3JkZXItc2libGluZy8yLmpzIgoraW1wb3J0ICIuL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5n
LzMuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAo
Z2xvYmFsLmNvdW50ICE9PSAzKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xv
YmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcvMS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzEuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NGIxYzNjYzVkMGQ2M2MwYzI5MGUzYmU2OTVmMWRkZTZmMTNiNzNhMwotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1z
aWJsaW5nLzEuanMKQEAgLTAsMCArMSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1
cm4gdGhpcyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwuY291bnQgIT09ICd1bmRlZmluZWQnKQor
ICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFs
LmNvdW50ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzIuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2libGluZy8yLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRl
Y2U2NjE5NjQ2NjQ0NTFkZDNhODgzYjA5NTc1YmEzYTEwNzlkNmUKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2li
bGluZy8yLmpzCkBAIC0wLDAgKzEsNCBAQAordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJu
IHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDEpCisgICAgdGhyb3cgbmV3IEVycm9y
KGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAyOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXNpYmxpbmcvMy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1
dGlvbi1vcmRlci1zaWJsaW5nLzMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDUwMGM1YjRlMTJmYzUyNjVmMjE2
Y2E0ZGFjYjRiZjQyZjJiZWE5ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzMuanMKQEAgLTAsMCAr
MSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGds
b2JhbC5jb3VudCAhPT0gMikKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2Jh
bC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmRhOGFlNTkwYWYyNWFlYmZkMThkNTM0M2NlOWQ0MzhmMjg0ZjFhNmMKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItdHJlZS5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiLi9leGVjdXRpb24tb3JkZXIt
dHJlZS81LmpzIgoraW1wb3J0ICIuL2V4ZWN1dGlvbi1vcmRlci10cmVlLzcuanMiCitpbXBvcnQg
Ii4vZXhlY3V0aW9uLW9yZGVyLXRyZWUvMTEuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24o
InJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAxMSkKKyAgICB0aHJvdyBu
ZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzEuanMg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJl
ZS8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjRiMWMzY2M1ZDBkNjNjMGMyOTBlM2JlNjk1ZjFkZGU2ZjEzYjcz
YTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9leGVjdXRpb24tb3JkZXItdHJlZS8xLmpzCkBAIC0wLDAgKzEsNCBAQAordmFyIGdsb2JhbCA9
IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmICh0eXBlb2YgZ2xvYmFsLmNvdW50ICE9
PSAndW5kZWZpbmVkJykKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5j
b3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMC5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzEwLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmU5NmMzMjRkN2IxZWE4YmNlMjZmYzdmYTUwNDRmMTBiOTkyMzAzNWEKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItdHJlZS8xMC5qcwpAQCAtMCwwICsxLDQgQEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rp
b24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA5KQorICAgIHRocm93
IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0g
MTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItdHJlZS8xMS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzExLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg0YmIyNTMzZjI1ZTYw
N2E0OTkwZTg5NWEzNGVhZDMxZTlkM2U4ZTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMS5qcwpAQCAt
MCwwICsxLDcgQEAKK2ltcG9ydCAiLi85LmpzIjsKK2ltcG9ydCAiLi8xMC5qcyI7CisKK3ZhciBn
bG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9
PSAxMCkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsK
K2dsb2JhbC5jb3VudCA9IDExOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzIuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
Y2Y1M2JkODUwNzYzOTI5MGI2NGI2YWQzMjYxNTJlYzE5MzQ0NDgwNQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10
cmVlLzIuanMKQEAgLTAsMCArMSw2IEBACitpbXBvcnQgIi4vMS5qcyI7CisKK3ZhciBnbG9iYWwg
PSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAxKQor
ICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFs
LmNvdW50ID0gMjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8zLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwNzljNjEy
YWNhODU4Yzc1YTZhOGM0MjJjYzIwMmYwZDQ0NDNmMjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8zLmpz
CkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIuLzEuanMiOworaW1wb3J0ICIuLzIuanMiOworCit2
YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3Vu
dCAhPT0gMikKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1g
KTsKK2dsb2JhbC5jb3VudCA9IDM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS80LmpzIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hNzZiZWNiNjA1OWJmMDA3YmU1Mjc5NmQwM2U0MTJiZDcxMDFlNjMzCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXRyZWUvNC5qcwpAQCAtMCwwICsxLDQgQEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVy
biB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAzKQorICAgIHRocm93IG5ldyBFcnJv
cihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gNDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRl
ci10cmVlLzUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItdHJlZS81LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmExZGVlZjkyZDEyZjVhYmM2ODZhMzE4YzJi
YWE0OThiZjY0ODFlOGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS81LmpzCkBAIC0wLDAgKzEsNyBAQAor
aW1wb3J0ICIzLmpzIgoraW1wb3J0ICI0LmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJy
ZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gNCkKKyAgICB0aHJvdyBuZXcg
RXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItdHJlZS82LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhl
Y3V0aW9uLW9yZGVyLXRyZWUvNi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMThkNDc0YzFhNjAwN2Q4MjYwNDg0
ODk2ZGNiMDM1Mzc2Njk5NzdmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNi5qcwpAQCAtMCwwICsxLDQg
QEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFs
LmNvdW50ICE9PSA1KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNv
dW50fWApOworZ2xvYmFsLmNvdW50ID0gNjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzcuanMgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS83LmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjJiOGU5YTA2M2Y0ZTk0YWM2ZDg2ZDA4ZWM2ZmEyNDEyYTJjZjhkY2YKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItdHJlZS83LmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzYuanMiOworCit2YXIg
Z2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAh
PT0gNikKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsK
K2dsb2JhbC5jb3VudCA9IDc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS84LmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvOC5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
N2M2ZjQ3MDMyNjNjNjczODczN2NhMDFlNjg1MmIyNmYwNjNkZWY2Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRy
ZWUvOC5qcwpAQCAtMCwwICsxLDQgQEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0
aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA3KQorICAgIHRocm93IG5ldyBFcnJvcihg
YmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gODsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10
cmVlLzkuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItdHJlZS85LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzMmU0MjVhMjJmODkyNTRlYzIxODhiNDMwMDEy
ODQwOTAwNjMzYmQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS85LmpzCkBAIC0wLDAgKzEsNiBAQAoraW1w
b3J0ICIuLzguanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgp
OworaWYgKGdsb2JhbC5jb3VudCAhPT0gOCkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1
ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2suanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2suanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNzllNjk2NWViNWQ3MTcyNGI5MzBjOTc4OTMwYWIyNzM0MDYzMmY0MQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9y
dC1jb25mbGljdC1vay5qcwpAQCAtMCwwICsxLDUgQEAKK2ltcG9ydCB7IEEsIEIgfSBmcm9tICIu
L2V4cG9ydC1jb25mbGljdC1vay9tYWluLmpzIiAgLy8gQyBpcyBjb25mbGljdCwgYnV0IG5vdCBs
b29rZWQgdXAuCitpbXBvcnQgeyBzaG91bGRCZSB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5q
cyI7CisKK3Nob3VsZEJlKEEsIDQyKTsKK3Nob3VsZEJlKEIsIDUwKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9BLmpz
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9r
L0EuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOGE4NGQ2NDNiMDU0ZWMxOTcwNDQ0N2YzY2FlOWY2M2E0NmY1ZmJl
ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4cG9ydC1jb25mbGljdC1vay9BLmpzCkBAIC0wLDAgKzEsMiBAQAorZXhwb3J0IGNvbnN0IEEg
PSA0MjsKK2V4cG9ydCBjb25zdCBDID0gNTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2svQi5qcyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9CLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmYxYTY1ZDc4M2YwYjZmY2FjMTgyOGVkYmI3MTQzYjRjZjk3MjU5NTcKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxp
Y3Qtb2svQi5qcwpAQCAtMCwwICsxLDIgQEAKK2V4cG9ydCBjb25zdCBCID0gNTA7CitleHBvcnQg
Y29uc3QgQyA9IDUwOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rL21haW4uanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2svbWFpbi5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmM2
ZjFmMTY0Mjc0MjZmMGMxZTQ3Y2NjNzkzYmQ4MTkyMjM1ODkzCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rL21h
aW4uanMKQEAgLTAsMCArMSwyIEBACitleHBvcnQgKiBmcm9tICIuL0EuanMiCitleHBvcnQgKiBm
cm9tICIuL0IuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhl
Y3V0ZWQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1m
dW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjMyODA0M2JjMmIzY2U1OTQ1N2I0YTg5Njc5YTE3N2M4ZDVjOWEzMQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydGVkLWZ1
bmN0aW9uLW1heS1iZS1jYWxsZWQtYmVmb3JlLW1vZHVsZS1pcy1leGVjdXRlZC5qcwpAQCAtMCww
ICsxIEBACitpbXBvcnQgIi4vZXhwb3J0ZWQtZnVuY3Rpb24tbWF5LWJlLWNhbGxlZC1iZWZvcmUt
bW9kdWxlLWlzLWV4ZWN1dGVkLzIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1t
b2R1bGUtaXMtZXhlY3V0ZWQvMS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4cG9ydGVkLWZ1bmN0aW9uLW1heS1iZS1jYWxsZWQtYmVmb3JlLW1vZHVsZS1pcy1leGVj
dXRlZC8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZhNGI5NDI3ZjUxOGRlMmVlNzQ0MmJmY2NjNzVhZWI0NTY2
ZWQyZjEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhl
Y3V0ZWQvMS5qcwpAQCAtMCwwICsxLDE1IEBACitpbXBvcnQgeyBhZGQsIHJhaXNlIH0gZnJvbSAi
Li8yLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi4vcmVzb3Vy
Y2VzL2Fzc2VydC5qcyI7CisKK3Nob3VsZEJlKHR5cGVvZiBhZGQsICdmdW5jdGlvbicpOworc2hv
dWxkQmUodHlwZW9mIHJhaXNlLCAnZnVuY3Rpb24nKTsKKworc2hvdWxkQmUoYWRkKDEwLCAzMiks
IDQyKTsKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIC8vIGFkZCwgYW5kIHJhaXNlIGZ1bmN0
aW9ucyBhcmUgZXhwb3J0ZWQgYW5kIGNhbiBiZSB1c2VkLgorICAgIC8vIEJ1dCBtb2R1bGUgIjIi
J3MgYm9keSBpcyBub3QgZXhlY3V0ZWQgeWV0ISEhIQorICAgIC8vIHJhaXNlIGZ1bmN0aW9uIHRv
dWNoZXMgdGhlIGxleGljYWwgdmFyaWFibGUgaW4gdGhlIG1vZHVsZSAiMiIsIHNvIFREWgorICAg
IC8vIGVycm9yIHNob3VsZCBiZSByYWlzZWQuCisgICAgcmFpc2UoKTsKK30sIGBSZWZlcmVuY2VF
cnJvcjogQ2Fubm90IGFjY2VzcyB1bmluaXRpYWxpemVkIHZhcmlhYmxlLmApOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0ZWQtZnVuY3Rpb24t
bWF5LWJlLWNhbGxlZC1iZWZvcmUtbW9kdWxlLWlzLWV4ZWN1dGVkLzIuanMgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVk
LWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQvMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YWU1YzJiNjRlMDk1
YWM4N2VmNTlmNjBhODJjZTNjYjQyMzMzZmViCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0ZWQtZnVuY3Rpb24tbWF5LWJlLWNhbGxl
ZC1iZWZvcmUtbW9kdWxlLWlzLWV4ZWN1dGVkLzIuanMKQEAgLTAsMCArMSwxMyBAQAoraW1wb3J0
ICIuLzEuanMiCisKK2xldCB2YWx1ZSA9IDQyOworCitleHBvcnQgZnVuY3Rpb24gYWRkKGEsIGIp
Cit7CisgICAgcmV0dXJuIGEgKyBiOworfQorCitleHBvcnQgZnVuY3Rpb24gcmFpc2UoKQorewor
ICAgIHJldHVybiB2YWx1ZTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL2ltcG9ydC1lcnJvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjM3NDcyY2NmOTAwODAzNmM5
ZWM2OWNlZmEwNTI1M2Q4MjdmMDc0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yLmpzCkBAIC0wLDAgKzEsMTMgQEAKK2lt
cG9ydCB7IHNob3VsZEJlLCBzaG91bGRUaHJvdyB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5q
cyIKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIGxvYWRNb2R1bGUoJy4vaW1wb3J0LWVycm9y
L2ltcG9ydC1ub3QtZm91bmQuanMnKTsKK30sIGBTeW50YXhFcnJvcjogSW1wb3J0aW5nIGJpbmRp
bmcgbmFtZSAnQicgaXMgbm90IGZvdW5kLmApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAg
bG9hZE1vZHVsZSgnLi9pbXBvcnQtZXJyb3IvaW1wb3J0LWFtYmlndW91cy5qcycpOworfSwgYFN5
bnRheEVycm9yOiBJbXBvcnRpbmcgYmluZGluZyBuYW1lICdCJyBjYW5ub3QgYmUgcmVzb2x2ZWQg
ZHVlIHRvIGFtYmlndW91cyBtdWx0aXBsZSBiaW5kaW5ncy5gKTsKKworc2hvdWxkVGhyb3coKCkg
PT4geworICAgIGxvYWRNb2R1bGUoJy4vaW1wb3J0LWVycm9yL2ltcG9ydC1kZWZhdWx0LWZyb20t
c3Rhci5qcycpOworfSwgYFN5bnRheEVycm9yOiBJbXBvcnRpbmcgYmluZGluZyBuYW1lICdkZWZh
dWx0JyBjYW5ub3QgYmUgcmVzb2x2ZWQgYnkgc3RhciBleHBvcnQgZW50cmllcy5gKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9l
eHBvcnQtYW1iaWd1b3VzLTEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFtYmlndW91cy0xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ4ZDdmOWEy
YzJkZmViNjY2ZTE1YmVhMmE4NjgwODA1MGM3N2Q1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFtYmln
dW91cy0xLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBjb25zdCBCID0gNDI7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0
LWFtYmlndW91cy0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1w
b3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMtMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYWUxZDE3NjdmZjJm
ZGVmZTRhNzYxNmM2ZWQ0MmY3N2RhYTAzZmI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMt
Mi5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQiA9IDUwOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJp
Z3VvdXMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJy
b3IvZXhwb3J0LWFtYmlndW91cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OWMxMjBkYmMxYWUyYTNmYmM2MmJl
OWI5OWE3Yzc3OWQ1MDM3MTQ1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMuanMKQEAgLTAs
MCArMSw0IEBACitleHBvcnQgY29uc3QgQSA9IDQyOworCitleHBvcnQgKiBmcm9tICIuL2V4cG9y
dC1hbWJpZ3VvdXMtMS5qcyIKK2V4cG9ydCAqIGZyb20gIi4vZXhwb3J0LWFtYmlndW91cy0yLmpz
IgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0
LWVycm9yL2V4cG9ydC1kZWZhdWx0LWZyb20tc3Rhci0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1kZWZhdWx0LWZyb20tc3Rhci0y
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjAzNTcwOWFkYzZkNWM1NWEzNjRkM2MxYTRjYjQ2MTgxM2Q4NGU1ZDQK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9p
bXBvcnQtZXJyb3IvZXhwb3J0LWRlZmF1bHQtZnJvbS1zdGFyLTIuanMKQEAgLTAsMCArMSwyIEBA
CitleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBDb2NvYSgpIHsKK30KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtZGVmYXVs
dC1mcm9tLXN0YXIuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBv
cnQtZXJyb3IvZXhwb3J0LWRlZmF1bHQtZnJvbS1zdGFyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmODZlYmNl
MGIyMjVkMTlkMTE2YjRhZTA3Yzk2NGUwZjM1MmJiZGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWRlZmF1
bHQtZnJvbS1zdGFyLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCAqIGZyb20gIi4vZXhwb3J0LWRl
ZmF1bHQtZnJvbS1zdGFyLTIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LW5vdC1mb3VuZC5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtbm90LWZvdW5k
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmM1MDg2NmFiNDZmYWQ0MTE3N2I2MzQ3ZjBlYjhkYjE5MDc4M2Q1MTMK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9p
bXBvcnQtZXJyb3IvZXhwb3J0LW5vdC1mb3VuZC5qcwpAQCAtMCwwICsxLDIgQEAKKworZXhwb3J0
IGNvbnN0IEEgPSAyMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2ltcG9ydC1lcnJvci9pbXBvcnQtYW1iaWd1b3VzLmpzIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1hbWJpZ3VvdXMuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZGQ2YzU4NDE1Mjk5N2QzNjU5Zjc4ZGU4Y2I5MWM4ZTkwYjA4ZDg4YgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1l
cnJvci9pbXBvcnQtYW1iaWd1b3VzLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCB7IEEsIEIgfSBm
cm9tICIuL2V4cG9ydC1hbWJpZ3VvdXMuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvaW1wb3J0LWRlZmF1bHQtZnJvbS1zdGFy
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2lt
cG9ydC1kZWZhdWx0LWZyb20tc3Rhci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mN2Y5ZTYzMTMyMDRhMjZlZWVj
MTJiYjJjYWJjMDFkYTRhMTM1Y2ZjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1kZWZhdWx0LWZyb20tc3Rh
ci5qcwpAQCAtMCwwICsxIEBACitpbXBvcnQgQSBmcm9tICIuL2V4cG9ydC1kZWZhdWx0LWZyb20t
c3Rhci5qcyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2ltcG9ydC1lcnJvci9pbXBvcnQtbm90LWZvdW5kLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1ub3QtZm91bmQuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMDQ1NjhkMjUxM2UyY2VlNGNmMTZlMzJlNzJkNGNhMWI5NTk5Y2ZmZQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9p
bXBvcnQtbm90LWZvdW5kLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCB7IEEsIEIgfSBmcm9tICIu
L2V4cG9ydC1ub3QtZm91bmQuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1hcmUtaW1tdXRhYmxlLmpzIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0ZWQtYmluZGluZ3MtYXJlLWltbXV0
YWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40NTE1ZTI5YmU2ZTFhZTljODU4OTkzM2Q5ODBlYmNiNGQ0YjJk
ZDM0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvaW1wb3J0ZWQtYmluZGluZ3MtYXJlLWltbXV0YWJsZS5qcwpAQCAtMCwwICsxLDQzIEBACitp
bXBvcnQgeyB2YXJpYWJsZSwgY29uc3RWYXJpYWJsZSwgbGV0VmFyaWFibGUsIGZ1bmN0aW9uRGVj
bGFyYXRpb24sIGNsYXNzRGVjbGFyYXRpb24gfSBmcm9tICIuL2ltcG9ydGVkLWJpbmRpbmdzLWFy
ZS1pbW11dGFibGUvYmluZGluZ3MuanMiCitpbXBvcnQgeyBzaG91bGRCZSwgc2hvdWxkVGhyb3cg
fSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiCisKK3Nob3VsZEJlKHZhcmlhYmxlLCAnQ29j
b2EnKTsKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICB2YXJpYWJsZSA9IDQyOworfSwgYFR5cGVF
cnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hv
dWxkQmUoY29uc3RWYXJpYWJsZSwgJ0NvY29hJyk7CitzaG91bGRUaHJvdygoKSA9PiB7CisgICAg
Y29uc3RWYXJpYWJsZSA9IDQyOworfSwgYFR5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0
byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hvdWxkQmUobGV0VmFyaWFibGUsICdDb2NvYScp
Oworc2hvdWxkVGhyb3coKCkgPT4geworICAgIGxldFZhcmlhYmxlID0gNDI7Cit9LCBgVHlwZUVy
cm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCitzaG91
bGRCZSh0eXBlb2YgZnVuY3Rpb25EZWNsYXJhdGlvbiwgJ2Z1bmN0aW9uJyk7CitzaG91bGRUaHJv
dygoKSA9PiB7CisgICAgZnVuY3Rpb25EZWNsYXJhdGlvbiA9IDQyOworfSwgYFR5cGVFcnJvcjog
QXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hvdWxkQmUo
dHlwZW9mIGNsYXNzRGVjbGFyYXRpb24sICdmdW5jdGlvbicpOworc2hvdWxkVGhyb3coKCkgPT4g
eworICAgIGNsYXNzRGVjbGFyYXRpb24gPSA0MjsKK30sIGBUeXBlRXJyb3I6IEF0dGVtcHRlZCB0
byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisKKworZnVuY3Rpb24gcmVmZXJlbmNl
KHJlYWQpIHsKKyAgICBpZiAocmVhZCkKKyAgICAgICAgcmV0dXJuIGxldFZhcmlhYmxlOworICAg
IGVsc2UKKyAgICAgICAgbGV0VmFyaWFibGUgPSAiQ29jb2EiOworfQorbm9JbmxpbmUocmVmZXJl
bmNlKTsKKworZm9yICh2YXIgaSA9IDA7IGkgPCAxMDAwMDsgKytpKQorICAgIHJlZmVyZW5jZSh0
cnVlKTsKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIHJlZmVyZW5jZShmYWxzZSk7Cit9LCBg
VHlwZUVycm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0ZWQt
YmluZGluZ3MtYXJlLWltbXV0YWJsZS9iaW5kaW5ncy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJpbmRpbmdzLWFyZS1pbW11dGFibGUvYmluZGluZ3Mu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZWQ2NDVjZGY5NWRlMTQ3ZGNiZTc5NGVhYWViYzZiYzM4YjhhZTBmMwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2lt
cG9ydGVkLWJpbmRpbmdzLWFyZS1pbW11dGFibGUvYmluZGluZ3MuanMKQEAgLTAsMCArMSwxMSBA
QAorZXhwb3J0IHZhciB2YXJpYWJsZSA9ICdDb2NvYSc7CisKK2V4cG9ydCBjb25zdCBjb25zdFZh
cmlhYmxlID0gJ0NvY29hJzsKKworZXhwb3J0IGxldCBsZXRWYXJpYWJsZSA9ICdDb2NvYSc7CisK
K2V4cG9ydCBmdW5jdGlvbiBmdW5jdGlvbkRlY2xhcmF0aW9uKCkgeworfQorCitleHBvcnQgY2xh
c3MgY2xhc3NEZWNsYXJhdGlvbiB7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmln
aW5hbC1tb2R1bGUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBv
cnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5hbC1tb2R1bGUuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYWI4YjZjNDg0NDdkMjZhNDllODlhYTdiMDg1NTExYjM5ZGJmYWEyNAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJp
bmRpbmdzLWNhbi1iZS1jaGFuZ2VkLWluLW9yaWdpbmFsLW1vZHVsZS5qcwpAQCAtMCwwICsxLDE3
IEBACitpbXBvcnQgeworICAgIENvY29hLAorICAgIENhcHB1Y2Npbm8sCisgICAgTWF0Y2hhLAor
ICAgIE1vZGlmaWVyCit9IGZyb20gIi4vaW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQt
aW4tb3JpZ2luYWwtbW9kdWxlL2JpbmRpbmdzLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3Vs
ZFRocm93IH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIgorCitzaG91bGRCZShDb2NvYSwg
IkNvY29hIik7CitzaG91bGRCZShDYXBwdWNjaW5vLCAiQ2FwcHVjY2lubyIpOworc2hvdWxkQmUo
TWF0Y2hhLCAiTWF0Y2hhIik7CisKK01vZGlmaWVyLmNoYW5nZSgiQ29jb2EiKTsKKworc2hvdWxk
QmUoQ29jb2EsICJDb2NvYSIpOworc2hvdWxkQmUoQ2FwcHVjY2lubywgIkNvY29hIik7CitzaG91
bGRCZShNYXRjaGEsICJDb2NvYSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQtaW4tb3JpZ2lu
YWwtbW9kdWxlL2JpbmRpbmdzLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvaW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQtaW4tb3JpZ2luYWwtbW9kdWxlL2Jp
bmRpbmdzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyNDI4OGNjM2M3ZTZjZDk0YzY3YmUyOWQzOWQzNThmMzY1
OWQ3MTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5hbC1tb2R1bGUv
YmluZGluZ3MuanMKQEAgLTAsMCArMSwxNiBAQAorbGV0IENvY29hID0gIkNvY29hIiwgQ2FwcHVj
Y2lubyA9ICJDYXBwdWNjaW5vIiwgTWF0Y2hhID0gIk1hdGNoYSI7CisKK2V4cG9ydCBsZXQgTW9k
aWZpZXIgPSB7CisgICAgY2hhbmdlKHZhbHVlKQorICAgIHsKKyAgICAgICAgQ29jb2EgPSB2YWx1
ZTsKKyAgICAgICAgQ2FwcHVjY2lubyA9IHZhbHVlOworICAgICAgICBNYXRjaGEgPSB2YWx1ZTsK
KyAgICB9Cit9OworCitleHBvcnQgeworICAgIENvY29hLAorICAgIENhcHB1Y2Npbm8sCisgICAg
TWF0Y2hhCit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzY2ZjNzdkNGY3
MmVjMzM2MTgzNTQ5NTY1OTA5ZjJhZWQxNTc4ODcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IuanMKQEAg
LTAsMCArMSwxMyBAQAoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9y
ZXNvdXJjZXMvYXNzZXJ0LmpzIgorCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbG9hZE1vZHVs
ZSgnLi9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC5qcycp
OworfSwgYFN5bnRheEVycm9yOiBJbmRpcmVjdGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnQicg
aXMgbm90IGZvdW5kLmApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbG9hZE1vZHVsZSgn
Li9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcycpOwor
fSwgYFN5bnRheEVycm9yOiBJbmRpcmVjdGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnQicgY2Fu
bm90IGJlIHJlc29sdmVkIGR1ZSB0byBhbWJpZ3VvdXMgbXVsdGlwbGUgYmluZGluZ3MuYCk7CisK
K3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBsb2FkTW9kdWxlKCcuL2luZGlyZWN0LWV4cG9ydC1l
cnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC5qcycpOworfSwgYFN5bnRheEVycm9yOiBJbmRp
cmVjdGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnZGVmYXVsdCcgY2Fubm90IGJlIHJlc29sdmVk
IGJ5IHN0YXIgZXhwb3J0IGVudHJpZXMuYCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0
LWFtYmlndW91cy0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5k
aXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMi5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lNjM5MDU3MWMxMTc2ZjQ0NTZmZGRlOGVjOGM4YmM1MjllYjU2MWRlCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhw
b3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMi5qcwpAQCAtMCwwICsxLDIgQEAK
K2V4cG9ydCAqIGZyb20gIi4vaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy0zLmpzIgorZXhwb3J0
ICogZnJvbSAiLi9pbmRpcmVjdC1leHBvcnQtYW1iaWd1b3VzLTQuanMiCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3Iv
aW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy0zLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3Vv
dXMtMy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40YzQ0NWE0YjMxNWJmMmNlYTAyYTg5NmRmNjQxMjcyMzEzZWY1
MjZhCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMy5qcwpA
QCAtMCwwICsxLDIgQEAKK2V4cG9ydCBjb25zdCBBID0gNDI7CitleHBvcnQgY29uc3QgQiA9IDUw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVj
dC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy00LmpzIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0
LWV4cG9ydC1hbWJpZ3VvdXMtNC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZjIyNzIyYTM1NDdlNDViYTJlYjFk
NjlmOGFiMzhiODkwZDljNDkwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1h
bWJpZ3VvdXMtNC5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQiA9IDUwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQt
ZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtYW1i
aWd1b3VzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVmNjI2ZDkxNGM1MTBlYmM1NmMwNTI5OWFlNmJiYTExYTE4
MGE1MWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcwpA
QCAtMCwwICsxIEBACitleHBvcnQgeyBBLCBCIH0gZnJvbSAiLi9pbmRpcmVjdC1leHBvcnQtYW1i
aWd1b3VzLTIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWRlZmF1bHQtMi5qcyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJv
ci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMxNzdiMTQzOTQ1MGNk
MmFmMzJjZTI5ZGI2ZjdjNzdmZWQwYzY1ZjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3Qt
ZXhwb3J0LWRlZmF1bHQtMi5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgKiBmcm9tICJpbmRpcmVj
dC1leHBvcnQtZGVmYXVsdC0zLmpzIgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1kZWZh
dWx0LTMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1l
eHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWRlZmF1bHQtMy5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMzU3
MDlhZGM2ZDVjNTVhMzY0ZDNjMWE0Y2I0NjE4MTNkODRlNWQ0Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9y
L2luZGlyZWN0LWV4cG9ydC1kZWZhdWx0LTMuanMKQEAgLTAsMCArMSwyIEBACitleHBvcnQgZGVm
YXVsdCBmdW5jdGlvbiBDb2NvYSgpIHsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQt
ZGVmYXVsdC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0
LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZGUx
NDI1NGE3OTQ5MDQ1ZTk3MDQ3NGE4NDllYWJkNmU5MDJjNmI1Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9y
L2luZGlyZWN0LWV4cG9ydC1kZWZhdWx0LmpzCkBAIC0wLDAgKzEsMiBAQAoraW1wb3J0IEEgZnJv
bSAiLi9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzIgorZXhwb3J0IHsgQSB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQt
ZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1u
b3QtZm91bmQtMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44M2M2NjVmZWU5OTUyMWY3NjlkZTdiNmI5MDVjZWQ1
YzU0ZGE1MTk5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1ub3QtZm91bmQt
Mi5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQSA9IDQyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2lu
ZGlyZWN0LWV4cG9ydC1ub3QtZm91bmQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi41ZGQ0ODc5ZTE0YTgyMzQ0OGFmMDI2NjczYTA0NjI5OWRlYjUwZGZjCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5k
aXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1ub3QtZm91bmQuanMKQEAgLTAsMCAr
MSBAQAorZXhwb3J0IHsgQSwgQiB9IGZyb20gIi4vaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0y
LmpzIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21v
ZHVsZS1pcy1zdHJpY3QtY29kZS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL21vZHVsZS1pcy1zdHJpY3QtY29kZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mY2MzYjMzZTcyMzM0NmFm
NzJmNTk1OGRlY2IwZDgxMzczNzk5ZjQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbW9kdWxlLWlzLXN0cmljdC1jb2RlLmpzCkBAIC0wLDAg
KzEsMTkgQEAKK2ltcG9ydCB7IHNob3VsZFRocm93LCBzaG91bGRCZSB9IGZyb20gIi4vcmVzb3Vy
Y2VzL2Fzc2VydC5qcyI7CisKKy8vIE1vZHVsZSBjb2RlIGlzIGFsd2F5cyBzdHJpY3QgY29kZS4K
K3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBldmFsKCJ3aXRoKHZhbHVlKSB7IH0iKTsKK30sIGBT
eW50YXhFcnJvcjogJ3dpdGgnIHN0YXRlbWVudHMgYXJlIG5vdCB2YWxpZCBpbiBzdHJpY3QgbW9k
ZS5gKTsKKworLy8gV2hlbiBjYWxsaW5nIHRoZSBpbmRpcmVjdCBldmFsIC8gRnVuY3Rpb24gY29u
c3RydWN0b3IsIGl0cyBzY29wZSBpcyBub3QgdGhlIG1vZHVsZSBzY29wZS4KK3ZhciBtb2R1bGVW
YXJpYWJsZSA9IDQyOworCitzaG91bGRCZShldmFsKCJtb2R1bGVWYXJpYWJsZSIpLCA0Mik7CisK
K3Nob3VsZFRocm93KCgpID0+IHsKKyAgICAoMCwgZXZhbCkoIm1vZHVsZVZhcmlhYmxlIik7Cit9
LCBgUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IG1vZHVsZVZhcmlhYmxlYCk7
CisKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICAoRnVuY3Rpb24oIm1vZHVsZVZhcmlhYmxlIikp
KCk7Cit9LCBgUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IG1vZHVsZVZhcmlh
YmxlYCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9u
YW1lc3BhY2UtYW1iaWd1b3VzLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvbmFtZXNwYWNlLWFtYmlndW91cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNDk2Y2QyOTIyNDkyNTVhY2Yz
MDE3MjFkNzc0NjU5N2MzYTRjZTc5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy5qcwpAQCAtMCwwICsxLDYg
QEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9tICIuL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1i
aWd1b3VzLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9yZXNv
dXJjZXMvYXNzZXJ0LmpzIgorCisvLyBBbWJpZ3VvdXMgbmFtZSBpcyBvbWl0dGVkIGZyb20gdGhl
IG5hbWVzcGFjZS4KK3Nob3VsZEJlKG5hbWVzcGFjZS5Db2NvYSwgdW5kZWZpbmVkKTsKK3Nob3Vs
ZEJlKCdDb2NvYScgaW4gbmFtZXNwYWNlLCBmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy0y
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmln
dW91cy9hbWJpZ3VvdXMtMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODA5M2Q0NjZkMGM4YTVkODkyODA4MjEy
OWVlOTRmZWZmYzEyZDk1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtMi5qcwpAQCAtMCww
ICsxLDIgQEAKK2V4cG9ydCAqIGZyb20gImFtYmlndW91cy0zLmpzIgorZXhwb3J0ICogZnJvbSAi
YW1iaWd1b3VzLTQuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy0zLmpzIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtMy5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5jNzY1MTY0MTczM2ZmNTAxYTFiNGVmYjY5YmM0N2RiMmIxY2I4NzFiCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFt
ZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtMy5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29u
c3QgQ29jb2EgPSA0MjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTQuanMgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy00Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmM3NjUxNjQxNzMzZmY1MDFhMWI0ZWZiNjliYzQ3ZGIyYjFjYjg3MWIKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1l
c3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy00LmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBjb25z
dCBDb2NvYSA9IDQyOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kMjg5MmViOWY3YzQyOTc5NTQ0NTVlNDFhZDQwODI5ZjgxMDdmMjdhCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNl
LWFtYmlndW91cy9hbWJpZ3VvdXMuanMKQEAgLTAsMCArMSBAQAoraW1wb3J0ICogYXMgbmFtZXNw
YWNlIGZyb20gImFtYmlndW91cy0yLmpzIgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yLmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0NzgxN2E3
YjA3NWY5NmU5N2I2OGVjN2U0ZGFjOGY4YWUwOGRlOGEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IuanMKQEAgLTAs
MCArMSw1IEBACitpbXBvcnQgeyBzaG91bGRUaHJvdyB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2Vy
dC5qcyIKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIGxvYWRNb2R1bGUoJy4vbmFtZXNwYWNl
LWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5
LmpzJyk7Cit9LCBgU3ludGF4RXJyb3I6IEluZGlyZWN0bHkgZXhwb3J0ZWQgYmluZGluZyBuYW1l
ICdkZWZhdWx0JyBjYW5ub3QgYmUgcmVzb2x2ZWQgYnkgc3RhciBleHBvcnQgZW50cmllcy5gKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFj
ZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0
eS0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVy
cm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNDQzYTQ3YTdkOTM1NTU1OWE5MDczMzgxZGEzOTJmYjU0NTExZmNjMwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25h
bWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFt
YmlndWl0eS0yLmpzCkBAIC0wLDAgKzEsMyBAQAorZXhwb3J0ICogZnJvbSAiLi9uYW1lc3BhY2Ut
bG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS0zLmpzIgorZXhwb3J0ICog
ZnJvbSAiLi9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0
eS00LmpzIgorZXhwb3J0ICogZnJvbSAiLi9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhp
ZGUtZ2xvYmFsLWFtYmlndWl0eS01LmpzIgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1z
aG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3Vs
ZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktMy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzY1MTY0MTczM2ZmNTAx
YTFiNGVmYjY5YmM0N2RiMmIxY2I4NzFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1l
cnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTMuanMKQEAgLTAsMCArMSBAQAorZXhw
b3J0IGNvbnN0IENvY29hID0gNDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3Vs
ZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhp
ZGUtZ2xvYmFsLWFtYmlndWl0eS00LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyY2JjY2U5NTcwZmY5OTBjMDFi
YzExMjlhOWE4ZThjOWYxN2MxMzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9y
LXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNC5qcwpAQCAtMCwwICsxLDMgQEAKK2V4cG9y
dCAqIGZyb20gIi4vbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJp
Z3VpdHktNi5qcyIKK2ltcG9ydCBIZWxsbyBmcm9tICIuL25hbWVzcGFjZS1sb2NhbC1lcnJvci1z
aG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTcuanMiCitleHBvcnQgeyBIZWxsbyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJy
b3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNS5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9u
YW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS01LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmM3NjUxNjQxNzMzZmY1MDFhMWI0ZWZiNjliYzQ3ZGIyYjFjYjg3MWIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3Bh
Y2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3Vp
dHktNS5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQ29jb2EgPSA0MjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9u
YW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS02LmpzIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVz
cGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTYuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYzc2NTE2NDE3MzNmZjUwMWExYjRlZmI2OWJjNDdkYjJiMWNiODcxYgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1l
cnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS02
LmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBjb25zdCBDb2NvYSA9IDQyOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVz
cGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTcuanMgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNl
LWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xMzk1OTdmOWNiMDdjNWQ0OGJlZDE4OTg0ZWM0NzQ3ZjRiNGYzNDM4Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9y
L25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTcuanMK
QEAgLTAsMCArMSwyIEBACisKKwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQt
aGlkZS1nbG9iYWwtYW1iaWd1aXR5LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1n
bG9iYWwtYW1iaWd1aXR5LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwZTAwNjM4MzczMTgxMzhjZmNjNGExZmQy
NjVlNjEwODUzN2YwYjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3Vs
ZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHkuanMKQEAgLTAsMCArMSBAQAoraW1wb3J0ICogYXMgbmFt
ZXNwYWNlIGZyb20gIi4vbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1h
bWJpZ3VpdHktMi5qcyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL25hbWVzcGFjZS10ZHouanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9uYW1lc3BhY2UtdGR6LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE2ZjJiMGM5MDM5YTI1MzkwY2FhNTI0
ODUwZjVkMGQ0NjBlZDY5N2IKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6LmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCAq
IGFzIG5hbWVzcGFjZSBmcm9tICIuL25hbWVzcGFjZS10ZHovbWFpbi5qcyIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQS5qcyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42MjQ5MWMxNDhhN2ZhOWViNjI2NmEyY2NlNDZjNmFkY2RkOTU3ZTI2Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNw
YWNlLXRkei9BLmpzCkBAIC0wLDAgKzEsMTAgQEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9t
ICIuL0IuanMiCitpbXBvcnQgeyBzaG91bGRCZSwgc2hvdWxkVGhyb3cgfSBmcm9tICIuLi9yZXNv
dXJjZXMvYXNzZXJ0LmpzIjsKKworZXhwb3J0IGNvbnN0IEEgPSA0MjsKKworc2hvdWxkQmUoSlNP
Ti5zdHJpbmdpZnkoUmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobmFtZXNwYWNlLCAn
QicpKSwgYHsidmFsdWUiOjI1Niwid3JpdGFibGUiOnRydWUsImVudW1lcmFibGUiOnRydWUsImNv
bmZpZ3VyYWJsZSI6ZmFsc2V9YCk7CisKK3Nob3VsZEJlKG5hbWVzcGFjZS5CLCAyNTYpOworbmFt
ZXNwYWNlLmxhdGVyKCk7CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YTg5YzAzNGRhZjFjZTY2
OTk1MTJhNDA4YzYxMGI0ZmRlZjFiNGJlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei9CLmpzCkBAIC0wLDAgKzEsMTYg
QEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9tICIuL0EuanMiCitpbXBvcnQgeyBzaG91bGRC
ZSwgc2hvdWxkVGhyb3cgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworZXhwb3J0
IGNvbnN0IEIgPSAyNTY7CisKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBwcmludChuYW1lc3Bh
Y2UuQSk7Cit9LCBgUmVmZXJlbmNlRXJyb3I6IENhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2
YXJpYWJsZS5gKTsKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIFJlZmxlY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKG5hbWVzcGFjZSwgJ0EnKTsKK30sIGBSZWZlcmVuY2VFcnJvcjogQ2Fu
bm90IGFjY2VzcyB1bmluaXRpYWxpemVkIHZhcmlhYmxlLmApOworCitleHBvcnQgZnVuY3Rpb24g
bGF0ZXIoKSB7CisgICAgc2hvdWxkQmUobmFtZXNwYWNlLkEsIDQyKTsKK30KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovbWFpbi5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovbWFp
bi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jMjRmOTcyZjYzZTRiZTQyY2U2NTJlODdmNThmNmE5YTk3ODExMmQz
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
bmFtZXNwYWNlLXRkei9tYWluLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCB7IEEgfSBmcm9tICIu
L0EuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9u
YW1lc3BhY2UuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3Bh
Y2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMWJmMjQxNDUzMmE5MDJmZWIwNzkzZTY2NWM4MmJjZjgxNzlhNDNi
MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L25hbWVzcGFjZS5qcwpAQCAtMCwwICsxLDgxIEBACitpbXBvcnQgY2hhbmdlQ2FwcHVjY2lubywg
KiBhcyBuYW1lc3BhY2UgZnJvbSAiLi9uYW1lc3BhY2UvZHJpbmsuanMiCitpbXBvcnQgeyBzaG91
bGRCZSwgc2hvdWxkVGhyb3cgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCitzaG91
bGRCZSh0eXBlb2YgbmFtZXNwYWNlLCAnb2JqZWN0Jyk7CitzaG91bGRCZSh0eXBlb2YgY2hhbmdl
Q2FwcHVjY2lubywgJ2Z1bmN0aW9uJyk7CitzaG91bGRCZShuYW1lc3BhY2UuQ29jb2EsICdDb2Nv
YScpOworc2hvdWxkQmUobmFtZXNwYWNlLkNhcHB1Y2Npbm8sICdDYXBwdWNjaW5vJyk7CitzaG91
bGRCZShuYW1lc3BhY2UuTWF0Y2hhLCAnTWF0Y2hhJyk7CitzaG91bGRCZShuYW1lc3BhY2UuTW9j
aGEsICdNb2NoYScpOworc2hvdWxkQmUobmFtZXNwYWNlLmRlZmF1bHQsIGNoYW5nZUNhcHB1Y2Np
bm8pOworCitjaGFuZ2VDYXBwdWNjaW5vKCdDb2NvYScpOworc2hvdWxkQmUobmFtZXNwYWNlLkNv
Y29hLCAnQ29jb2EnKTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5DYXBwdWNjaW5vLCAnQ29jb2EnKTsK
K3Nob3VsZEJlKG5hbWVzcGFjZS5NYXRjaGEsICdNYXRjaGEnKTsKK3Nob3VsZEJlKG5hbWVzcGFj
ZS5Nb2NoYSwgJ01vY2hhJyk7CitzaG91bGRCZShuYW1lc3BhY2UuZGVmYXVsdCwgY2hhbmdlQ2Fw
cHVjY2lubyk7CisKK3Nob3VsZEJlKCdDb2NvYScgaW4gbmFtZXNwYWNlLCB0cnVlKTsKK3Nob3Vs
ZEJlKCdDYXBwdWNjaW5vJyBpbiBuYW1lc3BhY2UsIHRydWUpOworc2hvdWxkQmUoJ01hdGNoYScg
aW4gbmFtZXNwYWNlLCB0cnVlKTsKK3Nob3VsZEJlKCdNb2NoYScgaW4gbmFtZXNwYWNlLCB0cnVl
KTsKK3Nob3VsZEJlKCdkZWZhdWx0JyBpbiBuYW1lc3BhY2UsIHRydWUpOworc2hvdWxkQmUoU3lt
Ym9sLml0ZXJhdG9yIGluIG5hbWVzcGFjZSwgdHJ1ZSk7CitzaG91bGRCZSgnVGVhJyBpbiBuYW1l
c3BhY2UsIGZhbHNlKTsKKworc2hvdWxkQmUobmFtZXNwYWNlLl9fcHJvdG9fXywgdW5kZWZpbmVk
KTsKK3Nob3VsZEJlKFJlZmxlY3QuaXNFeHRlbnNpYmxlKG5hbWVzcGFjZSksIGZhbHNlKTsKKwor
c2hvdWxkVGhyb3coKCkgPT4geworICAgIG5hbWVzcGFjZS52YWx1ZSA9IDIwOworfSwgYFR5cGVF
cnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hv
dWxkVGhyb3coKCkgPT4geworICAgIG5hbWVzcGFjZVsyMF0gPSAyMDsKK30sIGBUeXBlRXJyb3I6
IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisKK3Nob3VsZFRo
cm93KCgpID0+IHsKKyAgICBuYW1lc3BhY2VbU3ltYm9sLnVuc2NvcGFibGVzXSA9IDIwOworfSwg
YFR5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsK
Kworc2hvdWxkVGhyb3coKCkgPT4geworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuYW1lc3Bh
Y2UsICdDb29raWUnLCB7CisgICAgICAgIHZhbHVlOiA0MgorICAgIH0pOworfSwgYFR5cGVFcnJv
cjogQXR0ZW1wdGluZyB0byBkZWZpbmUgcHJvcGVydHkgb24gb2JqZWN0IHRoYXQgaXMgbm90IGV4
dGVuc2libGUuYCk7CisKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBuYW1lc3BhY2UuX19wcm90
b19fID0gT2JqZWN0LnByb3RvdHlwZTsKK30sIGBUeXBlRXJyb3I6IEF0dGVtcHRlZCB0byBhc3Np
Z24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisKK3Nob3VsZEJlKFJlZmxlY3Quc2V0UHJvdG90
eXBlT2YobmFtZXNwYWNlLCBPYmplY3QucHJvdG90eXBlKSwgZmFsc2UpOworc2hvdWxkQmUobmFt
ZXNwYWNlLl9fcHJvdG9fXywgdW5kZWZpbmVkKTsKK3Nob3VsZEJlKFJlZmxlY3QuZ2V0UHJvdG90
eXBlT2YobmFtZXNwYWNlKSwgbnVsbCk7CisKKy8vIFRoZXNlIG5hbWVzIHNob3VsZCBiZSBzaG93
biBpbiB0aGUgY29kZSBwb2ludCBvcmRlci4KK3Nob3VsZEJlKEpTT04uc3RyaW5naWZ5KE9iamVj
dC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG5hbWVzcGFjZSkpLCBgWyJDYXBwdWNjaW5vIiwiQ29jb2Ei
LCJNYXRjaGEiLCJNb2NoYSIsImRlZmF1bHQiXWApOworc2hvdWxkQmUoT2JqZWN0LmdldE93blBy
b3BlcnR5U3ltYm9scyhuYW1lc3BhY2UpLmxlbmd0aCwgMSk7CitzaG91bGRCZShPYmplY3QuZ2V0
T3duUHJvcGVydHlTeW1ib2xzKG5hbWVzcGFjZSlbMF0sIFN5bWJvbC5pdGVyYXRvcik7CisKK3No
b3VsZEJlKHR5cGVvZiBuYW1lc3BhY2VbU3ltYm9sLml0ZXJhdG9yXSwgJ2Z1bmN0aW9uJyk7Cit2
YXIgYXJyYXkgPSBBcnJheS5mcm9tKG5hbWVzcGFjZSk7CisvLyBUaGVzZSBuYW1lcyBzaG91bGQg
YmUgc2hvd24gaW4gdGhlIGNvZGUgcG9pbnQgb3JkZXIuCitzaG91bGRCZShKU09OLnN0cmluZ2lm
eShhcnJheSksIGBbIkNhcHB1Y2Npbm8iLCJDb2NvYSIsIk1hdGNoYSIsIk1vY2hhIiwiZGVmYXVs
dCJdYCk7CisKKy8vIFRoZSBpbXBvcnRlZCBiaW5kaW5nIHByb3BlcnRpZXMgb2YgdGhlIG5hbWVz
cGFjZSBvYmplY3Qgc2VlbiBhcyB3cml0YWJsZSwgYnV0LCBpdCBkb2VzIG5vdCBtZWFuIHRoYXQg
aXQgaXMgd3JpdGFibGUgYnkgdXNlcnMuCitzaG91bGRCZShKU09OLnN0cmluZ2lmeShSZWZsZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuYW1lc3BhY2UsICJDb2NvYSIpKSwgYHsidmFsdWUi
OiJDb2NvYSIsIndyaXRhYmxlIjp0cnVlLCJlbnVtZXJhYmxlIjp0cnVlLCJjb25maWd1cmFibGUi
OmZhbHNlfWApOworc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoUmVmbGVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IobmFtZXNwYWNlLCAiTWF0Y2hhIikpLCBgeyJ2YWx1ZSI6Ik1hdGNoYSIsIndy
aXRhYmxlIjp0cnVlLCJlbnVtZXJhYmxlIjp0cnVlLCJjb25maWd1cmFibGUiOmZhbHNlfWApOwor
c2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoUmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
bmFtZXNwYWNlLCAiTW9jaGEiKSksIGB7InZhbHVlIjoiTW9jaGEiLCJ3cml0YWJsZSI6dHJ1ZSwi
ZW51bWVyYWJsZSI6dHJ1ZSwiY29uZmlndXJhYmxlIjpmYWxzZX1gKTsKK3Nob3VsZFRocm93KCgp
ID0+IHsKKyAgICAvLyBUaHJvdyBhbiBlcnJvciBldmVuIGlmIHRoZSBzYW1lIHZhbHVlLgorICAg
IG5hbWVzcGFjZS5Db2NvYSA9ICdDb2NvYSc7Cit9LCBgVHlwZUVycm9yOiBBdHRlbXB0ZWQgdG8g
YXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCisvLyBJbiB0aGUgY2FzZSBvZiBub24g
aW1wb3J0ZWQgcHJvcGVydGllcywgd2UganVzdCByZXR1cm4gdGhlIG9yaWdpbmFsIGRlc2NyaXB0
b3IuCisvLyBCdXQgc3RpbGwgdGhlc2UgcHJvcGVydGllcyBjYW5ub3QgYmUgY2hhbmdlZC4KK3No
b3VsZEJlKEpTT04uc3RyaW5naWZ5KFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG5h
bWVzcGFjZSwgU3ltYm9sLml0ZXJhdG9yKSksIGB7IndyaXRhYmxlIjp0cnVlLCJlbnVtZXJhYmxl
IjpmYWxzZSwiY29uZmlndXJhYmxlIjp0cnVlfWApOworc2hvdWxkVGhyb3coKCkgPT4geworICAg
IG5hbWVzcGFjZVtTeW1ib2wuaXRlcmF0b3JdID0gNDI7Cit9LCBgVHlwZUVycm9yOiBBdHRlbXB0
ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvYWRkaXRpb25hbC1kcmlu
ay5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9hZGRp
dGlvbmFsLWRyaW5rLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU5ZGFhNTNmOGE0ZjE5ZDIyMDdiOGNkZWZkYzg4
OGE5YzQxODA2YWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9uYW1lc3BhY2UvYWRkaXRpb25hbC1kcmluay5qcwpAQCAtMCwwICsxLDQgQEAK
K2V4cG9ydCBjb25zdCBNYXRjaGEgPSAnTWF0Y2hhJzsKKworaW1wb3J0IHsgTW9jaGEgfSBmcm9t
ICIuL21vcmUtYWRkaXRpb25hbC1kcmluay5qcyIKK2V4cG9ydCB7IE1vY2hhIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9kcmluay5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9kcmluay5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42MjFmZDIyOTAyYmU1MzZhYzFlYmU0YTY0MjhjNjUxZDE4MTdkN2MxCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFt
ZXNwYWNlL2RyaW5rLmpzCkBAIC0wLDAgKzEsMTAgQEAKKworZXhwb3J0IGNvbnN0IENvY29hID0g
IkNvY29hIjsKKworZXhwb3J0IGxldCBDYXBwdWNjaW5vID0gIkNhcHB1Y2Npbm8iOworCitleHBv
cnQgZGVmYXVsdCBmdW5jdGlvbiBjaGFuZ2VDYXBwdWNjaW5vKHZhbHVlKSB7CisgICAgQ2FwcHVj
Y2lubyA9IHZhbHVlOworfQorCitleHBvcnQgKiBmcm9tICIuL2FkZGl0aW9uYWwtZHJpbmsuanMi
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3Bh
Y2UvbW9yZS1hZGRpdGlvbmFsLWRyaW5rLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvbmFtZXNwYWNlL21vcmUtYWRkaXRpb25hbC1kcmluay5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
Y2MzNjIyMDA0OWIyYjlmNDI3NmEzNTM5NTA5MGFkZjlmYzAyODQ2Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlL21vcmUtYWRk
aXRpb25hbC1kcmluay5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgTW9jaGEgPSAnTW9j
aGEnOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvcmVz
b3VyY2VzL2Fzc2VydC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Jl
c291cmNlcy9hc3NlcnQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTAwNmY4NGViZGZhMDFlYWMxNjVkMmZhMmVk
MTUxY2E3YTY0YmFkNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL3Jlc291cmNlcy9hc3NlcnQuanMKQEAgLTAsMCArMSwxOSBAQAorZXhwb3J0
IGZ1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFsICE9
PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWU6ICR7U3RyaW5n
KGFjdHVhbCl9YCk7Cit9CisKK2V4cG9ydCBmdW5jdGlvbiBzaG91bGRUaHJvdyhmdW5jLCBlcnJv
ck1lc3NhZ2UpIHsKKyAgICB2YXIgZXJyb3JUaHJvd24gPSBmYWxzZTsKKyAgICB2YXIgZXJyb3Ig
PSBudWxsOworICAgIHRyeSB7CisgICAgICAgIGZ1bmMoKTsKKyAgICB9IGNhdGNoIChlKSB7Cisg
ICAgICAgIGVycm9yVGhyb3duID0gdHJ1ZTsKKyAgICAgICAgZXJyb3IgPSBlOworICAgIH0KKyAg
ICBpZiAoIWVycm9yVGhyb3duKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCB0aHJvd24n
KTsKKyAgICBpZiAoU3RyaW5nKGVycm9yKSAhPT0gZXJyb3JNZXNzYWdlKQorICAgICAgICB0aHJv
dyBuZXcgRXJyb3IoYGJhZCBlcnJvcjogJHtTdHJpbmcoZXJyb3IpfWApOworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzLmpzIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQyMGM2
NWVlZjkwYTQ3ZTc0NjE2MGNjYzdkMTMxOGY0MjEzYWVhNDkKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMuanMKQEAgLTAsMCArMSwy
NyBAQAoraW1wb3J0IHsgQ29jb2EsIENhcHB1Y2Npbm8sIE1hdGNoYSB9IGZyb20gIi4vc2NvcGVz
L2RyaW5rLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQu
anMiOworCit7CisgICAgbGV0IENvY29hID0gNDI7CisgICAgc2hvdWxkQmUoQ29jb2EsIDQyKTsK
K30KK3Nob3VsZEJlKENvY29hLCAnQ29jb2EnKTsKK3Nob3VsZEJlKENhcHB1Y2Npbm8sICdDYXBw
dWNjaW5vJyk7CitzaG91bGRCZShNYXRjaGEsICdNYXRjaGEnKTsKKwordmFyIGdsb2JhbCA9IEZ1
bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCk7CisKKyhmdW5jdGlvbiAoKSB7CisgICAgdmFyIENvY29h
ID0gNDI7CisgICAgbGV0IENhcHB1Y2Npbm8gPSAnQ1BPJzsKKyAgICBzaG91bGRCZShDb2NvYSwg
NDIpOworICAgIHNob3VsZEJlKENhcHB1Y2Npbm8sICdDUE8nKTsKKyAgICBzaG91bGRCZShNYXRj
aGEsICdNYXRjaGEnKTsKKyAgICB7CisgICAgICAgIGNvbnN0IE1hdGNoYSA9IDUwOworICAgICAg
ICBzaG91bGRCZShNYXRjaGEsIDUwKTsKKyAgICAgICAgc2hvdWxkQmUoT2JqZWN0LCBnbG9iYWwu
T2JqZWN0KTsKKyAgICB9CisgICAgc2hvdWxkQmUoT2JqZWN0LCBnbG9iYWwuT2JqZWN0KTsKK30o
KSk7CitzaG91bGRCZShPYmplY3QsIGdsb2JhbC5PYmplY3QpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzL2FkZGl0aW9uYWwtZHJpbmsuanMg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMvYWRkaXRpb25hbC1k
cmluay5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41OWRhYTUzZjhhNGYxOWQyMjA3YjhjZGVmZGM4ODhhOWM0MTgw
NmFmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvc2NvcGVzL2FkZGl0aW9uYWwtZHJpbmsuanMKQEAgLTAsMCArMSw0IEBACitleHBvcnQgY29u
c3QgTWF0Y2hhID0gJ01hdGNoYSc7CisKK2ltcG9ydCB7IE1vY2hhIH0gZnJvbSAiLi9tb3JlLWFk
ZGl0aW9uYWwtZHJpbmsuanMiCitleHBvcnQgeyBNb2NoYSB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMvZHJpbmsuanMgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMvZHJpbmsuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjIx
ZmQyMjkwMmJlNTM2YWMxZWJlNGE2NDI4YzY1MWQxODE3ZDdjMQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy9kcmluay5qcwpAQCAt
MCwwICsxLDEwIEBACisKK2V4cG9ydCBjb25zdCBDb2NvYSA9ICJDb2NvYSI7CisKK2V4cG9ydCBs
ZXQgQ2FwcHVjY2lubyA9ICJDYXBwdWNjaW5vIjsKKworZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24g
Y2hhbmdlQ2FwcHVjY2lubyh2YWx1ZSkgeworICAgIENhcHB1Y2Npbm8gPSB2YWx1ZTsKK30KKwor
ZXhwb3J0ICogZnJvbSAiLi9hZGRpdGlvbmFsLWRyaW5rLmpzIgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzL21vcmUtYWRkaXRpb25hbC1kcmlu
ay5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy9tb3JlLWFk
ZGl0aW9uYWwtZHJpbmsuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmNjMzYyMjAwNDliMmI5ZjQyNzZhMzUzOTUw
OTBhZGY5ZmMwMjg0NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL3Njb3Blcy9tb3JlLWFkZGl0aW9uYWwtZHJpbmsuanMKQEAgLTAsMCArMSBA
QAorZXhwb3J0IGNvbnN0IE1vY2hhID0gJ01vY2hhJzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3RoaXMtc2hvdWxkLWJlLXVuZGVmaW5lZC5qcyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3RoaXMtc2hvdWxkLWJlLXVuZGVmaW5l
ZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44ODQ1M2UyY2Y4NjcyZjhkYWUzM2NkODAxN2ZmNGJhYjMxOTFhNmVj
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
dGhpcy1zaG91bGQtYmUtdW5kZWZpbmVkLmpzCkBAIC0wLDAgKzEsMyBAQAoraW1wb3J0IHsgc2hv
dWxkQmUgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCitzaG91bGRCZSh0aGlzLCB1
bmRlZmluZWQpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9n
CmluZGV4IGQ0OTdmODg2N2IyNzI5MDllYjZiZTZkYTBmMGFiNThhYTY5NzBiZmQuLjM2MTFhNjNi
MjBhNDBjMjA4ZjYxMjFlNzJjNDYyOWExZDU5N2Y2NzcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5n
ZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxNS0wOS0wMiAg
WXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBbRVM2XSBF
bmFibGUgRVM2IE1vZHVsZSBpbiBKU0Mgc2hlbGwgYnkgZGVmYXVsdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ4Njg5CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL3J1bi1qYXZhc2NyaXB0
Y29yZS10ZXN0czoKKyAgICAgICAgKHJ1bkpTQ1N0cmVzc1Rlc3RzKToKKyAgICAgICAgKiBTY3Jp
cHRzL3J1bi1qc2Mtc3RyZXNzLXRlc3RzOgorCiAyMDE1LTA4LTMxICBKYXNvbiBNYXJjZWxsICA8
am1hcmNlbGxAYXBwbGUuY29tPgogCiAgICAgICAgIE1vZGlmeSBwcmVwYXJlLUNoYW5nZWxvZyB0
byBiZSBhd2FyZSBvZiBmaWxlcyB0aGF0IGFyZSBtYXJrZWQgYXMgdGVzdHMgYXMgd2VsbCBhcyBm
aWxlcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9ydW4tamF2YXNjcmlwdGNvcmUtdGVzdHMg
Yi9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwppbmRleCA0OTQxZDdmN2Jl
ODBjNGYwNzhiOGEwYWI5Zjg1YjVkZGRhMTFmMTg3Li4yZTY5MzVhY2M0OTE3MDkyNWE3ZDVjNGU3
YTliMWMwMWE3ZTA1OWUyIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0
Y29yZS10ZXN0cworKysgYi9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cwpA
QCAtMjgzLDcgKzI4Myw4IEBAIHN1YiBydW5KU0NTdHJlc3NUZXN0cwogICAgICAgICAiUGVyZm9y
bWFuY2VUZXN0cy9TdW5TcGlkZXIvcHJvZmlsZXItdGVzdC55YW1sIiwKICAgICAgICAgIkxheW91
dFRlc3RzL2pzYy1sYXlvdXQtdGVzdHMueWFtbCIsCiAgICAgICAgICJTb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvdHlwZVByb2ZpbGVyLnlhbWwiLAotICAgICAgICAiU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL2NvbnRyb2xGbG93UHJvZmlsZXIueWFtbCIKKyAgICAgICAgIlNvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9jb250cm9sRmxvd1Byb2ZpbGVyLnlhbWwiLAorICAgICAgICAi
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMueWFtbCIKICAgICApOwogICAgIGlm
IChpc1dpbmRvd3MoKSAmJiAhaXNDeWd3aW4oKSkgewogICAgICAgICBzaGlmdCBAanNjU3RyZXNz
RHJpdmVyQ21kOyAjIFJlbW92ZSAvdXNyL2Jpbi9lbnYKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvcnVuLWpzYy1zdHJlc3MtdGVzdHMgYi9Ub29scy9TY3JpcHRzL3J1bi1qc2Mtc3RyZXNzLXRl
c3RzCmluZGV4IDg5MjlhNTkxYWYwNTM0OGEwMjVjODUxMDFiMzQ1MGVjM2M0MTExOGIuLjJiNzE3
ODhiMzk3ZTdjOTgwZjVhMmMwZDY5MDdlOTY1MTY2ZTgzYzAgMTAwNzU1Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvcnVuLWpzYy1zdHJlc3MtdGVzdHMKKysrIGIvVG9vbHMvU2NyaXB0cy9ydW4tanNjLXN0
cmVzcy10ZXN0cwpAQCAtODcxLDYgKzg3MSwyOCBAQCBkZWYgcnVuQ29udHJvbEZsb3dQcm9maWxl
cgogICAgIGVuZAogZW5kCiAKK2RlZiBydW5Nb2R1bGVzCisgICAgcnVuKCJkZWZhdWx0LW1vZHVs
ZXMiLCAiLW0iKQorICAgIHJ1bigiYWx3YXlzLXRyaWdnZXItY29weS1waGFzZS1tb2R1bGVzIiwg
Ii1tIiwgIi0tbWluSGVhcFV0aWxpemF0aW9uPTIuMCIsICItLW1pbkNvcGllZEJsb2NrVXRpbGl6
YXRpb249Mi4wIikKKworICAgIGlmICEkaml0VGVzdHMKKyAgICAgICAgcmV0dXJuCisgICAgZW5k
CisKKyAgICBydW4oIm5vLWxsaW50LW1vZHVsZXMiLCAiLW0iLCAiLS11c2VMTEludD1mYWxzZSIp
CisgICAgcnVuKCJuby1jaml0LXZhbGlkYXRlLXBoYXNlcy1tb2R1bGVzIiwgIi1tIiwgIi0tdmFs
aWRhdGVCeXRlY29kZT10cnVlIiwgIi0tdmFsaWRhdGVHcmFwaEF0RWFjaFBoYXNlPXRydWUiLCAq
Tk9fQ0pJVF9PUFRJT05TKQorICAgIHJ1bigiZGZnLWVhZ2VyLW1vZHVsZXMiLCAiLW0iLCAqRUFH
RVJfT1BUSU9OUykKKyAgICBydW4oImRmZy1lYWdlci1uby1jaml0LXZhbGlkYXRlLW1vZHVsZXMi
LCAiLW0iLCAiLS12YWxpZGF0ZUdyYXBoPXRydWUiLCAqKE5PX0NKSVRfT1BUSU9OUyArIEVBR0VS
X09QVElPTlMpKQorICAgIGlmICRlbmFibGVGVEwKKyAgICAgICAgcnVuKCJkZWZhdWx0LWZ0bC1t
b2R1bGVzIiwgIi1tIiwgKkZUTF9PUFRJT05TKQorICAgICAgICBydW4oImZ0bC1uby1jaml0LXZh
bGlkYXRlLW1vZHVsZXMiLCAiLW0iLCAiLS12YWxpZGF0ZUdyYXBoPXRydWUiLCAqKEZUTF9PUFRJ
T05TICsgTk9fQ0pJVF9PUFRJT05TKSkKKyAgICAgICAgcnVuKCJmdGwtbm8tY2ppdC1uby1pbmxp
bmUtdmFsaWRhdGUtbW9kdWxlcyIsICItbSIsICItLXZhbGlkYXRlR3JhcGg9dHJ1ZSIsICItLW1h
eGltdW1JbmxpbmluZ0RlcHRoPTEiLCAqKEZUTF9PUFRJT05TICsgTk9fQ0pJVF9PUFRJT05TKSkK
KyAgICAgICAgcnVuKCJmdGwtZWFnZXItbW9kdWxlcyIsICItbSIsICooRlRMX09QVElPTlMgKyBF
QUdFUl9PUFRJT05TKSkKKyAgICAgICAgcnVuKCJmdGwtZWFnZXItbm8tY2ppdC1tb2R1bGVzIiwg
Ii1tIiwgIi0tdmFsaWRhdGVHcmFwaD10cnVlIiwgKihGVExfT1BUSU9OUyArIE5PX0NKSVRfT1BU
SU9OUyArIEVBR0VSX09QVElPTlMpKQorICAgICAgICBydW4oImZ0bC1uby1jaml0LXNtYWxsLXBv
b2wtbW9kdWxlcyIsICItbSIsICItLWppdE1lbW9yeVJlc2VydmF0aW9uU2l6ZT01MDAwMCIsICoo
RlRMX09QVElPTlMgKyBOT19DSklUX09QVElPTlMpKQorICAgIGVuZAorZW5kCisKIGRlZiBydW5M
YXlvdXRUZXN0KGtpbmQsICpvcHRpb25zKQogICAgIHJhaXNlIHVubGVzcyAkYmVuY2htYXJrLnRv
X3MgPX4gL1wuanMkLwogICAgIHRlc3ROYW1lID0gJH4ucHJlX21hdGNoCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260571</attachid>
            <date>2015-09-03 23:29:58 -0700</date>
            <delta_ts>2015-09-04 14:24:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148689-20150903232957.patch</filename>
            <type>text/plain</type>
            <size>96176</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg5MzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
MTkwY2I3YzAwN2JhZGU1YTI2NmYwNTdkYTUyMmZmYzUwY2M0ODQ0Li40NGY5NDJiZGQ4NTc1ODlh
NjhmYjkwMzM1MDdkZTgxNDhkMjRjZGZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwxNzQgQEAKIDIwMTUtMDktMDMgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFp
bC5jb20+CiAKKyAgICAgICAgW0VTNl0gRW5hYmxlIEVTNiBNb2R1bGUgaW4gSlNDIHNoZWxsIGJ5
IGRlZmF1bHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0ODY4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEVuYWJsZSBFUzYgTW9kdWxlcyBpbiBKU0Mgc2hlbGwgYnkgZGVmYXVsdC4gQ29tcGlsZSB0aW1l
IGZsYWcgaXMgbGVmdCBmb3IgV2ViQ29yZS4KKyAgICAgICAgU2luY2UgdGhlIGVudHJ5IHBvaW50
IHRvIGV2YWx1YXRlIHRoZSBtb2R1bGVzIGFyZSBjb21wbGV0ZWx5IHNlcGFyYXRlZCBmcm9tIHRo
ZSB1c3VhbAorICAgICAgICBlbnRyeSBwb2ludCB0byBldmFsdWF0ZSB0aGUgc2NyaXB0LCB3ZSBj
YW4gc2FmZWx5IGVuYWJsZSBFUzYgbW9kdWxlcyBpbiBKU0Mgc2hlbGwuCisKKyAgICAgICAgQW5k
IGFkZCBidW5jaCBvZiB0ZXN0cyBmb3IgRVM2IE1vZHVsZXMuCisKKyAgICAgICAgKiBqc2MuY3Bw
OgorICAgICAgICAoR2xvYmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgIChmdW5j
dGlvbkxvYWRNb2R1bGUpOgorICAgICAgICAocnVuV2l0aFNjcmlwdHMpOgorICAgICAgICAocHJp
bnRVc2FnZVN0YXRlbWVudCk6IERlbGV0ZWQuCisgICAgICAgIChDb21tYW5kTGluZTo6cGFyc2VB
cmd1bWVudHMpOiBEZWxldGVkLgorICAgICAgICAqIHBhcnNlci9QYXJzZXIuY3BwOgorICAgICAg
ICAoSlNDOjpQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcik6IERlbGV0ZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy55YW1sOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2Fs
aWFzaW5nLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5r
LTIuanM6IEFkZGVkLgorICAgICAgICAoZXhwb3J0LmxldC5DYXBwdWNjaW5vLnN0cmluZ19hcHBl
YXJlZF9oZXJlLmV4cG9ydC5jaGFuZ2VDYXBwdWNjaW5vKToKKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2FsaWFzaW5nL2RyaW5rLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5jaGFuZ2VDb2Nv
YSk6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6LmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6
LzIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZGVmYXVsdC1lcnJvci9tYWlu
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2RlZmF1bHQtdmFsdWUtY2FzZS1z
aG91bGQtYmUtY29waWVkLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2RlZmF1
bHQtdmFsdWUtY2FzZS1zaG91bGQtYmUtY29waWVkL21vZHVsZS5qczogQWRkZWQuCisgICAgICAg
IChleHBvcnQuY2hhbmdlVmFsdWUpOgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZGVmYXVsdHMu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZGVmYXVsdHMvQ2FwcHVjY2luby5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9kZWZhdWx0cy9Db2NvYS5qczogQWRk
ZWQuCisgICAgICAgIChleHBvcnQuZGVmYXVsdC5Db2NvYSk6CisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9kZWZhdWx0cy9NYXRjaGEuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMv
ZGVzdHJ1Y3R1cmluZy1leHBvcnQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMv
ZGVzdHJ1Y3R1cmluZy1leHBvcnQvYXJyYXkuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21v
ZHVsZXMvZGVzdHJ1Y3R1cmluZy1leHBvcnQvbWFpbi5qczogQWRkZWQuCisgICAgICAgICogdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMS5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzEwLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMTEuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8yLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvMy5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGlj
LzQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5
Y2xpYy81LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRl
ci1jeWNsaWMvNi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItY3ljbGljLzcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLWN5Y2xpYy84LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4
ZWN1dGlvbi1vcmRlci1jeWNsaWMvOS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxl
cy9leGVjdXRpb24tb3JkZXItZGFnLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci1kYWcvMS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxl
cy9leGVjdXRpb24tb3JkZXItZGFnLzEwLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21v
ZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy80LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9t
b2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzYuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy83LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvOC5qczogQWRkZWQuCisgICAgICAgICogdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzkuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8xLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8yLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8zLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zZWxmLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzEuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcvMi5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2libGlu
Zy8zLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10
cmVlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10
cmVlLzEuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXRyZWUvMTAuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9y
ZGVyLXRyZWUvMTEuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXRyZWUvMi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItdHJlZS8zLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4ZWN1
dGlvbi1vcmRlci10cmVlLzQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvZXhl
Y3V0aW9uLW9yZGVyLXRyZWUvNS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItdHJlZS82LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci10cmVlLzcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvOC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS85LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9t
b2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9leHBvcnQtY29uZmxpY3Qtb2svQS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9leHBvcnQtY29uZmxpY3Qtb2svQi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy9leHBvcnQtY29uZmxpY3Qtb2svbWFpbi5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9leHBvcnQtZnJvbS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9l
eHBvcnQtZnJvbS9tYWluLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2V4cG9y
dC1mcm9tL3NlY29uZC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leHBvcnQt
d2l0aC1kZWNsYXJhdGlvbnMtbGlzdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxl
cy9leHBvcnQtd2l0aC1kZWNsYXJhdGlvbnMtbGlzdC9tYWluLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0cy9tb2R1bGVzL2V4cG9ydGVkLWZ1bmN0aW9uLW1heS1iZS1jYWxsZWQtYmVmb3JlLW1v
ZHVsZS1pcy1leGVjdXRlZC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leHBv
cnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQvMS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXkt
YmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQvMi5qczogQWRkZWQuCisgICAgICAg
IChleHBvcnQuYWRkKToKKyAgICAgICAgKGV4cG9ydC5yYWlzZSk6CisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9pbXBvcnQtZXJyb3IuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMv
aW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMtMS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFtYmlndW91cy0yLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtYW1iaWd1b3VzLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtZGVmYXVs
dC1mcm9tLXN0YXItMi5qczogQWRkZWQuCisgICAgICAgIChleHBvcnQuZGVmYXVsdC5Db2NvYSk6
CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWRlZmF1bHQtZnJv
bS1zdGFyLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9l
eHBvcnQtbm90LWZvdW5kLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9y
dC1lcnJvci9pbXBvcnQtYW1iaWd1b3VzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1
bGVzL2ltcG9ydC1lcnJvci9pbXBvcnQtZGVmYXVsdC1mcm9tLXN0YXIuanM6IEFkZGVkLgorICAg
ICAgICAqIHRlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1ub3QtZm91bmQuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW1wb3J0ZWQtYmluZGluZ3MtYXJlLWltbXV0
YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5n
cy1hcmUtaW1tdXRhYmxlL2JpbmRpbmdzLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5mdW5j
dGlvbkRlY2xhcmF0aW9uKToKKyAgICAgICAgKGV4cG9ydC5jbGFzc0RlY2xhcmF0aW9uKToKKyAg
ICAgICAgKiB0ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJpbmRpbmdzLWNhbi1iZS1jaGFuZ2VkLWlu
LW9yaWdpbmFsLW1vZHVsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbXBv
cnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5hbC1tb2R1bGUvYmluZGluZ3Mu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9y
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJv
ci9pbmRpcmVjdC1leHBvcnQtYW1iaWd1b3VzLTIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMt
My5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJy
b3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy00LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtYW1iaWd1b3Vz
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJv
ci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9t
b2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0zLmpz
OiBBZGRlZC4KKyAgICAgICAgKGV4cG9ydC5kZWZhdWx0LkNvY29hKToKKyAgICAgICAgKiB0ZXN0
cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC5q
czogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3Iv
aW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9t
b2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtbm90LWZvdW5kLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL21vZHVsZS1ldmFsLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL21vZHVsZS1ldmFsL0EuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3RzL21vZHVsZXMvbW9kdWxlLWV2YWwvQi5qczogQWRkZWQuCisgICAgICAgICogdGVz
dHMvbW9kdWxlcy9tb2R1bGUtZXZhbC9kcmluay5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9tb2R1bGUtaXMtc3RyaWN0LWNvZGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMv
bW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy0yLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTMuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3Vv
dXMtNC5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1
b3VzL2FtYmlndW91cy5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3Bh
Y2UtZXJyb3IuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVy
cm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTIu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVz
cGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTMuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2Nh
bC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTQuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1z
aG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlk
ZS1nbG9iYWwtYW1iaWd1aXR5LTYuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMv
bmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwt
YW1iaWd1aXR5LTcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNl
LWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHouanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei9BLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQi5qczogQWRkZWQuCisgICAg
ICAgIChleHBvcnQubGF0ZXIpOgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRk
ei9tYWluLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS5qczog
QWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvYWRkaXRpb25hbC1kcmlu
ay5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvZHJpbmsuanM6
IEFkZGVkLgorICAgICAgICAoZXhwb3J0LmRlZmF1bHQuY2hhbmdlQ2FwcHVjY2lubyk6CisgICAg
ICAgICogdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvbW9yZS1hZGRpdGlvbmFsLWRyaW5rLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9tb2R1bGVzL3Jlc291cmNlcy9hc3NlcnQuanM6IEFkZGVk
LgorICAgICAgICAoZXhwb3J0LnNob3VsZEJlKToKKyAgICAgICAgKGV4cG9ydC5zaG91bGRUaHJv
dyk6CisgICAgICAgICogdGVzdHMvbW9kdWxlcy9zY29wZXMuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3RzL21vZHVsZXMvc2NvcGVzL2FkZGl0aW9uYWwtZHJpbmsuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3RzL21vZHVsZXMvc2NvcGVzL2RyaW5rLmpzOiBBZGRlZC4KKyAgICAgICAgKGV4cG9y
dC5kZWZhdWx0LmNoYW5nZUNhcHB1Y2Npbm8pOgorICAgICAgICAqIHRlc3RzL21vZHVsZXMvc2Nv
cGVzL21vcmUtYWRkaXRpb25hbC1kcmluay5qczogQWRkZWQuCisgICAgICAgICogdGVzdHMvbW9k
dWxlcy90aGlzLXNob3VsZC1iZS11bmRlZmluZWQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Rz
L3N0cmVzcy9tb2R1bGVzLXN5bnRheC1lcnJvci13aXRoLW5hbWVzLmpzOgorICAgICAgICAqIHRl
c3RzL3N0cmVzcy9tb2R1bGVzLXN5bnRheC1lcnJvci5qczoKKyAgICAgICAgKiB0ZXN0cy9zdHJl
c3MvbW9kdWxlcy1zeW50YXguanM6CisKKzIwMTUtMDktMDMgIFl1c3VrZSBTdXp1a2kgIDx1dGF0
YW5lLnRlYUBnbWFpbC5jb20+CisKICAgICAgICAgW0VTNl0gSW1wbGVtZW50IE1vZHVsZU5hbWVz
cGFjZU9iamVjdAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTQ4NzA1CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qc2MuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggNzRjYjMzMTNlYWRiMDE0OGFhYjI4
YWIyODUwMzI1ZWFhNWExZmUxNy4uODBhZjc4MTQ0MGJlY2Q2MDI2NzJhYTBhMzdmMzAzYTliODZj
N2Y2MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTQ5OSw5ICs0OTksOCBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbkRyYWluTWljcm90YXNrcyhFeGVjU3Rh
dGUqKTsKICNpZiBFTkFCTEUoV0VCQVNTRU1CTFkpCiBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBmdW5jdGlvbkxvYWRXZWJBc3NlbWJseShFeGVjU3RhdGUqKTsKICNlbmRpZgot
I2lmIEVOQUJMRShFUzZfTU9EVUxFUykKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGZ1bmN0aW9uTG9hZE1vZHVsZShFeGVjU3RhdGUqKTsKIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uQ2hlY2tNb2R1bGVTeW50YXgoRXhlY1N0YXRlKik7Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShTQU1QTElOR19GTEFHUykKIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uU2V0U2FtcGxpbmdGbGFncyhFeGVjU3RhdGUqKTsKQEAg
LTY3OCw5ICs2NzcsOCBAQCBjbGFzcyBHbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNHbG9iYWxPYmpl
Y3QgewogI2lmIEVOQUJMRShXRUJBU1NFTUJMWSkKICAgICAgICAgYWRkRnVuY3Rpb24odm0sICJs
b2FkV2ViQXNzZW1ibHkiLCBmdW5jdGlvbkxvYWRXZWJBc3NlbWJseSwgMSk7CiAjZW5kaWYKLSNp
ZiBFTkFCTEUoRVM2X01PRFVMRVMpCisgICAgICAgIGFkZEZ1bmN0aW9uKHZtLCAibG9hZE1vZHVs
ZSIsIGZ1bmN0aW9uTG9hZE1vZHVsZSwgMSk7CiAgICAgICAgIGFkZEZ1bmN0aW9uKHZtLCAiY2hl
Y2tNb2R1bGVTeW50YXgiLCBmdW5jdGlvbkNoZWNrTW9kdWxlU3ludGF4LCAxKTsKLSNlbmRpZgog
CiAgICAgICAgIEpTQXJyYXkqIGFycmF5ID0gY29uc3RydWN0RW1wdHlBcnJheShnbG9iYWxFeGVj
KCksIDApOwogICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGFyZ3VtZW50cy5zaXplKCk7
ICsraSkKQEAgLTEzNjAsNyArMTM1OCwzMCBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGZ1bmN0aW9uTG9hZFdlYkFzc2VtYmx5KEV4ZWNTdGF0ZSogZXhlYykKIH0KICNlbmRpZgogCi0j
aWYgRU5BQkxFKEVTNl9NT0RVTEVTKQorRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5j
dGlvbkxvYWRNb2R1bGUoRXhlY1N0YXRlKiBleGVjKQoreworICAgIFN0cmluZyBmaWxlTmFtZSA9
IGV4ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpLT52YWx1ZShleGVjKTsKKyAgICBWZWN0
b3I8Y2hhcj4gc2NyaXB0OworICAgIGlmICghZmlsbEJ1ZmZlcldpdGhDb250ZW50c09mRmlsZShm
aWxlTmFtZSwgc2NyaXB0KSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShleGVjLT52
bSgpLnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZUVycm9yKGV4ZWMsIEFTQ0lJTGl0ZXJhbCgi
Q291bGQgbm90IG9wZW4gZmlsZS4iKSkpKTsKKworICAgIEpTSW50ZXJuYWxQcm9taXNlKiBwcm9t
aXNlID0gZXZhbHVhdGVNb2R1bGUoZXhlYywgZmlsZU5hbWUpOworICAgIGlmIChleGVjLT5oYWRF
eGNlcHRpb24oKSkKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgp
KTsKKworICAgIEpTVmFsdWUgZXJyb3I7CisgICAgSlNGdW5jdGlvbiogZXJyb3JIYW5kbGVyID0g
SlNOYXRpdmVTdGRGdW5jdGlvbjo6Y3JlYXRlKGV4ZWMtPnZtKCksIGV4ZWMtPmxleGljYWxHbG9i
YWxPYmplY3QoKSwgMSwgU3RyaW5nKCksIFsmXShFeGVjU3RhdGUqIGV4ZWMpIHsKKyAgICAgICAg
ZXJyb3IgPSBleGVjLT5hcmd1bWVudCgwKTsKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1VuZGVmaW5lZCgpKTsKKyAgICB9KTsKKworICAgIHByb21pc2UtPnRoZW4oZXhlYywgbnVs
bHB0ciwgZXJyb3JIYW5kbGVyKTsKKyAgICBleGVjLT52bSgpLmRyYWluTWljcm90YXNrcygpOwor
ICAgIGlmIChlcnJvcikKKyAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShleGVjLT52bSgp
LnRocm93RXhjZXB0aW9uKGV4ZWMsIGVycm9yKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShqc1VuZGVmaW5lZCgpKTsKK30KKwogRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5j
dGlvbkNoZWNrTW9kdWxlU3ludGF4KEV4ZWNTdGF0ZSogZXhlYykKIHsKICAgICBTdHJpbmcgc291
cmNlID0gZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYyktPnZhbHVlKGV4ZWMpOwpAQCAt
MTM3Niw3ICsxMzk3LDYgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbkNo
ZWNrTW9kdWxlU3ludGF4KEV4ZWNTdGF0ZSogZXhlYykKICAgICAgICAgZXhlYy0+dm0oKS50aHJv
d0V4Y2VwdGlvbihleGVjLCBqc05vbnRyaXZpYWxTdHJpbmcoZXhlYywgdG9TdHJpbmcoIlN5bnRh
eEVycm9yOiAiLCBlcnJvci5tZXNzYWdlKCksICI6IiwgZXJyb3IubGluZSgpKSkpOwogICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUoanNOdW1iZXIoc3RvcFdhdGNoLmdldEVsYXBzZWRNUygpKSk7
CiB9Ci0jZW5kaWYKIAogLy8gVXNlIFNFSCBmb3IgUmVsZWFzZSBidWlsZHMgb25seSB0byBnZXQg
cmlkIG9mIHRoZSBjcmFzaCByZXBvcnQgZGlhbG9nCiAvLyAobHVja2lseSB0aGUgc2FtZSB0ZXN0
cyBmYWlsIGluIFJlbGVhc2UgYW5kIERlYnVnIGJ1aWxkcyBzbyBmYXIpLiBOZWVkIHRvCkBAIC0x
NTA0LDMxICsxNTI0LDIzIEBAIHN0YXRpYyBib29sIHJ1bldpdGhTY3JpcHRzKEdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBjb25zdCBWZWN0b3I8U2NyaXB0PiYgc2NyCiAgICAgVk0mIHZtID0g
Z2xvYmFsT2JqZWN0LT52bSgpOwogICAgIGJvb2wgc3VjY2VzcyA9IHRydWU7CiAKLSNpZiBFTkFC
TEUoRVM2X01PRFVMRVMpCiAgICAgSlNGdW5jdGlvbiogZXJyb3JIYW5kbGVyID0gSlNOYXRpdmVT
dGRGdW5jdGlvbjo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIDEsIFN0cmluZygpLCBbJl0oRXhl
Y1N0YXRlKiBleGVjKSB7CiAgICAgICAgIHN1Y2Nlc3MgPSBmYWxzZTsKICAgICAgICAgZHVtcEV4
Y2VwdGlvbihnbG9iYWxPYmplY3QsIGV4ZWMtPmFyZ3VtZW50KDApKTsKICAgICAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKICAgICB9KTsKLSNlbmRpZgogCiAjaWYg
RU5BQkxFKFNBTVBMSU5HX0ZMQUdTKQogICAgIFNhbXBsaW5nRmxhZ3M6OnN0YXJ0KCk7CiAjZW5k
aWYKIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2NyaXB0cy5zaXplKCk7IGkrKykgewot
I2lmIEVOQUJMRShFUzZfTU9EVUxFUykKICAgICAgICAgSlNJbnRlcm5hbFByb21pc2UqIHByb21p
c2UgPSBudWxscHRyOwotI2VuZGlmCiAgICAgICAgIGlmIChzY3JpcHRzW2ldLmlzRmlsZSkgewog
ICAgICAgICAgICAgZmlsZU5hbWUgPSBzY3JpcHRzW2ldLmFyZ3VtZW50OwotICAgICAgICAgICAg
aWYgKG1vZHVsZSkgewotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKKyAgICAgICAgICAgIGlmICht
b2R1bGUpCiAgICAgICAgICAgICAgICAgcHJvbWlzZSA9IGV2YWx1YXRlTW9kdWxlKGdsb2JhbE9i
amVjdC0+Z2xvYmFsRXhlYygpLCBmaWxlTmFtZSk7Ci0jZWxzZQotICAgICAgICAgICAgICAgIFJF
TEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZW5kaWYKLSAgICAgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAoIWZpbGxCdWZmZXJXaXRo
Q29udGVudHNPZkZpbGUoZmlsZU5hbWUsIHNjcmlwdEJ1ZmZlcikpCiAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsgLy8gZmFpbCBlYXJseSBzbyB3ZSBjYW4gY2F0Y2ggbWlzc2luZyBm
aWxlcwogICAgICAgICAgICAgICAgIHNjcmlwdCA9IHNjcmlwdEJ1ZmZlci5kYXRhKCk7CkBAIC0x
NTQxLDE1ICsxNTUzLDExIEBAIHN0YXRpYyBib29sIHJ1bldpdGhTY3JpcHRzKEdsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBjb25zdCBWZWN0b3I8U2NyaXB0PiYgc2NyCiAgICAgICAgIHZtLnN0
YXJ0U2FtcGxpbmcoKTsKIAogICAgICAgICBpZiAobW9kdWxlKSB7Ci0jaWYgRU5BQkxFKEVTNl9N
T0RVTEVTKQogICAgICAgICAgICAgaWYgKCFwcm9taXNlKQogICAgICAgICAgICAgICAgIHByb21p
c2UgPSBldmFsdWF0ZU1vZHVsZShnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKSwganNjU291cmNl
KHNjcmlwdCwgZmlsZU5hbWUpKTsKICAgICAgICAgICAgIGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhl
YygpLT5jbGVhckV4Y2VwdGlvbigpOwogICAgICAgICAgICAgcHJvbWlzZS0+dGhlbihnbG9iYWxP
YmplY3QtPmdsb2JhbEV4ZWMoKSwgbnVsbHB0ciwgZXJyb3JIYW5kbGVyKTsKICAgICAgICAgICAg
IGdsb2JhbE9iamVjdC0+dm0oKS5kcmFpbk1pY3JvdGFza3MoKTsKLSNlbHNlCi0gICAgICAgICAg
ICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwotI2VuZGlmCiAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICBOYWtlZFB0cjxFeGNlcHRpb24+IGV2YWx1YXRpb25FeGNlcHRpb247CiAg
ICAgICAgICAgICBKU1ZhbHVlIHJldHVyblZhbHVlID0gZXZhbHVhdGUoZ2xvYmFsT2JqZWN0LT5n
bG9iYWxFeGVjKCksIGpzY1NvdXJjZShzY3JpcHQsIGZpbGVOYW1lKSwgSlNWYWx1ZSgpLCBldmFs
dWF0aW9uRXhjZXB0aW9uKTsKQEAgLTE2NDgsOSArMTY1Niw3IEBAIHN0YXRpYyBOT19SRVRVUk4g
dm9pZCBwcmludFVzYWdlU3RhdGVtZW50KGJvb2wgaGVscCA9IGZhbHNlKQogICAgIGZwcmludGYo
c3RkZXJyLCAiICAtZiAgICAgICAgIFNwZWNpZmllcyBhIHNvdXJjZSBmaWxlIChkZXByZWNhdGVk
KVxuIik7CiAgICAgZnByaW50ZihzdGRlcnIsICIgIC1ofC0taGVscCAgUHJpbnRzIHRoaXMgaGVs
cCBtZXNzYWdlXG4iKTsKICAgICBmcHJpbnRmKHN0ZGVyciwgIiAgLWkgICAgICAgICBFbmFibGVz
IGludGVyYWN0aXZlIG1vZGUgKGRlZmF1bHQgaWYgbm8gZmlsZXMgYXJlIHNwZWNpZmllZClcbiIp
OwotI2lmIEVOQUJMRShFUzZfTU9EVUxFUykKICAgICBmcHJpbnRmKHN0ZGVyciwgIiAgLW0gICAg
ICAgICBFeGVjdXRlIGFzIGEgbW9kdWxlXG4iKTsKLSNlbmRpZgogI2lmIEhBVkUoU0lHTkFMX0gp
CiAgICAgZnByaW50ZihzdGRlcnIsICIgIC1zICAgICAgICAgSW5zdGFsbHMgc2lnbmFsIGhhbmRs
ZXJzIHRoYXQgZXhpdCBvbiBhIGNyYXNoIChVbml4IHBsYXRmb3JtcyBvbmx5KVxuIik7CiAjZW5k
aWYKQEAgLTE3MDIsMTIgKzE3MDgsMTAgQEAgdm9pZCBDb21tYW5kTGluZTo6cGFyc2VBcmd1bWVu
dHMoaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogICAgICAgICAgICAgbV9wcm9maWxlck91dHB1dCA9
IGFyZ3ZbaV07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotI2lmIEVOQUJMRShF
UzZfTU9EVUxFUykKICAgICAgICAgaWYgKCFzdHJjbXAoYXJnLCAiLW0iKSkgewogICAgICAgICAg
ICAgbV9tb2R1bGUgPSB0cnVlOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSNl
bmRpZgogICAgICAgICBpZiAoIXN0cmNtcChhcmcsICItcyIpKSB7CiAjaWYgSEFWRShTSUdOQUxf
SCkKICAgICAgICAgICAgIHNpZ25hbChTSUdJTEwsIF9leGl0KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCA3ZjA1MDFjNjUzMTJkYjRkNGZmODVkYzRkYjEzYWYy
NjMxZGRlYzYyLi5jMDlkNTQwNzk1NGFlMWQwNmNlODE2NTQzMTdmNzZlOThjNDMzNjE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC0yNjksMTAgKzI2OSw4IEBA
IFN0cmluZyBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VJbm5lcihjb25zdCBJZGVudGlmaWVyJiBj
YWxsZWVOYW1lLCBTb3VyY2VQYXJzZU1vCiAgICAgaWYgKCFoYXNFcnJvcigpKSB7CiAgICAgICAg
IGlmIChpc0Fycm93RnVuY3Rpb25Cb2R5RXhwcmVzc2lvbikKICAgICAgICAgICAgIHNvdXJjZUVs
ZW1lbnRzID0gcGFyc2VBcnJvd0Z1bmN0aW9uU2luZ2xlRXhwcmVzc2lvbkJvZHlTb3VyY2VFbGVt
ZW50cyhjb250ZXh0KTsKLSNpZiBFTkFCTEUoRVM2X01PRFVMRVMpCiAgICAgICAgIGVsc2UgaWYg
KGlzTW9kdWxlUGFyc2VNb2RlKHBhcnNlTW9kZSkpCiAgICAgICAgICAgICBzb3VyY2VFbGVtZW50
cyA9IHBhcnNlTW9kdWxlU291cmNlRWxlbWVudHMoY29udGV4dCwgcGFyc2VNb2RlKTsKLSNlbmRp
ZgogICAgICAgICBlbHNlCiAgICAgICAgICAgICBzb3VyY2VFbGVtZW50cyA9IHBhcnNlU291cmNl
RWxlbWVudHMoY29udGV4dCwgQ2hlY2tGb3JTdHJpY3RNb2RlKTsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy55YW1sIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMueWFtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYjQ3OGYxZjY0NDlhMTJm
ZWU4ZDRjNjFmNTI5MDBiNWQwODljNWFmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMueWFtbApAQCAtMCwwICsxLDI1IEBACisjIENvcHlyaWdo
dCAoQykgMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMKKyMgMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisj
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMg
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAi
QVMgSVMiIEFORCBBTlkKKyMgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkKKyMgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworIyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyMgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GCisjIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisKKy0gcGF0aDogbW9kdWxlcworICBjbWQ6IHJ1bk1vZHVsZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5n
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvYWxpYXNpbmcuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uY2Y1ZTNlZWU0Nzk1ODkyOTIzMzM0NjRlMjI5ZGM4OWQ1Mjc2NjEwYgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5n
LmpzCkBAIC0wLDAgKzEsMTggQEAKK2ltcG9ydCB7IENvY29hIGFzIERyaW5rLCBjaGFuZ2VDb2Nv
YSwgU3ViRHJpbmssIGNoYW5nZUNhcHB1Y2Npbm8gfSBmcm9tICIuL2FsaWFzaW5nL2RyaW5rLmpz
IgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNz
ZXJ0LmpzIjsKKworc2hvdWxkQmUoRHJpbmssICJDb2NvYSIpOworc2hvdWxkQmUoU3ViRHJpbmss
ICJDYXBwdWNjaW5vIik7CitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgQ29jb2EKK30sIGBSZWZl
cmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogQ29jb2FgKTsKKworc2hvdWxkVGhyb3co
KCkgPT4geworICAgIENhcHB1Y2Npbm8KK30sIGBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2
YXJpYWJsZTogQ2FwcHVjY2lub2ApOworCitjaGFuZ2VDb2NvYSgiTW9jaGEiKTsKK3Nob3VsZEJl
KERyaW5rLCAiTW9jaGEiKTsKKworY2hhbmdlQ2FwcHVjY2lubygiTWF0Y2hhIik7CitzaG91bGRC
ZShTdWJEcmluaywgIk1hdGNoYSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvYWxpYXNpbmcvZHJpbmstMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5rLTIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTkwYWM4YmZk
MDYxYjBkZmIzMTMyMWQ3Mzg1YzRkODQxNGM1Y2RlNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2FsaWFzaW5nL2RyaW5rLTIuanMKQEAgLTAs
MCArMSw1IEBACitleHBvcnQgbGV0IENhcHB1Y2Npbm8gPSAiQ2FwcHVjY2lubyIKKworZXhwb3J0
IGZ1bmN0aW9uIGNoYW5nZUNhcHB1Y2Npbm8odmFsdWUpIHsKKyAgICBDYXBwdWNjaW5vID0gdmFs
dWU7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9h
bGlhc2luZy9kcmluay5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Fs
aWFzaW5nL2RyaW5rLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkYTg0YTBmOGYwYWFhMGE0OTNjOWFiMTRlNjM4
NGRlZmYzMWM2NjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9hbGlhc2luZy9kcmluay5qcwpAQCAtMCwwICsxLDcgQEAKK2V4cG9ydCBsZXQg
Q29jb2EgPSAiQ29jb2EiOworZXhwb3J0IGZ1bmN0aW9uIGNoYW5nZUNvY29hKHZhbHVlKSB7Cisg
ICAgQ29jb2EgPSB2YWx1ZTsKK30KKworaW1wb3J0IHsgQ2FwcHVjY2lubyBhcyBTdWJEcmluaywg
Y2hhbmdlQ2FwcHVjY2lubyB9IGZyb20gImRyaW5rLTIuanMiCitleHBvcnQgeyBTdWJEcmluaywg
Y2hhbmdlQ2FwcHVjY2lubyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1Y2UtdGR6LmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1wcm9kdWNlLXRkei5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
MmJhZDYwYTVhYmY3YzU3MjJhMTYzYTA4NzU0MGZmNDNjZDhiYjliCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1wcm9kdWNl
LXRkei5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCB7IENvY29hLCBDYXBwdWNjaW5vLCBNYXRj
aGEgfSBmcm9tICIuL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcyIKK2ltcG9ydCB7IHNob3Vs
ZEJlIH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworLy8gQWxsIHRoaW5ncyBhcmUg
YWxyZWFkeSBzZXQuCitzaG91bGRCZShDb2NvYSwgIkNvY29hIik7CitzaG91bGRCZShDYXBwdWNj
aW5vLCAiQ2FwcHVjY2lubyIpOworc2hvdWxkQmUoTWF0Y2hhLCAiTWF0Y2hhIik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9jeWNsaWMtbWF5LXByb2R1
Y2UtdGR6LzEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9jeWNsaWMt
bWF5LXByb2R1Y2UtdGR6LzEuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDBjMjZmNjFiYjdhMGE2MDY0ODgzNTNh
MDZkYzY3YWQ0YTlkN2Q4YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMS5qcwpAQCAtMCwwICsxLDEy
IEBACitpbXBvcnQgeyBDYXBwdWNjaW5vLCBNYXRjaGEgfSBmcm9tICIuLzIuanMiCitpbXBvcnQg
eyBzaG91bGRUaHJvdywgc2hvdWxkQmUgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsK
KworZXhwb3J0IGxldCBDb2NvYSA9ICJDb2NvYSI7CisKKy8vIG1vZHVsZSAiMiIgaXMgbm90IGxv
YWRlZCB5ZXQsIFREWi4KK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBDYXBwdWNjaW5vOworfSwg
YFJlZmVyZW5jZUVycm9yOiBDYW5ub3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuYCk7
CisKKy8vIEJ1dCAiTWF0Y2hhIiBpcyB2YXJpYWJsZSAobm90IGxleGljYWwgdmFyaWFibGUpLiBJ
dCBpcyBhbHJlYWR5IGluaXRpYWxpemVkIGFzIHVuZGVmaW5lZC4KK3Nob3VsZEJlKE1hdGNoYSwg
dW5kZWZpbmVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2N5Y2xpYy1tYXktcHJvZHVjZS10ZHovMi5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMGYx
NjM5YjViYWNkYTRmZmVlNDNjMGIzN2EwZjNlOGJhMTc1ZDRkCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvY3ljbGljLW1heS1wcm9kdWNlLXRk
ei8yLmpzCkBAIC0wLDAgKzEsMTUgQEAKK2ltcG9ydCB7IENvY29hIH0gZnJvbSAiLi8xLmpzIgor
aW1wb3J0IHsgc2hvdWxkQmUgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworZXhw
b3J0IGxldCBDYXBwdWNjaW5vID0gIkNhcHB1Y2Npbm8iOworCitleHBvcnQgdmFyIE1hdGNoYSA9
ICJNYXRjaGEiOworCisvLyAxIGlzIGFscmVhZHkgbG9hZGVkLgorc2hvdWxkQmUoQ29jb2EsICJD
b2NvYSIpOworCitzaG91bGRCZShDYXBwdWNjaW5vLCAiQ2FwcHVjY2lubyIpOworc2hvdWxkQmUo
TWF0Y2hhLCAiTWF0Y2hhIik7CisKKy8vIEluZGlyZWN0bHkgZXhwb3J0ICJDb2NvYSIKK2V4cG9y
dCB7IENvY29hIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9kZWZhdWx0LWVycm9yL21haW4uanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9kZWZhdWx0LWVycm9yL21haW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGFhYjEzNTkxODM2NTU4
MjY4OGY1ODhjMWE5ZTUzYjE3NTY0YjQyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHQtZXJyb3IvbWFpbi5qcwpAQCAtMCwwICsx
IEBACitpbXBvcnQgIkEiOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvZGVmYXVsdC12YWx1ZS1jYXNlLXNob3VsZC1iZS1jb3BpZWQuanMgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9kZWZhdWx0LXZhbHVlLWNhc2Utc2hvdWxkLWJl
LWNvcGllZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NWM1MGU1YjlkZTk2YmJjNTEzZWRiNWVlODgxZmIyOGZh
N2RkMTY1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvZGVmYXVsdC12YWx1ZS1jYXNlLXNob3VsZC1iZS1jb3BpZWQuanMKQEAgLTAsMCArMSwx
MSBAQAoraW1wb3J0ICogYXMgbmFtZXNwYWNlIGZyb20gIi4vZGVmYXVsdC12YWx1ZS1jYXNlLXNo
b3VsZC1iZS1jb3BpZWQvbW9kdWxlLmpzIgoraW1wb3J0IHZhbHVlIGZyb20gIi4vZGVmYXVsdC12
YWx1ZS1jYXNlLXNob3VsZC1iZS1jb3BpZWQvbW9kdWxlLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUg
fSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCitzaG91bGRCZSh2YWx1ZSwgNDIpOwor
c2hvdWxkQmUobmFtZXNwYWNlLmRlZmF1bHQsIDQyKTsKKworbmFtZXNwYWNlLmNoYW5nZVZhbHVl
KDUwMDApOworCitzaG91bGRCZSh2YWx1ZSwgNDIpOworc2hvdWxkQmUobmFtZXNwYWNlLmRlZmF1
bHQsIDQyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2RlZmF1bHQtdmFsdWUtY2FzZS1zaG91bGQtYmUtY29waWVkL21vZHVsZS5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHQtdmFsdWUtY2FzZS1zaG91bGQtYmUt
Y29waWVkL21vZHVsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mY2VlMzM4M2RiNzRmMWI2ZWE2NjNkZDRiNDI1
NTBiNDQ2ZTUyMmRmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZGVmYXVsdC12YWx1ZS1jYXNlLXNob3VsZC1iZS1jb3BpZWQvbW9kdWxlLmpz
CkBAIC0wLDAgKzEsNyBAQAorbGV0IHZhbHVlID0gNDI7CisKK2V4cG9ydCBkZWZhdWx0IHZhbHVl
OworCitleHBvcnQgZnVuY3Rpb24gY2hhbmdlVmFsdWUodikgeworICAgIHZhbHVlID0gdjsKK30K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHRz
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZGVmYXVsdHMuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNmJmNzI3ZDllYTUwZjdiNDIzNTU1YTdlZDZiMWE5ODg3NzMzMzczYQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHRz
LmpzCkBAIC0wLDAgKzEsMTAgQEAKK2ltcG9ydCBDb2NvYSBmcm9tICIuL2RlZmF1bHRzL0NvY29h
LmpzIgoraW1wb3J0IHsgZGVmYXVsdCBhcyBDYXBwdWNjaW5vIH0gZnJvbSAiLi9kZWZhdWx0cy9D
YXBwdWNjaW5vLmpzIgoraW1wb3J0IEMyIGZyb20gIi4vZGVmYXVsdHMvQ2FwcHVjY2luby5qcyIK
K2ltcG9ydCBNYXRjaGEgZnJvbSAiLi9kZWZhdWx0cy9NYXRjaGEuanMiCitpbXBvcnQgeyBzaG91
bGRCZSB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5qcyI7CisKK3Nob3VsZEJlKG5ldyBDb2Nv
YSgpLnRhc3RlLCAnYXdlc29tZScpOworc2hvdWxkQmUoQ2FwcHVjY2lubywgJ0NhcHB1Y2Npbm8n
KTsKK3Nob3VsZEJlKEMyID09PSBDYXBwdWNjaW5vLCB0cnVlKTsKK3Nob3VsZEJlKE1hdGNoYSwg
J01hdGNoYScpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZGVmYXVsdHMvQ2FwcHVjY2luby5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2RlZmF1bHRzL0NhcHB1Y2Npbm8uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGU5MjY3MWUwMDA1ZDM1
ZTc5YzgzZGRhZWFkYjNlNmIwN2FkNDU0NAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2RlZmF1bHRzL0NhcHB1Y2Npbm8uanMKQEAgLTAsMCAr
MSw0IEBACisKK3ZhciBDYXBwdWNjaW5vID0gJ0NhcHB1Y2Npbm8nOworCitleHBvcnQgeyBDYXBw
dWNjaW5vIGFzIGRlZmF1bHQgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZGVmYXVsdHMvQ29jb2EuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9kZWZhdWx0cy9Db2NvYS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOTRhOTZjMWY1MjlmMTIx
MThhMjc3MzJjYmI3ZTE3YzgzNmIxMWE4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZGVmYXVsdHMvQ29jb2EuanMKQEAgLTAsMCArMSw1IEBA
CitleHBvcnQgZGVmYXVsdCBjbGFzcyBDb2NvYSB7CisgICAgY29uc3RydWN0b3IoKSB7CisgICAg
ICAgIHRoaXMudGFzdGUgPSAnYXdlc29tZSc7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZGVmYXVsdHMvTWF0Y2hhLmpzIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZGVmYXVsdHMvTWF0Y2hhLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmEyNmYyYWExY2Y4MzQ2Y2M0ODdkMTI2YjgxNGQwNDI5NmQ5ZjUyMDIKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9kZWZhdWx0cy9NYXRj
aGEuanMKQEAgLTAsMCArMSBAQAorZXhwb3J0IGRlZmF1bHQgJ01hdGNoYSc7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9kZXN0cnVjdHVyaW5nLWV4cG9y
dC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Rlc3RydWN0dXJpbmct
ZXhwb3J0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE2MWQ2MzEwZmMxM2E5ZGM0MzFlZWRhYjY5MjZiODU2ZWQ3
NDcwMTAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9kZXN0cnVjdHVyaW5nLWV4cG9ydC5qcwpAQCAtMCwwICsxLDEwIEBACitpbXBvcnQgKiBh
cyBuYW1lc3BhY2UgZnJvbSAiLi9kZXN0cnVjdHVyaW5nLWV4cG9ydC9tYWluLmpzIgoraW1wb3J0
IHsgYXJyYXkgfSBmcm9tICIuL2Rlc3RydWN0dXJpbmctZXhwb3J0L2FycmF5LmpzIgoraW1wb3J0
IHsgc2hvdWxkQmUgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCitzaG91bGRCZShK
U09OLnN0cmluZ2lmeShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhuYW1lc3BhY2UpKSwgYFsi
Q2FwcHVjY2lubyIsIkNvY29hIiwiTWF0Y2hhIl1gKTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5Db2Nv
YSwgJ0NvY29hJyk7CitzaG91bGRCZShuYW1lc3BhY2UuQ2FwcHVjY2lubywgJ0NhcHB1Y2Npbm8n
KTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5NYXRjaGEsICdNYXRjaGEnKTsKKworc2hvdWxkQmUoSlNP
Ti5zdHJpbmdpZnkoYXJyYXkpLCBgWzEsMiwzLDQsNSw2LDcsOCw5XWApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZGVzdHJ1Y3R1cmluZy1leHBvcnQv
YXJyYXkuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9kZXN0cnVjdHVy
aW5nLWV4cG9ydC9hcnJheS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MDlkOThiMzVkZTZiYjRlOWUzODg1MDVm
ZGU3ODQ5Nzg5NzJlN2NmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZGVzdHJ1Y3R1cmluZy1leHBvcnQvYXJyYXkuanMKQEAgLTAsMCArMSwz
IEBACit2YXIgdmFsdWUgPSBbMSwyLDMsNCw1LDYsNyw4LDldOworCitleHBvcnQgY29uc3QgWy4u
LmFycmF5XSA9IHZhbHVlLnZhbHVlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZGVzdHJ1Y3R1cmluZy1leHBvcnQvbWFpbi5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Rlc3RydWN0dXJpbmctZXhwb3J0L21haW4uanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZjJkOTQ3OTViN2I1YWU2NWY3ZTM0YjZjMzhlMzZlN2UzODAxMDIxNQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2Rlc3Ry
dWN0dXJpbmctZXhwb3J0L21haW4uanMKQEAgLTAsMCArMSwxNiBAQAorCitjb25zdCBkcmlua3Mg
PSB7CisgICAgQ29jb2E6ICdDb2NvYScsCisgICAgaW5uZXI6IHsKKyAgICAgICAgY3VycmVudDog
WyAnTWF0Y2hhJyBdCisgICAgfSwKKyAgICBoZWxsbzogJ0NhcHB1Y2Npbm8nCit9OworCitleHBv
cnQgY29uc3QgeworICAgIENvY29hLAorICAgIGlubmVyOiB7CisgICAgICAgIGN1cnJlbnQ6IFsg
TWF0Y2hhIF0KKyAgICB9LAorICAgIGhlbGxvOiBDYXBwdWNjaW5vCit9ID0gZHJpbmtzOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9y
ZGVyLWN5Y2xpYy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1
dGlvbi1vcmRlci1jeWNsaWMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmU1MjlkZDYxMThmMTBlNDVmODk2MDhk
YmIyYzc0ZWFlYTlhZDgwYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMuanMKQEAgLTAsMCArMSw1IEBA
CitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8xMS5qcyIKKwordmFyIGdsb2JhbCA9
IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDExKQor
ICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWN5Y2xpYy8xLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLWN5Y2xpYy8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5MGZkOGUzZmI4ZmViOGE1ZmU0ZTk2
YjRjMzlmMTg1Mzk2ZGViMmEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzEuanMKQEAgLTAsMCArMSw1
IEBACitpbXBvcnQgIi4vMTEuanMiCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhp
cyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwuY291bnQgIT09ICd1bmRlZmluZWQnKQorICAgIHRo
cm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50
ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
ZWN1dGlvbi1vcmRlci1jeWNsaWMvMTAuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzEwLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlkY2U1ZDNi
OWE2ZTlmZjNkNmE5Njg3NTA4MDZkMjA0YjdmNmIxNWIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzEw
LmpzCkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIuLzExLmpzIgoraW1wb3J0ICIuLzkuanMiCisK
K3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNv
dW50ICE9PSA5KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50
fWApOworZ2xvYmFsLmNvdW50ID0gMTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzExLmpzIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8xMS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yMGYzY2VkYWUxODFmYjE5YzFiOTU4NzQzNjg1NDk1YjdjM2YyM2U3Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLWN5Y2xpYy8xMS5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiLi8xMC5qcyIK
K2ltcG9ydCAiLi80LmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIp
KSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMTApCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQg
dmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAxMTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNs
aWMvMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1v
cmRlci1jeWNsaWMvMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODY4ZTZmNmFmNjQ3YmNiMjE2MjFjZGFiMWFm
NTYyNmZjOThjNWZkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8yLmpzCkBAIC0wLDAgKzEsOCBAQAor
aW1wb3J0ICIuLzExLmpzIgoraW1wb3J0ICIuLzkuanMiCitpbXBvcnQgIi4vNS5qcyIKKwordmFy
IGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQg
IT09IDEpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7
CitnbG9iYWwuY291bnQgPSAyOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8zLmpzIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy8zLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjczYzEwNTQwM2U4NTdhMmQ0NGFlNmExYjViMTM3YzJmMTE1OTNlOWYKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItY3ljbGljLzMuanMKQEAgLTAsMCArMSw3IEBACitpbXBvcnQgIi4vMS5qcyIKK2ltcG9ydCAi
Li8yLmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYg
KGdsb2JhbC5jb3VudCAhPT0gMikKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2ds
b2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzQuanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGlj
LzQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNWZkMWE4OTE3MTU2MGNhMzcwMDkwMjJlMmU1MDhjOTc3ZWRjNzZk
YgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNC5qcwpAQCAtMCwwICsxLDYgQEAKK2ltcG9ydCAiLi8y
LmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGds
b2JhbC5jb3VudCAhPT0gMykKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2Jh
bC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzUuanMgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzUu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYTFkZWVmOTJkMTJmNWFiYzY4NmEzMThjMmJhYTQ5OGJmNjQ4MWU4Zgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
ZWN1dGlvbi1vcmRlci1jeWNsaWMvNS5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiMy5qcyIK
K2ltcG9ydCAiNC5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSko
KTsKK2lmIChnbG9iYWwuY291bnQgIT09IDQpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFs
dWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSA1OwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy82
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWN5Y2xpYy82LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwNWM1OTMxN2JmMWY1NzU2ODQzYWEwOWRjMWUxMGEw
Njk4MGUyNGEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGljLzYuanMKQEAgLTAsMCArMSw3IEBACitpbXBv
cnQgIi4vNS5qcyIKK2ltcG9ydCAiLi85LmpzIgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJy
ZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gNSkKKyAgICB0aHJvdyBuZXcg
RXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDY7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24t
b3JkZXItY3ljbGljLzcuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItY3ljbGljLzcuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmFlNmMwNTk5YTUxODk2ZTNi
YmJkNjBjNTFiNmMzNzNiYjZmYTc5MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1jeWNsaWMvNy5qcwpAQCAtMCww
ICsxLDcgQEAKK2ltcG9ydCAiLi82LmpzIjsKK2ltcG9ydCAiLi85LmpzIjsKKwordmFyIGdsb2Jh
bCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDYp
CisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9i
YWwuY291bnQgPSA3OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy84LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy84LmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEz
YjBkYTVkZmIyZWRjM2Q0N2I2N2U5YWNiNzBjYzEyNzhjZTI4MDEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3lj
bGljLzguanMKQEAgLTAsMCArMSw2IEBACitpbXBvcnQgIi4vNy5qcyIKKwordmFyIGdsb2JhbCA9
IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDcpCisg
ICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwu
Y291bnQgPSA4OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy85LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWN5Y2xpYy85LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3ZWNk
YzllMjMyMzJkNWI2NWExN2QzZTlmYzcxMjA5OWQwZWI0ZWYKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItY3ljbGlj
LzkuanMKQEAgLTAsMCArMSw4IEBACitpbXBvcnQgIi4vMTEuanMiOworaW1wb3J0ICIuLzguanMi
OworaW1wb3J0ICIuLzYuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhp
cyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gOCkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJh
ZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFn
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LWRhZy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43ZTdhYzdmZjlmMmEzZmYyMmM2YmEwNWNkMzg4YWJiZGQ2M2I5
MTczCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy5qcwpAQCAtMCwwICsxLDcgQEAKKy8vIFRoaXMgdGVzdHMg
dGhlIERBRy4KK2ltcG9ydCAiLi9leGVjdXRpb24tb3JkZXItZGFnLzkuanMiCitpbXBvcnQgIi4v
ZXhlY3V0aW9uLW9yZGVyLWRhZy8xMC5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0
dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDEwKQorICAgIHRocm93IG5ldyBF
cnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8xLmpzIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy8xLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjRiMWMzY2M1ZDBkNjNjMGMyOTBlM2JlNjk1ZjFkZGU2ZjEzYjczYTMKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItZGFnLzEuanMKQEAgLTAsMCArMSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0
aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwuY291bnQgIT09ICd1bmRl
ZmluZWQnKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWAp
OworZ2xvYmFsLmNvdW50ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMTAuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzEwLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjEyODA0OWRlNmVkNjYwYTVlZWZjMmRlYjdmMzg5OTQ2ZTVkMTdhZWUKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXIt
ZGFnLzEwLmpzCkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIuLzguanMiCitpbXBvcnQgIi4vNy5q
cyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9i
YWwuY291bnQgIT09IDkpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwu
Y291bnR9YCk7CitnbG9iYWwuY291bnQgPSAxMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMi5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvMi5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jZjUzYmQ4NTA3NjM5MjkwYjY0YjZhZDMyNjE1MmVjMTkzNDQ0ODA1Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLWRhZy8yLmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzEuanMiOworCit2YXIg
Z2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAh
PT0gMSkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsK
K2dsb2JhbC5jb3VudCA9IDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzMuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjI1
ZWI0ODY4YWUyMTAwODk5ZjA2OGJkOGJiMDYyMzdkOGNkMWFlOAotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcv
My5qcwpAQCAtMCwwICsxLDYgQEAKK2ltcG9ydCAiLi8yLmpzIjsKKwordmFyIGdsb2JhbCA9IChG
dW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDIpCisgICAg
dGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291
bnQgPSAzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
ZXhlY3V0aW9uLW9yZGVyLWRhZy80LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy80LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjliZGFlNDlkOWQwMzlk
MTZkMWM5YmNlZDNkYjI0YmIyZDViNTRjZDgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzQuanMKQEAgLTAs
MCArMSw2IEBACitpbXBvcnQgIi4vMS5qcyIKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0
dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDMpCisgICAgdGhyb3cgbmV3IEVy
cm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSA0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9y
ZGVyLWRhZy81LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLWRhZy81LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzM2I2M2NmNTRjYTdlNTkzYzNiYjcxYTA2
OTdmNmI4NTk2M2JlYzUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzUuanMKQEAgLTAsMCArMSw3IEBACitp
bXBvcnQgIjQuanMiCitpbXBvcnQgIjEuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJl
dHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA0KQorICAgIHRocm93IG5ldyBF
cnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gNTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1v
cmRlci1kYWcvNi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1
dGlvbi1vcmRlci1kYWcvNi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NjEzZTcxMmI4Nzc5MGM2MWMzZmVmOWFl
YTBiNGIxYmM5NDRlMjJlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy82LmpzCkBAIC0wLDAgKzEsNiBAQAor
aW1wb3J0ICIuLzUuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikp
KCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA1KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZh
bHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gNjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kYWcvNy5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1k
YWcvNy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yYjhlOWEwNjNmNGU5NGFjNmQ4NmQwOGVjNmZhMjQxMmEyY2Y4
ZGNmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhlY3V0aW9uLW9yZGVyLWRhZy83LmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzYu
anMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGds
b2JhbC5jb3VudCAhPT0gNikKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2Jh
bC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzguanMgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzguanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYjNlM2I1ZjQ5OTIyODRhODkxY2FhYTRjYzNiYTA2NDYyZmI3Mjg3OQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci1kYWcvOC5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiLi8zLmpzIgoraW1wb3J0
ICIuLzcuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOwor
aWYgKGdsb2JhbC5jb3VudCAhPT0gNykKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAk
e2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDg7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzkuanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGFnLzku
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjMyZTQyNWEyMmY4OTI1NGVjMjE4OGI0MzAwMTI4NDA5MDA2MzNiZAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
ZWN1dGlvbi1vcmRlci1kYWcvOS5qcwpAQCAtMCwwICsxLDYgQEAKK2ltcG9ydCAiLi84LmpzIjsK
KwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwu
Y291bnQgIT09IDgpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291
bnR9YCk7CitnbG9iYWwuY291bnQgPSA5OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLmpzIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjgyZTg5ZmQ4YjRjNDJjNDc5NDIzZWM5YjlhMjA1OTJhZDgxMjU4ZGMKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItZGVwdGguanMKQEAgLTAsMCArMSw1IEBACitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLWRl
cHRoLzMuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7Citp
ZiAoZ2xvYmFsLmNvdW50ICE9PSAzKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7
Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLzEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGVwdGgvMS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
YjFjM2NjNWQwZDYzYzBjMjkwZTNiZTY5NWYxZGRlNmYxM2I3M2EzCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRl
cHRoLzEuanMKQEAgLTAsMCArMSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4g
dGhpcyIpKSgpOworaWYgKHR5cGVvZiBnbG9iYWwuY291bnQgIT09ICd1bmRlZmluZWQnKQorICAg
IHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNv
dW50ID0gMTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLWRlcHRoLzIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2Y1M2JkODUw
NzYzOTI5MGI2NGI2YWQzMjYxNTJlYzE5MzQ0NDgwNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8yLmpz
CkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzEuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0
aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMSkKKyAgICB0aHJv
dyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9
IDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItZGVwdGgvMy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci1kZXB0aC8zLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyNWViNDg2OGFlMjEw
MDg5OWYwNjhiZDhiYjA2MjM3ZDhjZDFhZTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItZGVwdGgvMy5qcwpAQCAt
MCwwICsxLDYgQEAKK2ltcG9ydCAiLi8yLmpzIjsKKwordmFyIGdsb2JhbCA9IChGdW5jdGlvbigi
cmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291bnQgIT09IDIpCisgICAgdGhyb3cgbmV3
IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7CitnbG9iYWwuY291bnQgPSAzOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXNlbGYuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItc2VsZi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NjVkOTAzZDA1ODdiMWU3NDNmMGYxYzQ4
MzFhMTA5N2Q2OTUwMDU5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNlbGYuanMKQEAgLTAsMCArMSw2IEBACitp
bXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLXNlbGYuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rp
b24oInJldHVybiB0aGlzIikpKCk7CitpZiAodHlwZW9mIGdsb2JhbC5jb3VudCAhPT0gJ3VuZGVm
aW5lZCcpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9YCk7
CitnbG9iYWwuY291bnQgPSAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2libGluZy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45NTJlZGIxMDU0YTg3ZjJkMWI4Y2I5YjgyMzY0ODBiYWM5MmJkMDY0Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXNpYmxpbmcuanMKQEAgLTAsMCArMSw3IEBACitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLXNp
YmxpbmcvMS5qcyIKK2ltcG9ydCAiLi9leGVjdXRpb24tb3JkZXItc2libGluZy8yLmpzIgoraW1w
b3J0ICIuL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzMuanMiCisKK3ZhciBnbG9iYWwgPSAoRnVu
Y3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAzKQorICAgIHRo
cm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxp
bmcvMS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1v
cmRlci1zaWJsaW5nLzEuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGIxYzNjYzVkMGQ2M2MwYzI5MGUzYmU2OTVm
MWRkZTZmMTNiNzNhMwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzEuanMKQEAgLTAsMCArMSw0IEBA
Cit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKHR5cGVvZiBn
bG9iYWwuY291bnQgIT09ICd1bmRlZmluZWQnKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZh
bHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5n
LzIuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItc2libGluZy8yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRlY2U2NjE5NjQ2NjQ0NTFkZDNhODgzYjA5NTc1
YmEzYTEwNzlkNmUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItc2libGluZy8yLmpzCkBAIC0wLDAgKzEsNCBAQAor
dmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSkoKTsKK2lmIChnbG9iYWwuY291
bnQgIT09IDEpCisgICAgdGhyb3cgbmV3IEVycm9yKGBiYWQgdmFsdWUgJHtnbG9iYWwuY291bnR9
YCk7CitnbG9iYWwuY291bnQgPSAyOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXNpYmxpbmcvMy5qcyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci1zaWJsaW5nLzMuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNDUwMGM1YjRlMTJmYzUyNjVmMjE2Y2E0ZGFjYjRiZjQyZjJiZWE5ZgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci1zaWJsaW5nLzMuanMKQEAgLTAsMCArMSw0IEBACit2YXIgZ2xvYmFsID0gKEZ1bmN0
aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMikKKyAgICB0aHJv
dyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9
IDM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVj
dXRpb24tb3JkZXItdHJlZS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci10cmVlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRhOGFlNTkwYWYyNWFlYmZkMThk
NTM0M2NlOWQ0MzhmMjg0ZjFhNmMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS5qcwpAQCAtMCwwICsxLDcg
QEAKK2ltcG9ydCAiLi9leGVjdXRpb24tb3JkZXItdHJlZS81LmpzIgoraW1wb3J0ICIuL2V4ZWN1
dGlvbi1vcmRlci10cmVlLzcuanMiCitpbXBvcnQgIi4vZXhlY3V0aW9uLW9yZGVyLXRyZWUvMTEu
anMiCisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xv
YmFsLmNvdW50ICE9PSAxMSkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2Jh
bC5jb3VudH1gKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRiMWMzY2M1
ZDBkNjNjMGMyOTBlM2JlNjk1ZjFkZGU2ZjEzYjczYTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xLmpz
CkBAIC0wLDAgKzEsNCBAQAordmFyIGdsb2JhbCA9IChGdW5jdGlvbigicmV0dXJuIHRoaXMiKSko
KTsKK2lmICh0eXBlb2YgZ2xvYmFsLmNvdW50ICE9PSAndW5kZWZpbmVkJykKKyAgICB0aHJvdyBu
ZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDE7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRp
b24tb3JkZXItdHJlZS8xMC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4ZWN1dGlvbi1vcmRlci10cmVlLzEwLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU5NmMzMjRkN2IxZWE4YmNl
MjZmYzdmYTUwNDRmMTBiOTkyMzAzNWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMC5qcwpAQCAtMCww
ICsxLDQgQEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAo
Z2xvYmFsLmNvdW50ICE9PSA5KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xv
YmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMTA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8xMS5qcyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzEx
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjg0YmIyNTMzZjI1ZTYwN2E0OTkwZTg5NWEzNGVhZDMxZTlkM2U4ZTcK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItdHJlZS8xMS5qcwpAQCAtMCwwICsxLDcgQEAKK2ltcG9ydCAiLi85Lmpz
IjsKK2ltcG9ydCAiLi8xMC5qcyI7CisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0
aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAxMCkKKyAgICB0aHJvdyBuZXcgRXJyb3Io
YGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDExOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVy
LXRyZWUvMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci10cmVlLzIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2Y1M2JkODUwNzYzOTI5MGI2NGI2YWQzMjYx
NTJlYzE5MzQ0NDgwNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzIuanMKQEAgLTAsMCArMSw2IEBACitp
bXBvcnQgIi4vMS5qcyI7CisKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikp
KCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSAxKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZh
bHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gMjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzMu
anMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXIt
dHJlZS8zLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwNzljNjEyYWNhODU4Yzc1YTZhOGM0MjJjYzIwMmYwZDQ0
NDNmMjMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS8zLmpzCkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIu
LzEuanMiOworaW1wb3J0ICIuLzIuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1
cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gMikKKyAgICB0aHJvdyBuZXcgRXJy
b3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDM7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItdHJlZS80LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0
aW9uLW9yZGVyLXRyZWUvNC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNzZiZWNiNjA1OWJmMDA3YmU1Mjc5NmQw
M2U0MTJiZDcxMDFlNjMzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNC5qcwpAQCAtMCwwICsxLDQgQEAK
K3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNv
dW50ICE9PSAzKQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50
fWApOworZ2xvYmFsLmNvdW50ID0gNDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzUuanMgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS81LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmExZGVlZjkyZDEyZjVhYmM2ODZhMzE4YzJiYWE0OThiZjY0ODFlOGYKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3Jk
ZXItdHJlZS81LmpzCkBAIC0wLDAgKzEsNyBAQAoraW1wb3J0ICIzLmpzIgoraW1wb3J0ICI0Lmpz
IgorCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2Jh
bC5jb3VudCAhPT0gNCkKKyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5j
b3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS82LmpzIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvNi5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xMThkNDc0YzFhNjAwN2Q4MjYwNDg0ODk2ZGNiMDM1Mzc2Njk5NzdmCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXRyZWUvNi5qcwpAQCAtMCwwICsxLDQgQEAKK3ZhciBnbG9iYWwgPSAoRnVuY3Rpb24o
InJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50ICE9PSA1KQorICAgIHRocm93IG5l
dyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWApOworZ2xvYmFsLmNvdW50ID0gNjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4ZWN1dGlv
bi1vcmRlci10cmVlLzcuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9l
eGVjdXRpb24tb3JkZXItdHJlZS83LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJiOGU5YTA2M2Y0ZTk0YWM2ZDg2
ZDA4ZWM2ZmEyNDEyYTJjZjhkY2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS83LmpzCkBAIC0wLDAgKzEs
NiBAQAoraW1wb3J0ICIuLzYuanMiOworCit2YXIgZ2xvYmFsID0gKEZ1bmN0aW9uKCJyZXR1cm4g
dGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gNikKKyAgICB0aHJvdyBuZXcgRXJyb3Io
YGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2JhbC5jb3VudCA9IDc7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXIt
dHJlZS84LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhlY3V0aW9u
LW9yZGVyLXRyZWUvOC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40N2M2ZjQ3MDMyNjNjNjczODczN2NhMDFlNjg1
MmIyNmYwNjNkZWY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhlY3V0aW9uLW9yZGVyLXRyZWUvOC5qcwpAQCAtMCwwICsxLDQgQEAKK3Zh
ciBnbG9iYWwgPSAoRnVuY3Rpb24oInJldHVybiB0aGlzIikpKCk7CitpZiAoZ2xvYmFsLmNvdW50
ICE9PSA3KQorICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlICR7Z2xvYmFsLmNvdW50fWAp
OworZ2xvYmFsLmNvdW50ID0gODsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2V4ZWN1dGlvbi1vcmRlci10cmVlLzkuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXItdHJlZS85LmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjIzMmU0MjVhMjJmODkyNTRlYzIxODhiNDMwMDEyODQwOTAwNjMzYmQKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leGVjdXRpb24tb3JkZXIt
dHJlZS85LmpzCkBAIC0wLDAgKzEsNiBAQAoraW1wb3J0ICIuLzguanMiOworCit2YXIgZ2xvYmFs
ID0gKEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKSgpOworaWYgKGdsb2JhbC5jb3VudCAhPT0gOCkK
KyAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZSAke2dsb2JhbC5jb3VudH1gKTsKK2dsb2Jh
bC5jb3VudCA9IDk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9leHBvcnQtY29uZmxpY3Qtb2suanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2suanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzllNjk2NWViNWQ3MTcy
NGI5MzBjOTc4OTMwYWIyNzM0MDYzMmY0MQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay5qcwpAQCAtMCwwICsx
LDUgQEAKK2ltcG9ydCB7IEEsIEIgfSBmcm9tICIuL2V4cG9ydC1jb25mbGljdC1vay9tYWluLmpz
IiAgLy8gQyBpcyBjb25mbGljdCwgYnV0IG5vdCBsb29rZWQgdXAuCitpbXBvcnQgeyBzaG91bGRC
ZSB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5qcyI7CisKK3Nob3VsZEJlKEEsIDQyKTsKK3No
b3VsZEJlKEIsIDUwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9BLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rL0EuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGE4NGQ2NDNi
MDU0ZWMxOTcwNDQ0N2YzY2FlOWY2M2E0NmY1ZmJlZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1jb25mbGljdC1vay9BLmpzCkBA
IC0wLDAgKzEsMiBAQAorZXhwb3J0IGNvbnN0IEEgPSA0MjsKK2V4cG9ydCBjb25zdCBDID0gNTA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQt
Y29uZmxpY3Qtb2svQi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
cG9ydC1jb25mbGljdC1vay9CLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYxYTY1ZDc4M2YwYjZmY2FjMTgyOGVk
YmI3MTQzYjRjZjk3MjU5NTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxpY3Qtb2svQi5qcwpAQCAtMCwwICsxLDIgQEAK
K2V4cG9ydCBjb25zdCBCID0gNTA7CitleHBvcnQgY29uc3QgQyA9IDUwOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rL21h
aW4uanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtY29uZmxp
Y3Qtb2svbWFpbi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmM2ZjFmMTY0Mjc0MjZmMGMxZTQ3Y2NjNzkzYmQ4
MTkyMjM1ODkzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvZXhwb3J0LWNvbmZsaWN0LW9rL21haW4uanMKQEAgLTAsMCArMSwyIEBACitleHBv
cnQgKiBmcm9tICIuL0EuanMiCitleHBvcnQgKiBmcm9tICIuL0IuanMiCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtZnJvbS5qcyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1mcm9tLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmFhNmQwMTE4MTUwYWZiOTI4MzFjODMzYmU1NDAxMWRmNGUwNDM0MmQKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtZnJvbS5qcwpA
QCAtMCwwICsxLDggQEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9tICIuL2V4cG9ydC1mcm9t
L21haW4uanMiCitpbXBvcnQgeyBzaG91bGRCZSB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5q
cyI7CisKK3Nob3VsZEJlKEpTT04uc3RyaW5naWZ5KE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVz
KG5hbWVzcGFjZSkpLCBgWyJDYXBwdWNjaW5vIiwiQ29jb2EiLCJkZWZhdWx0IiwiZW51bSJdYCk7
CitzaG91bGRCZShuYW1lc3BhY2UuQ29jb2EsICJDb2NvYSIpOworc2hvdWxkQmUobmFtZXNwYWNl
LkNhcHB1Y2Npbm8sICJDYXBwdWNjaW5vIik7CitzaG91bGRCZShuYW1lc3BhY2UuZGVmYXVsdCwg
Ik1vY2hhIik7CitzaG91bGRCZShuYW1lc3BhY2UuZW51bSwgIk1hdGNoYSIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LWZyb20vbWFpbi5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC1mcm9tL21haW4u
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMjJmM2I0OTczMDA3ZmYyMzUwNmJiNGE5MGNiOWM1OWQ4ZGM4ZDg5Nwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
cG9ydC1mcm9tL21haW4uanMKQEAgLTAsMCArMSw2IEBACitleHBvcnQgeworICAgIEZpcnN0IGFz
IENvY29hLAorICAgIFNlY29uZCBhcyBDYXBwdWNjaW5vLAorICAgIGRlZmF1bHQgYXMgZW51bSwK
KyAgICBlbnVtIGFzIGRlZmF1bHQKK30gZnJvbSAiLi9zZWNvbmQuanMiCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtZnJvbS9zZWNvbmQuanMg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtZnJvbS9zZWNvbmQu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2MwYmM1MTZhNDI2YzMzYzdlNmZlZjg2MTVhYzA5MDkyYzk0NGNlMwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4
cG9ydC1mcm9tL3NlY29uZC5qcwpAQCAtMCwwICsxLDkgQEAKK2V4cG9ydCBsZXQgRmlyc3QgPSAi
Q29jb2EiOworCitleHBvcnQgdmFyIFNlY29uZCA9ICJDYXBwdWNjaW5vIgorCitleHBvcnQgZGVm
YXVsdCAiTWF0Y2hhIjsKKwordmFyIE1vY2hhID0gJ01vY2hhJzsKKworZXhwb3J0IHsgTW9jaGEg
YXMgZW51bSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVs
ZXMvZXhwb3J0LXdpdGgtZGVjbGFyYXRpb25zLWxpc3QuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9leHBvcnQtd2l0aC1kZWNsYXJhdGlvbnMtbGlzdC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zZjM2NWU0ZDUxYzI0ZWRkMjNlZjg1MmQ1OTk0YmNhMzUwM2ZjNTYwCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LXdpdGgt
ZGVjbGFyYXRpb25zLWxpc3QuanMKQEAgLTAsMCArMSw5IEBACitpbXBvcnQgKiBhcyBuYW1lc3Bh
Y2UgZnJvbSAiLi9leHBvcnQtd2l0aC1kZWNsYXJhdGlvbnMtbGlzdC9tYWluLmpzIgoraW1wb3J0
IHsgc2hvdWxkQmUgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCitzaG91bGRCZShK
U09OLnN0cmluZ2lmeShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhuYW1lc3BhY2UpKSwgYFsi
Q2FwcHVjY2lubyIsIkNvY29hIiwiTWF0Y2hhIiwiTW9jaGEiXWApOworc2hvdWxkQmUobmFtZXNw
YWNlLkNvY29hLCAnQ29jb2EnKTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5DYXBwdWNjaW5vLCAnQ2Fw
cHVjY2lubycpOworc2hvdWxkQmUobmFtZXNwYWNlLk1hdGNoYSwgJ01hdGNoYScpOworc2hvdWxk
QmUobmFtZXNwYWNlLk1vY2hhLCAnTW9jaGEnKTsKKwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0LXdpdGgtZGVjbGFyYXRpb25zLWxpc3QvbWFp
bi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC13aXRoLWRl
Y2xhcmF0aW9ucy1saXN0L21haW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDBlOGZkMjg2NjM2NjQzY2EzNTc0
NTY2OWI2YTQzOWJhZDI3YTI2OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydC13aXRoLWRlY2xhcmF0aW9ucy1saXN0L21haW4uanMK
QEAgLTAsMCArMSwzIEBACitleHBvcnQgbGV0IENvY29hID0gIkNvY29hIiwgQ2FwcHVjY2lubyA9
ICJDYXBwdWNjaW5vIjsKKworZXhwb3J0IGNvbnN0IE1hdGNoYSA9ICJNYXRjaGEiLCBNb2NoYSA9
ICJNb2NoYSI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0
ZWQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5j
dGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMjMyODA0M2JjMmIzY2U1OTQ1N2I0YTg5Njc5YTE3N2M4ZDVjOWEzMQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2V4cG9ydGVkLWZ1bmN0
aW9uLW1heS1iZS1jYWxsZWQtYmVmb3JlLW1vZHVsZS1pcy1leGVjdXRlZC5qcwpAQCAtMCwwICsx
IEBACitpbXBvcnQgIi4vZXhwb3J0ZWQtZnVuY3Rpb24tbWF5LWJlLWNhbGxlZC1iZWZvcmUtbW9k
dWxlLWlzLWV4ZWN1dGVkLzIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1
bGUtaXMtZXhlY3V0ZWQvMS5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L2V4cG9ydGVkLWZ1bmN0aW9uLW1heS1iZS1jYWxsZWQtYmVmb3JlLW1vZHVsZS1pcy1leGVjdXRl
ZC8xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjZhNGI5NDI3ZjUxOGRlMmVlNzQ0MmJmY2NjNzVhZWI0NTY2ZWQy
ZjEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJlZm9yZS1tb2R1bGUtaXMtZXhlY3V0
ZWQvMS5qcwpAQCAtMCwwICsxLDE1IEBACitpbXBvcnQgeyBhZGQsIHJhaXNlIH0gZnJvbSAiLi8y
LmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi4vcmVzb3VyY2Vz
L2Fzc2VydC5qcyI7CisKK3Nob3VsZEJlKHR5cGVvZiBhZGQsICdmdW5jdGlvbicpOworc2hvdWxk
QmUodHlwZW9mIHJhaXNlLCAnZnVuY3Rpb24nKTsKKworc2hvdWxkQmUoYWRkKDEwLCAzMiksIDQy
KTsKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIC8vIGFkZCwgYW5kIHJhaXNlIGZ1bmN0aW9u
cyBhcmUgZXhwb3J0ZWQgYW5kIGNhbiBiZSB1c2VkLgorICAgIC8vIEJ1dCBtb2R1bGUgIjIiJ3Mg
Ym9keSBpcyBub3QgZXhlY3V0ZWQgeWV0ISEhIQorICAgIC8vIHJhaXNlIGZ1bmN0aW9uIHRvdWNo
ZXMgdGhlIGxleGljYWwgdmFyaWFibGUgaW4gdGhlIG1vZHVsZSAiMiIsIHNvIFREWgorICAgIC8v
IGVycm9yIHNob3VsZCBiZSByYWlzZWQuCisgICAgcmFpc2UoKTsKK30sIGBSZWZlcmVuY2VFcnJv
cjogQ2Fubm90IGFjY2VzcyB1bmluaXRpYWxpemVkIHZhcmlhYmxlLmApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0ZWQtZnVuY3Rpb24tbWF5
LWJlLWNhbGxlZC1iZWZvcmUtbW9kdWxlLWlzLWV4ZWN1dGVkLzIuanMgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9leHBvcnRlZC1mdW5jdGlvbi1tYXktYmUtY2FsbGVkLWJl
Zm9yZS1tb2R1bGUtaXMtZXhlY3V0ZWQvMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YWU1YzJiNjRlMDk1YWM4
N2VmNTlmNjBhODJjZTNjYjQyMzMzZmViCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvZXhwb3J0ZWQtZnVuY3Rpb24tbWF5LWJlLWNhbGxlZC1i
ZWZvcmUtbW9kdWxlLWlzLWV4ZWN1dGVkLzIuanMKQEAgLTAsMCArMSwxMyBAQAoraW1wb3J0ICIu
LzEuanMiCisKK2xldCB2YWx1ZSA9IDQyOworCitleHBvcnQgZnVuY3Rpb24gYWRkKGEsIGIpCit7
CisgICAgcmV0dXJuIGEgKyBiOworfQorCitleHBvcnQgZnVuY3Rpb24gcmFpc2UoKQoreworICAg
IHJldHVybiB2YWx1ZTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL2ltcG9ydC1lcnJvci5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL2ltcG9ydC1lcnJvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjM3NDcyY2NmOTAwODAzNmM5ZWM2
OWNlZmEwNTI1M2Q4MjdmMDc0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yLmpzCkBAIC0wLDAgKzEsMTMgQEAKK2ltcG9y
dCB7IHNob3VsZEJlLCBzaG91bGRUaHJvdyB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5qcyIK
Kworc2hvdWxkVGhyb3coKCkgPT4geworICAgIGxvYWRNb2R1bGUoJy4vaW1wb3J0LWVycm9yL2lt
cG9ydC1ub3QtZm91bmQuanMnKTsKK30sIGBTeW50YXhFcnJvcjogSW1wb3J0aW5nIGJpbmRpbmcg
bmFtZSAnQicgaXMgbm90IGZvdW5kLmApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbG9h
ZE1vZHVsZSgnLi9pbXBvcnQtZXJyb3IvaW1wb3J0LWFtYmlndW91cy5qcycpOworfSwgYFN5bnRh
eEVycm9yOiBJbXBvcnRpbmcgYmluZGluZyBuYW1lICdCJyBjYW5ub3QgYmUgcmVzb2x2ZWQgZHVl
IHRvIGFtYmlndW91cyBtdWx0aXBsZSBiaW5kaW5ncy5gKTsKKworc2hvdWxkVGhyb3coKCkgPT4g
eworICAgIGxvYWRNb2R1bGUoJy4vaW1wb3J0LWVycm9yL2ltcG9ydC1kZWZhdWx0LWZyb20tc3Rh
ci5qcycpOworfSwgYFN5bnRheEVycm9yOiBJbXBvcnRpbmcgYmluZGluZyBuYW1lICdkZWZhdWx0
JyBjYW5ub3QgYmUgcmVzb2x2ZWQgYnkgc3RhciBleHBvcnQgZW50cmllcy5gKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBv
cnQtYW1iaWd1b3VzLTEuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9p
bXBvcnQtZXJyb3IvZXhwb3J0LWFtYmlndW91cy0xLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ4ZDdmOWEyYzJk
ZmViNjY2ZTE1YmVhMmE4NjgwODA1MGM3N2Q1ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFtYmlndW91
cy0xLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBjb25zdCBCID0gNDI7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWFt
YmlndW91cy0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0
LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMtMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYWUxZDE3NjdmZjJmZGVm
ZTRhNzYxNmM2ZWQ0MmY3N2RhYTAzZmI5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMtMi5q
cwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQiA9IDUwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3Vv
dXMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3Iv
ZXhwb3J0LWFtYmlndW91cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OWMxMjBkYmMxYWUyYTNmYmM2MmJlOWI5
OWE3Yzc3OWQ1MDM3MTQ1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1hbWJpZ3VvdXMuanMKQEAgLTAsMCAr
MSw0IEBACitleHBvcnQgY29uc3QgQSA9IDQyOworCitleHBvcnQgKiBmcm9tICIuL2V4cG9ydC1h
bWJpZ3VvdXMtMS5qcyIKK2V4cG9ydCAqIGZyb20gIi4vZXhwb3J0LWFtYmlndW91cy0yLmpzIgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVy
cm9yL2V4cG9ydC1kZWZhdWx0LWZyb20tc3Rhci0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2V4cG9ydC1kZWZhdWx0LWZyb20tc3Rhci0yLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjAzNTcwOWFkYzZkNWM1NWEzNjRkM2MxYTRjYjQ2MTgxM2Q4NGU1ZDQKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBv
cnQtZXJyb3IvZXhwb3J0LWRlZmF1bHQtZnJvbS1zdGFyLTIuanMKQEAgLTAsMCArMSwyIEBACitl
eHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBDb2NvYSgpIHsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtZGVmYXVsdC1m
cm9tLXN0YXIuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQt
ZXJyb3IvZXhwb3J0LWRlZmF1bHQtZnJvbS1zdGFyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmODZlYmNlMGIy
MjVkMTlkMTE2YjRhZTA3Yzk2NGUwZjM1MmJiZGYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LWRlZmF1bHQt
ZnJvbS1zdGFyLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCAqIGZyb20gIi4vZXhwb3J0LWRlZmF1
bHQtZnJvbS1zdGFyLTIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvZXhwb3J0LW5vdC1mb3VuZC5qcyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9leHBvcnQtbm90LWZvdW5kLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmM1MDg2NmFiNDZmYWQ0MTE3N2I2MzQ3ZjBlYjhkYjE5MDc4M2Q1MTMKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBv
cnQtZXJyb3IvZXhwb3J0LW5vdC1mb3VuZC5qcwpAQCAtMCwwICsxLDIgQEAKKworZXhwb3J0IGNv
bnN0IEEgPSAyMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL2ltcG9ydC1lcnJvci9pbXBvcnQtYW1iaWd1b3VzLmpzIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1hbWJpZ3VvdXMuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZGQ2YzU4NDE1Mjk5N2QzNjU5Zjc4ZGU4Y2I5MWM4ZTkwYjA4ZDg4YgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJv
ci9pbXBvcnQtYW1iaWd1b3VzLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCB7IEEsIEIgfSBmcm9t
ICIuL2V4cG9ydC1hbWJpZ3VvdXMuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9pbXBvcnQtZXJyb3IvaW1wb3J0LWRlZmF1bHQtZnJvbS1zdGFyLmpz
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9y
dC1kZWZhdWx0LWZyb20tc3Rhci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mN2Y5ZTYzMTMyMDRhMjZlZWVjMTJi
YjJjYWJjMDFkYTRhMTM1Y2ZjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1kZWZhdWx0LWZyb20tc3Rhci5q
cwpAQCAtMCwwICsxIEBACitpbXBvcnQgQSBmcm9tICIuL2V4cG9ydC1kZWZhdWx0LWZyb20tc3Rh
ci5qcyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2lt
cG9ydC1lcnJvci9pbXBvcnQtbm90LWZvdW5kLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvaW1wb3J0LWVycm9yL2ltcG9ydC1ub3QtZm91bmQuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MDQ1NjhkMjUxM2UyY2VlNGNmMTZlMzJlNzJkNGNhMWI5NTk5Y2ZmZQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydC1lcnJvci9pbXBv
cnQtbm90LWZvdW5kLmpzCkBAIC0wLDAgKzEgQEAKK2ltcG9ydCB7IEEsIEIgfSBmcm9tICIuL2V4
cG9ydC1ub3QtZm91bmQuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1hcmUtaW1tdXRhYmxlLmpzIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0ZWQtYmluZGluZ3MtYXJlLWltbXV0YWJs
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40NTE1ZTI5YmU2ZTFhZTljODU4OTkzM2Q5ODBlYmNiNGQ0YjJkZDM0
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
aW1wb3J0ZWQtYmluZGluZ3MtYXJlLWltbXV0YWJsZS5qcwpAQCAtMCwwICsxLDQzIEBACitpbXBv
cnQgeyB2YXJpYWJsZSwgY29uc3RWYXJpYWJsZSwgbGV0VmFyaWFibGUsIGZ1bmN0aW9uRGVjbGFy
YXRpb24sIGNsYXNzRGVjbGFyYXRpb24gfSBmcm9tICIuL2ltcG9ydGVkLWJpbmRpbmdzLWFyZS1p
bW11dGFibGUvYmluZGluZ3MuanMiCitpbXBvcnQgeyBzaG91bGRCZSwgc2hvdWxkVGhyb3cgfSBm
cm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiCisKK3Nob3VsZEJlKHZhcmlhYmxlLCAnQ29jb2En
KTsKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICB2YXJpYWJsZSA9IDQyOworfSwgYFR5cGVFcnJv
cjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hvdWxk
QmUoY29uc3RWYXJpYWJsZSwgJ0NvY29hJyk7CitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgY29u
c3RWYXJpYWJsZSA9IDQyOworfSwgYFR5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFzc2lnbiB0byBy
ZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hvdWxkQmUobGV0VmFyaWFibGUsICdDb2NvYScpOwor
c2hvdWxkVGhyb3coKCkgPT4geworICAgIGxldFZhcmlhYmxlID0gNDI7Cit9LCBgVHlwZUVycm9y
OiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCitzaG91bGRC
ZSh0eXBlb2YgZnVuY3Rpb25EZWNsYXJhdGlvbiwgJ2Z1bmN0aW9uJyk7CitzaG91bGRUaHJvdygo
KSA9PiB7CisgICAgZnVuY3Rpb25EZWNsYXJhdGlvbiA9IDQyOworfSwgYFR5cGVFcnJvcjogQXR0
ZW1wdGVkIHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworc2hvdWxkQmUodHlw
ZW9mIGNsYXNzRGVjbGFyYXRpb24sICdmdW5jdGlvbicpOworc2hvdWxkVGhyb3coKCkgPT4gewor
ICAgIGNsYXNzRGVjbGFyYXRpb24gPSA0MjsKK30sIGBUeXBlRXJyb3I6IEF0dGVtcHRlZCB0byBh
c3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisKKworZnVuY3Rpb24gcmVmZXJlbmNlKHJl
YWQpIHsKKyAgICBpZiAocmVhZCkKKyAgICAgICAgcmV0dXJuIGxldFZhcmlhYmxlOworICAgIGVs
c2UKKyAgICAgICAgbGV0VmFyaWFibGUgPSAiQ29jb2EiOworfQorbm9JbmxpbmUocmVmZXJlbmNl
KTsKKworZm9yICh2YXIgaSA9IDA7IGkgPCAxMDAwMDsgKytpKQorICAgIHJlZmVyZW5jZSh0cnVl
KTsKKworc2hvdWxkVGhyb3coKCkgPT4geworICAgIHJlZmVyZW5jZShmYWxzZSk7Cit9LCBgVHlw
ZUVycm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW1wb3J0ZWQtYmlu
ZGluZ3MtYXJlLWltbXV0YWJsZS9iaW5kaW5ncy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJpbmRpbmdzLWFyZS1pbW11dGFibGUvYmluZGluZ3MuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWQ2NDVjZGY5NWRlMTQ3ZGNiZTc5NGVhYWViYzZiYzM4YjhhZTBmMwotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9y
dGVkLWJpbmRpbmdzLWFyZS1pbW11dGFibGUvYmluZGluZ3MuanMKQEAgLTAsMCArMSwxMSBAQAor
ZXhwb3J0IHZhciB2YXJpYWJsZSA9ICdDb2NvYSc7CisKK2V4cG9ydCBjb25zdCBjb25zdFZhcmlh
YmxlID0gJ0NvY29hJzsKKworZXhwb3J0IGxldCBsZXRWYXJpYWJsZSA9ICdDb2NvYSc7CisKK2V4
cG9ydCBmdW5jdGlvbiBmdW5jdGlvbkRlY2xhcmF0aW9uKCkgeworfQorCitleHBvcnQgY2xhc3Mg
Y2xhc3NEZWNsYXJhdGlvbiB7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9pbXBvcnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5h
bC1tb2R1bGUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbXBvcnRl
ZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5hbC1tb2R1bGUuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYWI4YjZjNDg0NDdkMjZhNDllODlhYTdiMDg1NTExYjM5ZGJmYWEyNAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2ltcG9ydGVkLWJpbmRp
bmdzLWNhbi1iZS1jaGFuZ2VkLWluLW9yaWdpbmFsLW1vZHVsZS5qcwpAQCAtMCwwICsxLDE3IEBA
CitpbXBvcnQgeworICAgIENvY29hLAorICAgIENhcHB1Y2Npbm8sCisgICAgTWF0Y2hhLAorICAg
IE1vZGlmaWVyCit9IGZyb20gIi4vaW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQtaW4t
b3JpZ2luYWwtbW9kdWxlL2JpbmRpbmdzLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRo
cm93IH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIgorCitzaG91bGRCZShDb2NvYSwgIkNv
Y29hIik7CitzaG91bGRCZShDYXBwdWNjaW5vLCAiQ2FwcHVjY2lubyIpOworc2hvdWxkQmUoTWF0
Y2hhLCAiTWF0Y2hhIik7CisKK01vZGlmaWVyLmNoYW5nZSgiQ29jb2EiKTsKKworc2hvdWxkQmUo
Q29jb2EsICJDb2NvYSIpOworc2hvdWxkQmUoQ2FwcHVjY2lubywgIkNvY29hIik7CitzaG91bGRC
ZShNYXRjaGEsICJDb2NvYSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvaW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQtaW4tb3JpZ2luYWwt
bW9kdWxlL2JpbmRpbmdzLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
aW1wb3J0ZWQtYmluZGluZ3MtY2FuLWJlLWNoYW5nZWQtaW4tb3JpZ2luYWwtbW9kdWxlL2JpbmRp
bmdzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjgyNDI4OGNjM2M3ZTZjZDk0YzY3YmUyOWQzOWQzNThmMzY1OWQ3
MTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9pbXBvcnRlZC1iaW5kaW5ncy1jYW4tYmUtY2hhbmdlZC1pbi1vcmlnaW5hbC1tb2R1bGUvYmlu
ZGluZ3MuanMKQEAgLTAsMCArMSwxNiBAQAorbGV0IENvY29hID0gIkNvY29hIiwgQ2FwcHVjY2lu
byA9ICJDYXBwdWNjaW5vIiwgTWF0Y2hhID0gIk1hdGNoYSI7CisKK2V4cG9ydCBsZXQgTW9kaWZp
ZXIgPSB7CisgICAgY2hhbmdlKHZhbHVlKQorICAgIHsKKyAgICAgICAgQ29jb2EgPSB2YWx1ZTsK
KyAgICAgICAgQ2FwcHVjY2lubyA9IHZhbHVlOworICAgICAgICBNYXRjaGEgPSB2YWx1ZTsKKyAg
ICB9Cit9OworCitleHBvcnQgeworICAgIENvY29hLAorICAgIENhcHB1Y2Npbm8sCisgICAgTWF0
Y2hhCit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
aW5kaXJlY3QtZXhwb3J0LWVycm9yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzY2ZjNzdkNGY3MmVj
MzM2MTgzNTQ5NTY1OTA5ZjJhZWQxNTc4ODcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IuanMKQEAgLTAs
MCArMSwxMyBAQAoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9yZXNv
dXJjZXMvYXNzZXJ0LmpzIgorCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbG9hZE1vZHVsZSgn
Li9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC5qcycpOwor
fSwgYFN5bnRheEVycm9yOiBJbmRpcmVjdGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnQicgaXMg
bm90IGZvdW5kLmApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbG9hZE1vZHVsZSgnLi9p
bmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcycpOworfSwg
YFN5bnRheEVycm9yOiBJbmRpcmVjdGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnQicgY2Fubm90
IGJlIHJlc29sdmVkIGR1ZSB0byBhbWJpZ3VvdXMgbXVsdGlwbGUgYmluZGluZ3MuYCk7CisKK3No
b3VsZFRocm93KCgpID0+IHsKKyAgICBsb2FkTW9kdWxlKCcuL2luZGlyZWN0LWV4cG9ydC1lcnJv
ci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC5qcycpOworfSwgYFN5bnRheEVycm9yOiBJbmRpcmVj
dGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnZGVmYXVsdCcgY2Fubm90IGJlIHJlc29sdmVkIGJ5
IHN0YXIgZXhwb3J0IGVudHJpZXMuYCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFt
YmlndW91cy0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJl
Y3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMi5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lNjM5MDU3MWMxMTc2ZjQ0NTZmZGRlOGVjOGM4YmM1MjllYjU2MWRlCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0
LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMi5qcwpAQCAtMCwwICsxLDIgQEAKK2V4
cG9ydCAqIGZyb20gIi4vaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy0zLmpzIgorZXhwb3J0ICog
ZnJvbSAiLi9pbmRpcmVjdC1leHBvcnQtYW1iaWd1b3VzLTQuanMiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5k
aXJlY3QtZXhwb3J0LWFtYmlndW91cy0zLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMt
My5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40YzQ0NWE0YjMxNWJmMmNlYTAyYTg5NmRmNjQxMjcyMzEzZWY1MjZh
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
aW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJpZ3VvdXMtMy5qcwpAQCAt
MCwwICsxLDIgQEAKK2V4cG9ydCBjb25zdCBBID0gNDI7CitleHBvcnQgY29uc3QgQiA9IDUwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1l
eHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy00LmpzIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4
cG9ydC1hbWJpZ3VvdXMtNC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZjIyNzIyYTM1NDdlNDViYTJlYjFkNjlm
OGFiMzhiODkwZDljNDkwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1hbWJp
Z3VvdXMtNC5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQiA9IDUwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJy
b3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtYW1iaWd1
b3VzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmVmNjI2ZDkxNGM1MTBlYmM1NmMwNTI5OWFlNmJiYTExYTE4MGE1
MWYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWFtYmlndW91cy5qcwpAQCAt
MCwwICsxIEBACitleHBvcnQgeyBBLCBCIH0gZnJvbSAiLi9pbmRpcmVjdC1leHBvcnQtYW1iaWd1
b3VzLTIuanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxl
cy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWRlZmF1bHQtMi5qcyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9p
bmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMxNzdiMTQzOTQ1MGNkMmFm
MzJjZTI5ZGI2ZjdjNzdmZWQwYzY1ZjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhw
b3J0LWRlZmF1bHQtMi5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgKiBmcm9tICJpbmRpcmVjdC1l
eHBvcnQtZGVmYXVsdC0zLmpzIgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1kZWZhdWx0
LTMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBv
cnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LWRlZmF1bHQtMy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMzU3MDlh
ZGM2ZDVjNTVhMzY0ZDNjMWE0Y2I0NjE4MTNkODRlNWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2lu
ZGlyZWN0LWV4cG9ydC1kZWZhdWx0LTMuanMKQEAgLTAsMCArMSwyIEBACitleHBvcnQgZGVmYXVs
dCBmdW5jdGlvbiBDb2NvYSgpIHsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVm
YXVsdC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL2luZGlyZWN0LWV4
cG9ydC1lcnJvci9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZGUxNDI1
NGE3OTQ5MDQ1ZTk3MDQ3NGE4NDllYWJkNmU5MDJjNmI1Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2lu
ZGlyZWN0LWV4cG9ydC1kZWZhdWx0LmpzCkBAIC0wLDAgKzEsMiBAQAoraW1wb3J0IEEgZnJvbSAi
Li9pbmRpcmVjdC1leHBvcnQtZGVmYXVsdC0yLmpzIgorZXhwb3J0IHsgQSB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9pbmRpcmVjdC1leHBvcnQtZXJy
b3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0yLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1ub3Qt
Zm91bmQtMi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44M2M2NjVmZWU5OTUyMWY3NjlkZTdiNmI5MDVjZWQ1YzU0
ZGE1MTk5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21v
ZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1ub3QtZm91bmQtMi5q
cwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQSA9IDQyOwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJlY3QtZXhwb3J0LWVycm9yL2luZGly
ZWN0LWV4cG9ydC1ub3QtZm91bmQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9pbmRpcmVjdC1leHBvcnQtZXJyb3IvaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41ZGQ0ODc5ZTE0YTgyMzQ0OGFmMDI2NjczYTA0NjI5OWRlYjUwZGZjCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvaW5kaXJl
Y3QtZXhwb3J0LWVycm9yL2luZGlyZWN0LWV4cG9ydC1ub3QtZm91bmQuanMKQEAgLTAsMCArMSBA
QAorZXhwb3J0IHsgQSwgQiB9IGZyb20gIi4vaW5kaXJlY3QtZXhwb3J0LW5vdC1mb3VuZC0yLmpz
IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21vZHVs
ZS1ldmFsLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbW9kdWxlLWV2
YWwuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTk3MWU3ZTFiM2UxZTFjZDZhMTAzMjFiYWZlNTZmNjg2ZGQxZjgx
NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L21vZHVsZS1ldmFsLmpzCkBAIC0wLDAgKzEsMTEgQEAKK2ltcG9ydCB7IENhcHB1Y2Npbm8sIENv
Y29hIH0gZnJvbSAiLi9tb2R1bGUtZXZhbC9kcmluay5qcyIKK2ltcG9ydCAqIGFzIEIgZnJvbSAi
Li9tb2R1bGUtZXZhbC9CLmpzIgoraW1wb3J0IHsgc2hvdWxkVGhyb3csIHNob3VsZEJlIH0gZnJv
bSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIgorCitzaG91bGRCZShldmFsKCJDYXBwdWNjaW5vIiks
ICJDYXBwdWNjaW5vIik7CisKKyhmdW5jdGlvbiAoKSB7CisgICAgbGV0IENhcHB1Y2Npbm8gPSAi
Q29jb2EiOworICAgIHNob3VsZEJlKGV2YWwoIkNhcHB1Y2Npbm8iKSwgIkNvY29hIik7CisgICAg
c2hvdWxkQmUoZXZhbCgiQ29jb2EiKSwgIkNvY29hIik7Cit9KCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbW9kdWxlLWV2YWwvQS5qcyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21vZHVsZS1ldmFsL0EuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOGNjNDJkMWFjYzg5ODMyMmY5OTFjNTc4ZWJmZjg2YTI3OGU0OTQ2NAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21vZHVsZS1ldmFsL0Eu
anMKQEAgLTAsMCArMSw4IEBACitpbXBvcnQgeyBCIH0gZnJvbSAiLi9CLmpzIgoraW1wb3J0IHsg
c2hvdWxkVGhyb3cgfSBmcm9tICIuLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIgorCitleHBvcnQgbGV0
IEEgPSAiQSI7CisKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBldmFsKCJCIik7Cit9LCBgUmVm
ZXJlbmNlRXJyb3I6IENhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJsZS5gKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21vZHVsZS1ldmFs
L0IuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9tb2R1bGUtZXZhbC9C
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjFkNWJhMjg2ZjNhNjkxYTc5YjgxMzkwNzZiYzJlOTJhZmNmM2U3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9t
b2R1bGUtZXZhbC9CLmpzCkBAIC0wLDAgKzEsMyBAQAoraW1wb3J0IHsgQSB9IGZyb20gIi4vQS5q
cyIKKworZXhwb3J0IGxldCBCID0gIkIiOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvbW9kdWxlLWV2YWwvZHJpbmsuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvbW9kdWxlcy9tb2R1bGUtZXZhbC9kcmluay5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYTgz
N2Y3N2Q5Y2YxMzgyZDBiNjhmYTM5Yzg3OWMwNzNhYTRlMTdmCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbW9kdWxlLWV2YWwvZHJpbmsuanMK
QEAgLTAsMCArMSwzIEBACitleHBvcnQgY29uc3QgQ29jb2EgPSAiQ29jb2EiOworCitleHBvcnQg
bGV0IENhcHB1Y2Npbm8gPSAiQ2FwcHVjY2lubyI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9tb2R1bGUtaXMtc3RyaWN0LWNvZGUuanMgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9tb2R1bGUtaXMtc3RyaWN0LWNvZGUuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZmNjM2IzM2U3MjMzNDZhZjcyZjU5NThkZWNiMGQ4MTM3Mzc5OWY0MQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL21vZHVsZS1p
cy1zdHJpY3QtY29kZS5qcwpAQCAtMCwwICsxLDE5IEBACitpbXBvcnQgeyBzaG91bGRUaHJvdywg
c2hvdWxkQmUgfSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiOworCisvLyBNb2R1bGUgY29k
ZSBpcyBhbHdheXMgc3RyaWN0IGNvZGUuCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgZXZhbCgi
d2l0aCh2YWx1ZSkgeyB9Iik7Cit9LCBgU3ludGF4RXJyb3I6ICd3aXRoJyBzdGF0ZW1lbnRzIGFy
ZSBub3QgdmFsaWQgaW4gc3RyaWN0IG1vZGUuYCk7CisKKy8vIFdoZW4gY2FsbGluZyB0aGUgaW5k
aXJlY3QgZXZhbCAvIEZ1bmN0aW9uIGNvbnN0cnVjdG9yLCBpdHMgc2NvcGUgaXMgbm90IHRoZSBt
b2R1bGUgc2NvcGUuCit2YXIgbW9kdWxlVmFyaWFibGUgPSA0MjsKKworc2hvdWxkQmUoZXZhbCgi
bW9kdWxlVmFyaWFibGUiKSwgNDIpOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgKDAsIGV2
YWwpKCJtb2R1bGVWYXJpYWJsZSIpOworfSwgYFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZh
cmlhYmxlOiBtb2R1bGVWYXJpYWJsZWApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgKEZ1
bmN0aW9uKCJtb2R1bGVWYXJpYWJsZSIpKSgpOworfSwgYFJlZmVyZW5jZUVycm9yOiBDYW4ndCBm
aW5kIHZhcmlhYmxlOiBtb2R1bGVWYXJpYWJsZWApOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTQ5NmNkMjkyMjQ5MjU1YWNmMzAxNzIxZDc3NDY1OTdjM2E0Y2U3OQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1h
bWJpZ3VvdXMuanMKQEAgLTAsMCArMSw2IEBACitpbXBvcnQgKiBhcyBuYW1lc3BhY2UgZnJvbSAi
Li9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmlndW91cy5qcyIKK2ltcG9ydCB7IHNob3VsZEJlLCBz
aG91bGRUaHJvdyB9IGZyb20gIi4vcmVzb3VyY2VzL2Fzc2VydC5qcyIKKworLy8gQW1iaWd1b3Vz
IG5hbWUgaXMgb21pdHRlZCBmcm9tIHRoZSBuYW1lc3BhY2UuCitzaG91bGRCZShuYW1lc3BhY2Uu
Q29jb2EsIHVuZGVmaW5lZCk7CitzaG91bGRCZSgnQ29jb2EnIGluIG5hbWVzcGFjZSwgZmFsc2Up
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNw
YWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTIuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NzgwOTNkNDY2ZDBjOGE1ZDg5MjgwODIxMjllZTk0ZmVmZmMxMmQ5NQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3Vv
dXMvYW1iaWd1b3VzLTIuanMKQEAgLTAsMCArMSwyIEBACitleHBvcnQgKiBmcm9tICJhbWJpZ3Vv
dXMtMy5qcyIKK2V4cG9ydCAqIGZyb20gImFtYmlndW91cy00LmpzIgpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJp
Z3VvdXMtMy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFj
ZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc2NTE2NDE3MzNmZjUwMWEx
YjRlZmI2OWJjNDdkYjJiMWNiODcxYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLTMuanMK
QEAgLTAsMCArMSBAQAorZXhwb3J0IGNvbnN0IENvY29hID0gNDI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtYW1iaWd1b3VzL2FtYmln
dW91cy00LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNl
LWFtYmlndW91cy9hbWJpZ3VvdXMtNC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzY1MTY0MTczM2ZmNTAxYTFi
NGVmYjY5YmM0N2RiMmIxY2I4NzFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFtYmlndW91cy9hbWJpZ3VvdXMtNC5qcwpA
QCAtMCwwICsxIEBACitleHBvcnQgY29uc3QgQ29jb2EgPSA0MjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1
b3VzLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWFt
YmlndW91cy9hbWJpZ3VvdXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDI4OTJlYjlmN2M0Mjk3OTU0NDU1ZTQx
YWQ0MDgyOWY4MTA3ZjI3YQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1hbWJpZ3VvdXMvYW1iaWd1b3VzLmpzCkBAIC0wLDAg
KzEgQEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9tICJhbWJpZ3VvdXMtMi5qcyIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJv
ci5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJv
ci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lNDc4MTdhN2IwNzVmOTZlOTdiNjhlYzdlNGRhYzhmOGFlMDhkZThh
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
bmFtZXNwYWNlLWVycm9yLmpzCkBAIC0wLDAgKzEsNSBAQAoraW1wb3J0IHsgc2hvdWxkVGhyb3cg
fSBmcm9tICIuL3Jlc291cmNlcy9hc3NlcnQuanMiCisKK3Nob3VsZFRocm93KCgpID0+IHsKKyAg
ICBsb2FkTW9kdWxlKCcuL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hv
dWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS5qcycpOworfSwgYFN5bnRheEVycm9yOiBJbmRpcmVj
dGx5IGV4cG9ydGVkIGJpbmRpbmcgbmFtZSAnZGVmYXVsdCcgY2Fubm90IGJlIHJlc29sdmVkIGJ5
IHN0YXIgZXhwb3J0IGVudHJpZXMuYCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNo
b3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktMi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxk
LWhpZGUtZ2xvYmFsLWFtYmlndWl0eS0yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0M2E0N2E3ZDkzNTU1NTlh
OTA3MzM4MWRhMzkyZmI1NDUxMWZjYzMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVy
cm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktMi5qcwpAQCAtMCwwICsxLDMgQEAKK2V4
cG9ydCAqIGZyb20gIi4vbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1h
bWJpZ3VpdHktMy5qcyIKK2V4cG9ydCAqIGZyb20gIi4vbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNo
b3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNC5qcyIKK2V4cG9ydCAqIGZyb20gIi4vbmFtZXNw
YWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNS5qcyIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJv
ci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS0zLmpz
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25h
bWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTMuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYzc2NTE2NDE3MzNmZjUwMWExYjRlZmI2OWJjNDdkYjJiMWNiODcxYgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFj
ZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0
eS0zLmpzCkBAIC0wLDAgKzEgQEAKK2V4cG9ydCBjb25zdCBDb2NvYSA9IDQyOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25h
bWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTQuanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNw
YWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi44MmNiY2NlOTU3MGZmOTkwYzAxYmMxMTI5YTlhOGU4YzlmMTdjMTM1Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVy
cm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTQu
anMKQEAgLTAsMCArMSwzIEBACitleHBvcnQgKiBmcm9tICIuL25hbWVzcGFjZS1sb2NhbC1lcnJv
ci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTYuanMiCitpbXBvcnQgSGVsbG8gZnJvbSAi
Li9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS03Lmpz
IgorZXhwb3J0IHsgSGVsbG8gfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rl
c3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQt
aGlkZS1nbG9iYWwtYW1iaWd1aXR5LTUuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRl
LWdsb2JhbC1hbWJpZ3VpdHktNS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzY1MTY0MTczM2ZmNTAxYTFiNGVm
YjY5YmM0N2RiMmIxY2I4NzFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1z
aG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTUuanMKQEAgLTAsMCArMSBAQAorZXhwb3J0IGNv
bnN0IENvY29hID0gNDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
bW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3VsZC1oaWRl
LWdsb2JhbC1hbWJpZ3VpdHktNi5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xv
YmFsLWFtYmlndWl0eS02LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM3NjUxNjQxNzMzZmY1MDFhMWI0ZWZiNjli
YzQ3ZGIyYjFjYjg3MWIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtZXJyb3IvbmFtZXNwYWNlLWxvY2FsLWVycm9yLXNob3Vs
ZC1oaWRlLWdsb2JhbC1hbWJpZ3VpdHktNi5qcwpAQCAtMCwwICsxIEBACitleHBvcnQgY29uc3Qg
Q29jb2EgPSA0MjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1
bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xv
YmFsLWFtYmlndWl0eS03LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMv
bmFtZXNwYWNlLWVycm9yL25hbWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwt
YW1iaWd1aXR5LTcuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTM5NTk3ZjljYjA3YzVkNDhiZWQxODk4NGVjNDc0
N2Y0YjRmMzQzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhp
ZGUtZ2xvYmFsLWFtYmlndWl0eS03LmpzCkBAIC0wLDAgKzEsMiBAQAorCisKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9uYW1l
c3BhY2UtbG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS5qcyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS1lcnJvci9uYW1lc3BhY2Ut
bG9jYWwtZXJyb3Itc2hvdWxkLWhpZGUtZ2xvYmFsLWFtYmlndWl0eS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
MGUwMDYzODM3MzE4MTM4Y2ZjYzRhMWZkMjY1ZTYxMDg1MzdmMGIyCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLWVycm9yL25h
bWVzcGFjZS1sb2NhbC1lcnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LmpzCkBAIC0w
LDAgKzEgQEAKK2ltcG9ydCAqIGFzIG5hbWVzcGFjZSBmcm9tICIuL25hbWVzcGFjZS1sb2NhbC1l
cnJvci1zaG91bGQtaGlkZS1nbG9iYWwtYW1iaWd1aXR5LTIuanMiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6LmpzIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xNmYyYjBjOTAzOWEyNTM5MGNhYTUyNDg1MGY1ZDBkNDYwZWQ2OTdiCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlLXRkei5q
cwpAQCAtMCwwICsxIEBACitpbXBvcnQgKiBhcyBuYW1lc3BhY2UgZnJvbSAiLi9uYW1lc3BhY2Ut
dGR6L21haW4uanMiCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9uYW1lc3BhY2UtdGR6L0EuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9k
dWxlcy9uYW1lc3BhY2UtdGR6L0EuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjI0OTFjMTQ4YTdmYTllYjYyNjZh
MmNjZTQ2YzZhZGNkZDk1N2UyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS10ZHovQS5qcwpAQCAtMCwwICsxLDEwIEBACitp
bXBvcnQgKiBhcyBuYW1lc3BhY2UgZnJvbSAiLi9CLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNo
b3VsZFRocm93IH0gZnJvbSAiLi4vcmVzb3VyY2VzL2Fzc2VydC5qcyI7CisKK2V4cG9ydCBjb25z
dCBBID0gNDI7CisKK3Nob3VsZEJlKEpTT04uc3RyaW5naWZ5KFJlZmxlY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKG5hbWVzcGFjZSwgJ0InKSksIGB7InZhbHVlIjoyNTYsIndyaXRhYmxlIjp0
cnVlLCJlbnVtZXJhYmxlIjp0cnVlLCJjb25maWd1cmFibGUiOmZhbHNlfWApOworCitzaG91bGRC
ZShuYW1lc3BhY2UuQiwgMjU2KTsKK25hbWVzcGFjZS5sYXRlcigpOworCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L0IuanMgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L0IuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZDhmNzdlMTc4MzA3ZDVhMjczYWNkMWRkZTQ2Mjk4MzU1Yjk1MjMwYwotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFj
ZS10ZHovQi5qcwpAQCAtMCwwICsxLDIwIEBACitpbXBvcnQgKiBhcyBuYW1lc3BhY2UgZnJvbSAi
Li9BLmpzIgoraW1wb3J0IHsgc2hvdWxkQmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi4vcmVzb3Vy
Y2VzL2Fzc2VydC5qcyI7CisKK2V4cG9ydCBjb25zdCBCID0gMjU2OworCitzaG91bGRUaHJvdygo
KSA9PiB7CisgICAgcHJpbnQobmFtZXNwYWNlLkEpOworfSwgYFJlZmVyZW5jZUVycm9yOiBDYW5u
b3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuYCk7CisKK3Nob3VsZFRocm93KCgpID0+
IHsKKyAgICBSZWZsZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuYW1lc3BhY2UsICdBJyk7
Cit9LCBgUmVmZXJlbmNlRXJyb3I6IENhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCB2YXJpYWJs
ZS5gKTsKKworLy8gTm90IHRocm93IGFueSBlcnJvcnMgZXZlbiBpZiB0aGUgZmllbGQgaXMgbm90
IGluaXRpYWxpemVkIHlldC4KK3Nob3VsZEJlKCdBJyBpbiBuYW1lc3BhY2UsIHRydWUpOworc2hv
dWxkQmUoJ2hlbGxvJyBpbiBuYW1lc3BhY2UsIGZhbHNlKTsKKworZXhwb3J0IGZ1bmN0aW9uIGxh
dGVyKCkgeworICAgIHNob3VsZEJlKG5hbWVzcGFjZS5BLCA0Mik7Cit9CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L21haW4uanMg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UtdGR6L21haW4u
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzI0Zjk3MmY2M2U0YmU0MmNlNjUyZTg3ZjU4ZjZhOWE5NzgxMTJkMwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25h
bWVzcGFjZS10ZHovbWFpbi5qcwpAQCAtMCwwICsxIEBACitpbXBvcnQgeyBBIH0gZnJvbSAiLi9B
LmpzIgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFt
ZXNwYWNlLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNl
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjFiZjI0MTQ1MzJhOTAyZmViMDc5M2U2NjVjODJiY2Y4MTc5YTQzYjAK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9u
YW1lc3BhY2UuanMKQEAgLTAsMCArMSw4MSBAQAoraW1wb3J0IGNoYW5nZUNhcHB1Y2Npbm8sICog
YXMgbmFtZXNwYWNlIGZyb20gIi4vbmFtZXNwYWNlL2RyaW5rLmpzIgoraW1wb3J0IHsgc2hvdWxk
QmUsIHNob3VsZFRocm93IH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworc2hvdWxk
QmUodHlwZW9mIG5hbWVzcGFjZSwgJ29iamVjdCcpOworc2hvdWxkQmUodHlwZW9mIGNoYW5nZUNh
cHB1Y2Npbm8sICdmdW5jdGlvbicpOworc2hvdWxkQmUobmFtZXNwYWNlLkNvY29hLCAnQ29jb2En
KTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5DYXBwdWNjaW5vLCAnQ2FwcHVjY2lubycpOworc2hvdWxk
QmUobmFtZXNwYWNlLk1hdGNoYSwgJ01hdGNoYScpOworc2hvdWxkQmUobmFtZXNwYWNlLk1vY2hh
LCAnTW9jaGEnKTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5kZWZhdWx0LCBjaGFuZ2VDYXBwdWNjaW5v
KTsKKworY2hhbmdlQ2FwcHVjY2lubygnQ29jb2EnKTsKK3Nob3VsZEJlKG5hbWVzcGFjZS5Db2Nv
YSwgJ0NvY29hJyk7CitzaG91bGRCZShuYW1lc3BhY2UuQ2FwcHVjY2lubywgJ0NvY29hJyk7Citz
aG91bGRCZShuYW1lc3BhY2UuTWF0Y2hhLCAnTWF0Y2hhJyk7CitzaG91bGRCZShuYW1lc3BhY2Uu
TW9jaGEsICdNb2NoYScpOworc2hvdWxkQmUobmFtZXNwYWNlLmRlZmF1bHQsIGNoYW5nZUNhcHB1
Y2Npbm8pOworCitzaG91bGRCZSgnQ29jb2EnIGluIG5hbWVzcGFjZSwgdHJ1ZSk7CitzaG91bGRC
ZSgnQ2FwcHVjY2lubycgaW4gbmFtZXNwYWNlLCB0cnVlKTsKK3Nob3VsZEJlKCdNYXRjaGEnIGlu
IG5hbWVzcGFjZSwgdHJ1ZSk7CitzaG91bGRCZSgnTW9jaGEnIGluIG5hbWVzcGFjZSwgdHJ1ZSk7
CitzaG91bGRCZSgnZGVmYXVsdCcgaW4gbmFtZXNwYWNlLCB0cnVlKTsKK3Nob3VsZEJlKFN5bWJv
bC5pdGVyYXRvciBpbiBuYW1lc3BhY2UsIHRydWUpOworc2hvdWxkQmUoJ1RlYScgaW4gbmFtZXNw
YWNlLCBmYWxzZSk7CisKK3Nob3VsZEJlKG5hbWVzcGFjZS5fX3Byb3RvX18sIHVuZGVmaW5lZCk7
CitzaG91bGRCZShSZWZsZWN0LmlzRXh0ZW5zaWJsZShuYW1lc3BhY2UpLCBmYWxzZSk7CisKK3No
b3VsZFRocm93KCgpID0+IHsKKyAgICBuYW1lc3BhY2UudmFsdWUgPSAyMDsKK30sIGBUeXBlRXJy
b3I6IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisKK3Nob3Vs
ZFRocm93KCgpID0+IHsKKyAgICBuYW1lc3BhY2VbMjBdID0gMjA7Cit9LCBgVHlwZUVycm9yOiBB
dHRlbXB0ZWQgdG8gYXNzaWduIHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCitzaG91bGRUaHJv
dygoKSA9PiB7CisgICAgbmFtZXNwYWNlW1N5bWJvbC51bnNjb3BhYmxlc10gPSAyMDsKK30sIGBU
eXBlRXJyb3I6IEF0dGVtcHRlZCB0byBhc3NpZ24gdG8gcmVhZG9ubHkgcHJvcGVydHkuYCk7CisK
K3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobmFtZXNwYWNl
LCAnQ29va2llJywgeworICAgICAgICB2YWx1ZTogNDIKKyAgICB9KTsKK30sIGBUeXBlRXJyb3I6
IEF0dGVtcHRpbmcgdG8gZGVmaW5lIHByb3BlcnR5IG9uIG9iamVjdCB0aGF0IGlzIG5vdCBleHRl
bnNpYmxlLmApOworCitzaG91bGRUaHJvdygoKSA9PiB7CisgICAgbmFtZXNwYWNlLl9fcHJvdG9f
XyA9IE9iamVjdC5wcm90b3R5cGU7Cit9LCBgVHlwZUVycm9yOiBBdHRlbXB0ZWQgdG8gYXNzaWdu
IHRvIHJlYWRvbmx5IHByb3BlcnR5LmApOworCitzaG91bGRCZShSZWZsZWN0LnNldFByb3RvdHlw
ZU9mKG5hbWVzcGFjZSwgT2JqZWN0LnByb3RvdHlwZSksIGZhbHNlKTsKK3Nob3VsZEJlKG5hbWVz
cGFjZS5fX3Byb3RvX18sIHVuZGVmaW5lZCk7CitzaG91bGRCZShSZWZsZWN0LmdldFByb3RvdHlw
ZU9mKG5hbWVzcGFjZSksIG51bGwpOworCisvLyBUaGVzZSBuYW1lcyBzaG91bGQgYmUgc2hvd24g
aW4gdGhlIGNvZGUgcG9pbnQgb3JkZXIuCitzaG91bGRCZShKU09OLnN0cmluZ2lmeShPYmplY3Qu
Z2V0T3duUHJvcGVydHlOYW1lcyhuYW1lc3BhY2UpKSwgYFsiQ2FwcHVjY2lubyIsIkNvY29hIiwi
TWF0Y2hhIiwiTW9jaGEiLCJkZWZhdWx0Il1gKTsKK3Nob3VsZEJlKE9iamVjdC5nZXRPd25Qcm9w
ZXJ0eVN5bWJvbHMobmFtZXNwYWNlKS5sZW5ndGgsIDEpOworc2hvdWxkQmUoT2JqZWN0LmdldE93
blByb3BlcnR5U3ltYm9scyhuYW1lc3BhY2UpWzBdLCBTeW1ib2wuaXRlcmF0b3IpOworCitzaG91
bGRCZSh0eXBlb2YgbmFtZXNwYWNlW1N5bWJvbC5pdGVyYXRvcl0sICdmdW5jdGlvbicpOwordmFy
IGFycmF5ID0gQXJyYXkuZnJvbShuYW1lc3BhY2UpOworLy8gVGhlc2UgbmFtZXMgc2hvdWxkIGJl
IHNob3duIGluIHRoZSBjb2RlIHBvaW50IG9yZGVyLgorc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnko
YXJyYXkpLCBgWyJDYXBwdWNjaW5vIiwiQ29jb2EiLCJNYXRjaGEiLCJNb2NoYSIsImRlZmF1bHQi
XWApOworCisvLyBUaGUgaW1wb3J0ZWQgYmluZGluZyBwcm9wZXJ0aWVzIG9mIHRoZSBuYW1lc3Bh
Y2Ugb2JqZWN0IHNlZW4gYXMgd3JpdGFibGUsIGJ1dCwgaXQgZG9lcyBub3QgbWVhbiB0aGF0IGl0
IGlzIHdyaXRhYmxlIGJ5IHVzZXJzLgorc2hvdWxkQmUoSlNPTi5zdHJpbmdpZnkoUmVmbGVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobmFtZXNwYWNlLCAiQ29jb2EiKSksIGB7InZhbHVlIjoi
Q29jb2EiLCJ3cml0YWJsZSI6dHJ1ZSwiZW51bWVyYWJsZSI6dHJ1ZSwiY29uZmlndXJhYmxlIjpm
YWxzZX1gKTsKK3Nob3VsZEJlKEpTT04uc3RyaW5naWZ5KFJlZmxlY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKG5hbWVzcGFjZSwgIk1hdGNoYSIpKSwgYHsidmFsdWUiOiJNYXRjaGEiLCJ3cml0
YWJsZSI6dHJ1ZSwiZW51bWVyYWJsZSI6dHJ1ZSwiY29uZmlndXJhYmxlIjpmYWxzZX1gKTsKK3No
b3VsZEJlKEpTT04uc3RyaW5naWZ5KFJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG5h
bWVzcGFjZSwgIk1vY2hhIikpLCBgeyJ2YWx1ZSI6Ik1vY2hhIiwid3JpdGFibGUiOnRydWUsImVu
dW1lcmFibGUiOnRydWUsImNvbmZpZ3VyYWJsZSI6ZmFsc2V9YCk7CitzaG91bGRUaHJvdygoKSA9
PiB7CisgICAgLy8gVGhyb3cgYW4gZXJyb3IgZXZlbiBpZiB0aGUgc2FtZSB2YWx1ZS4KKyAgICBu
YW1lc3BhY2UuQ29jb2EgPSAnQ29jb2EnOworfSwgYFR5cGVFcnJvcjogQXR0ZW1wdGVkIHRvIGFz
c2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKworLy8gSW4gdGhlIGNhc2Ugb2Ygbm9uIGlt
cG9ydGVkIHByb3BlcnRpZXMsIHdlIGp1c3QgcmV0dXJuIHRoZSBvcmlnaW5hbCBkZXNjcmlwdG9y
LgorLy8gQnV0IHN0aWxsIHRoZXNlIHByb3BlcnRpZXMgY2Fubm90IGJlIGNoYW5nZWQuCitzaG91
bGRCZShKU09OLnN0cmluZ2lmeShSZWZsZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuYW1l
c3BhY2UsIFN5bWJvbC5pdGVyYXRvcikpLCBgeyJ3cml0YWJsZSI6dHJ1ZSwiZW51bWVyYWJsZSI6
ZmFsc2UsImNvbmZpZ3VyYWJsZSI6dHJ1ZX1gKTsKK3Nob3VsZFRocm93KCgpID0+IHsKKyAgICBu
YW1lc3BhY2VbU3ltYm9sLml0ZXJhdG9yXSA9IDQyOworfSwgYFR5cGVFcnJvcjogQXR0ZW1wdGVk
IHRvIGFzc2lnbiB0byByZWFkb25seSBwcm9wZXJ0eS5gKTsKKwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNlL2FkZGl0aW9uYWwtZHJpbmsu
anMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvYWRkaXRp
b25hbC1kcmluay5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OWRhYTUzZjhhNGYxOWQyMjA3YjhjZGVmZGM4ODhh
OWM0MTgwNmFmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L21vZHVsZXMvbmFtZXNwYWNlL2FkZGl0aW9uYWwtZHJpbmsuanMKQEAgLTAsMCArMSw0IEBACitl
eHBvcnQgY29uc3QgTWF0Y2hhID0gJ01hdGNoYSc7CisKK2ltcG9ydCB7IE1vY2hhIH0gZnJvbSAi
Li9tb3JlLWFkZGl0aW9uYWwtZHJpbmsuanMiCitleHBvcnQgeyBNb2NoYSB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvZHJpbmsuanMg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9uYW1lc3BhY2UvZHJpbmsuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjIxZmQyMjkwMmJlNTM2YWMxZWJlNGE2NDI4YzY1MWQxODE3ZDdjMQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVz
cGFjZS9kcmluay5qcwpAQCAtMCwwICsxLDEwIEBACisKK2V4cG9ydCBjb25zdCBDb2NvYSA9ICJD
b2NvYSI7CisKK2V4cG9ydCBsZXQgQ2FwcHVjY2lubyA9ICJDYXBwdWNjaW5vIjsKKworZXhwb3J0
IGRlZmF1bHQgZnVuY3Rpb24gY2hhbmdlQ2FwcHVjY2lubyh2YWx1ZSkgeworICAgIENhcHB1Y2Np
bm8gPSB2YWx1ZTsKK30KKworZXhwb3J0ICogZnJvbSAiLi9hZGRpdGlvbmFsLWRyaW5rLmpzIgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvbmFtZXNwYWNl
L21vcmUtYWRkaXRpb25hbC1kcmluay5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9t
b2R1bGVzL25hbWVzcGFjZS9tb3JlLWFkZGl0aW9uYWwtZHJpbmsuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmNj
MzYyMjAwNDliMmI5ZjQyNzZhMzUzOTUwOTBhZGY5ZmMwMjg0NgotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL25hbWVzcGFjZS9tb3JlLWFkZGl0
aW9uYWwtZHJpbmsuanMKQEAgLTAsMCArMSBAQAorZXhwb3J0IGNvbnN0IE1vY2hhID0gJ01vY2hh
JzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Jlc291
cmNlcy9hc3NlcnQuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9yZXNv
dXJjZXMvYXNzZXJ0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEwMDZmODRlYmRmYTAxZWFjMTY1ZDJmYTJlZDE1
MWNhN2E2NGJhZDQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9yZXNvdXJjZXMvYXNzZXJ0LmpzCkBAIC0wLDAgKzEsMTkgQEAKK2V4cG9ydCBm
dW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7CisgICAgaWYgKGFjdHVhbCAhPT0g
ZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlOiAke1N0cmluZyhh
Y3R1YWwpfWApOworfQorCitleHBvcnQgZnVuY3Rpb24gc2hvdWxkVGhyb3coZnVuYywgZXJyb3JN
ZXNzYWdlKSB7CisgICAgdmFyIGVycm9yVGhyb3duID0gZmFsc2U7CisgICAgdmFyIGVycm9yID0g
bnVsbDsKKyAgICB0cnkgeworICAgICAgICBmdW5jKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAg
ICAgICBlcnJvclRocm93biA9IHRydWU7CisgICAgICAgIGVycm9yID0gZTsKKyAgICB9CisgICAg
aWYgKCFlcnJvclRocm93bikKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdub3QgdGhyb3duJyk7
CisgICAgaWYgKFN0cmluZyhlcnJvcikgIT09IGVycm9yTWVzc2FnZSkKKyAgICAgICAgdGhyb3cg
bmV3IEVycm9yKGBiYWQgZXJyb3I6ICR7U3RyaW5nKGVycm9yKX1gKTsKK30KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy5qcyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMjBjNjVl
ZWY5MGE0N2U3NDYxNjBjY2M3ZDEzMThmNDIxM2FlYTQ5Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzLmpzCkBAIC0wLDAgKzEsMjcg
QEAKK2ltcG9ydCB7IENvY29hLCBDYXBwdWNjaW5vLCBNYXRjaGEgfSBmcm9tICIuL3Njb3Blcy9k
cmluay5qcyIKK2ltcG9ydCB7IHNob3VsZEJlIH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0Lmpz
IjsKKworeworICAgIGxldCBDb2NvYSA9IDQyOworICAgIHNob3VsZEJlKENvY29hLCA0Mik7Cit9
CitzaG91bGRCZShDb2NvYSwgJ0NvY29hJyk7CitzaG91bGRCZShDYXBwdWNjaW5vLCAnQ2FwcHVj
Y2lubycpOworc2hvdWxkQmUoTWF0Y2hhLCAnTWF0Y2hhJyk7CisKK3ZhciBnbG9iYWwgPSBGdW5j
dGlvbigicmV0dXJuIHRoaXMiKSgpOworCisoZnVuY3Rpb24gKCkgeworICAgIHZhciBDb2NvYSA9
IDQyOworICAgIGxldCBDYXBwdWNjaW5vID0gJ0NQTyc7CisgICAgc2hvdWxkQmUoQ29jb2EsIDQy
KTsKKyAgICBzaG91bGRCZShDYXBwdWNjaW5vLCAnQ1BPJyk7CisgICAgc2hvdWxkQmUoTWF0Y2hh
LCAnTWF0Y2hhJyk7CisgICAgeworICAgICAgICBjb25zdCBNYXRjaGEgPSA1MDsKKyAgICAgICAg
c2hvdWxkQmUoTWF0Y2hhLCA1MCk7CisgICAgICAgIHNob3VsZEJlKE9iamVjdCwgZ2xvYmFsLk9i
amVjdCk7CisgICAgfQorICAgIHNob3VsZEJlKE9iamVjdCwgZ2xvYmFsLk9iamVjdCk7Cit9KCkp
Oworc2hvdWxkQmUoT2JqZWN0LCBnbG9iYWwuT2JqZWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy9hZGRpdGlvbmFsLWRyaW5rLmpzIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzL2FkZGl0aW9uYWwtZHJp
bmsuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTlkYWE1M2Y4YTRmMTlkMjIwN2I4Y2RlZmRjODg4YTljNDE4MDZh
ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVz
L3Njb3Blcy9hZGRpdGlvbmFsLWRyaW5rLmpzCkBAIC0wLDAgKzEsNCBAQAorZXhwb3J0IGNvbnN0
IE1hdGNoYSA9ICdNYXRjaGEnOworCitpbXBvcnQgeyBNb2NoYSB9IGZyb20gIi4vbW9yZS1hZGRp
dGlvbmFsLWRyaW5rLmpzIgorZXhwb3J0IHsgTW9jaGEgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzL2RyaW5rLmpzIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3Rlc3RzL21vZHVsZXMvc2NvcGVzL2RyaW5rLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYyMWZk
MjI5MDJiZTUzNmFjMWViZTRhNjQyOGM2NTFkMTgxN2Q3YzEKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMvZHJpbmsuanMKQEAgLTAs
MCArMSwxMCBAQAorCitleHBvcnQgY29uc3QgQ29jb2EgPSAiQ29jb2EiOworCitleHBvcnQgbGV0
IENhcHB1Y2Npbm8gPSAiQ2FwcHVjY2lubyI7CisKK2V4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNo
YW5nZUNhcHB1Y2Npbm8odmFsdWUpIHsKKyAgICBDYXBwdWNjaW5vID0gdmFsdWU7Cit9CisKK2V4
cG9ydCAqIGZyb20gIi4vYWRkaXRpb25hbC1kcmluay5qcyIKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Njb3Blcy9tb3JlLWFkZGl0aW9uYWwtZHJpbmsu
anMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy9zY29wZXMvbW9yZS1hZGRp
dGlvbmFsLWRyaW5rLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZjYzM2MjIwMDQ5YjJiOWY0Mjc2YTM1Mzk1MDkw
YWRmOWZjMDI4NDYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVz
dHMvbW9kdWxlcy9zY29wZXMvbW9yZS1hZGRpdGlvbmFsLWRyaW5rLmpzCkBAIC0wLDAgKzEgQEAK
K2V4cG9ydCBjb25zdCBNb2NoYSA9ICdNb2NoYSc7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvbW9kdWxlcy90aGlzLXNob3VsZC1iZS11bmRlZmluZWQuanMgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvbW9kdWxlcy90aGlzLXNob3VsZC1iZS11bmRlZmluZWQu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uODg0NTNlMmNmODY3MmY4ZGFlMzNjZDgwMTdmZjRiYWIzMTkxYTZlYwot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9tb2R1bGVzL3Ro
aXMtc2hvdWxkLWJlLXVuZGVmaW5lZC5qcwpAQCAtMCwwICsxLDMgQEAKK2ltcG9ydCB7IHNob3Vs
ZEJlIH0gZnJvbSAiLi9yZXNvdXJjZXMvYXNzZXJ0LmpzIjsKKworc2hvdWxkQmUodGhpcywgdW5k
ZWZpbmVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mv
bW9kdWxlcy1zeW50YXgtZXJyb3Itd2l0aC1uYW1lcy5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9zdHJlc3MvbW9kdWxlcy1zeW50YXgtZXJyb3Itd2l0aC1uYW1lcy5qcwppbmRleCBm
YTgxMDNhMzBiNWZjNmZmMmMwNjI2NDhhMTlhZTQ3MjZiMmUzMTZjLi42MmY0ODg3YjRmMzVmOGY2
M2ZkNDk0MTc1NWRjMDBlNGM0ODhlNDk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvc3RyZXNzL21vZHVsZXMtc3ludGF4LWVycm9yLXdpdGgtbmFtZXMuanMKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9tb2R1bGVzLXN5bnRheC1lcnJvci13
aXRoLW5hbWVzLmpzCkBAIC0xLDUgKzEsMyBAQAotLy9AIHNraXAKLQogZnVuY3Rpb24gc2hvdWxk
VGhyb3coZnVuYywgZXJyb3JNZXNzYWdlKSB7CiAgICAgdmFyIGVycm9yVGhyb3duID0gZmFsc2U7
CiAgICAgdmFyIGVycm9yID0gbnVsbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS90ZXN0cy9zdHJlc3MvbW9kdWxlcy1zeW50YXgtZXJyb3IuanMgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvdGVzdHMvc3RyZXNzL21vZHVsZXMtc3ludGF4LWVycm9yLmpzCmluZGV4IGVhYTczMjdi
NDk4NjcxNTM4OGIyMTczMGIxYWJiNzIwNTA3ZTcyYzMuLjgwM2YzODMyNTc0Y2M0M2U0NmQ0NWYy
NzAyOGZiMDA2ODBjZWFkZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9zdHJlc3MvbW9kdWxlcy1zeW50YXgtZXJyb3IuanMKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3Rlc3RzL3N0cmVzcy9tb2R1bGVzLXN5bnRheC1lcnJvci5qcwpAQCAtMSw1ICsxLDMgQEAK
LS8vQCBza2lwCi0KIGZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yTWVzc2FnZSkgewog
ICAgIHZhciBlcnJvclRocm93biA9IGZhbHNlOwogICAgIHZhciBlcnJvciA9IG51bGw7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL21vZHVsZXMtc3ludGF4
LmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9tb2R1bGVzLXN5bnRheC5q
cwppbmRleCA5YTM5MTFmZDhkOWMwNzk1MmYwYmE5YTlkY2U1NzkwZjRkYTU1NjI5Li42ZmVmZmIx
N2UzNGFjMTAzY2RlNzA0YjAxOTE0OTg0OTJhMjkxNzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL21vZHVsZXMtc3ludGF4LmpzCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvbW9kdWxlcy1zeW50YXguanMKQEAgLTEsNSArMSwz
IEBACi0vL0Agc2tpcAotCiBjaGVja01vZHVsZVN5bnRheChTdHJpbmcucmF3YAogaW1wb3J0ICJD
b2NvYSI7CiBgKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxv
ZwppbmRleCAzNWNlNWM0NmYwM2NiYjA5ZWI3YjdmY2IwMWYwNDQ0YTVmOTFmMDA2Li4zMzZkMTc0
MmQwN2IxZjgzNDMwYzIyOTdjMWE4OTUyZWI3OTI2YTNkIDEwMDY0NAotLS0gYS9Ub29scy9DaGFu
Z2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTUtMDktMDMg
IFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VTNl0g
RW5hYmxlIEVTNiBNb2R1bGUgaW4gSlNDIHNoZWxsIGJ5IGRlZmF1bHQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODY4OQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy9ydW4tamF2YXNjcmlw
dGNvcmUtdGVzdHM6CisgICAgICAgIChydW5KU0NTdHJlc3NUZXN0cyk6CisgICAgICAgICogU2Ny
aXB0cy9ydW4tanNjLXN0cmVzcy10ZXN0czoKKwogMjAxNS0wOS0wMyAgQnJpYW4gQnVyZyAgPGJi
dXJnQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBJbnNwZWN0b3JDb250cm9s
bGVyIHNob3VsZCBzdXBwb3J0IG11bHRpcGxlIGZyb250ZW5kIGNoYW5uZWxzCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3J1bi1qYXZhc2NyaXB0Y29yZS10ZXN0cyBiL1Rvb2xzL1NjcmlwdHMv
cnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCmluZGV4IDc5YjZhMDYxNjQ1NGUwYjA0Y2JmZTI1M2Zm
ZTBkODc2OWRmY2FjZmIuLjBiM2NkYTRhYWVmMjE5YzhmNTlkYmE0YzdmMTEzYmQ5MTI1MzZkMDgg
MTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCisrKyBi
L1Rvb2xzL1NjcmlwdHMvcnVuLWphdmFzY3JpcHRjb3JlLXRlc3RzCkBAIC0yODUsNiArMjg1LDcg
QEAgc3ViIHJ1bkpTQ1N0cmVzc1Rlc3RzCiAgICAgICAgICJTb3VyY2UvSmF2YVNjcmlwdENvcmUv
dGVzdHMvdHlwZVByb2ZpbGVyLnlhbWwiLAogICAgICAgICAiU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL2NvbnRyb2xGbG93UHJvZmlsZXIueWFtbCIsCiAgICAgICAgICJTb3VyY2UvSmF2YVNj
cmlwdENvcmUvdGVzdHMvZXM2LnlhbWwiLAorICAgICAgICAiU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Rlc3RzL21vZHVsZXMueWFtbCIsCiAgICAgKTsKICAgICBpZiAoaXNXaW5kb3dzKCkgJiYgIWlz
Q3lnd2luKCkpIHsKICAgICAgICAgc2hpZnQgQGpzY1N0cmVzc0RyaXZlckNtZDsgIyBSZW1vdmUg
L3Vzci9iaW4vZW52CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3J1bi1qc2Mtc3RyZXNzLXRl
c3RzIGIvVG9vbHMvU2NyaXB0cy9ydW4tanNjLXN0cmVzcy10ZXN0cwppbmRleCA0NGQyNzJlZjVl
MjIzYjc5NzAyZWU5YjViZDgzZmEzNzNlNDkxNDRjLi44MWRjOWFjMzcyMmRiYTYyMWY5ZWViNGJi
NDJhNWQzYjZiY2Y1MGI3IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3J1bi1qc2Mtc3RyZXNz
LXRlc3RzCisrKyBiL1Rvb2xzL1NjcmlwdHMvcnVuLWpzYy1zdHJlc3MtdGVzdHMKQEAgLTg5OSw2
ICs4OTksMjggQEAgZGVmIHJ1bkVTNihtb2RlKQogICAgIGFkZFJ1bkNvbW1hbmQoImRlZmF1bHQi
LCBhcmdzLCBub2lzeU91dHB1dEhhbmRsZXIsIGVycm9ySGFuZGxlcikKIGVuZAogCitkZWYgcnVu
TW9kdWxlcworICAgIHJ1bigiZGVmYXVsdC1tb2R1bGVzIiwgIi1tIikKKyAgICBydW4oImFsd2F5
cy10cmlnZ2VyLWNvcHktcGhhc2UtbW9kdWxlcyIsICItbSIsICItLW1pbkhlYXBVdGlsaXphdGlv
bj0yLjAiLCAiLS1taW5Db3BpZWRCbG9ja1V0aWxpemF0aW9uPTIuMCIpCisKKyAgICBpZiAhJGpp
dFRlc3RzCisgICAgICAgIHJldHVybgorICAgIGVuZAorCisgICAgcnVuKCJuby1sbGludC1tb2R1
bGVzIiwgIi1tIiwgIi0tdXNlTExJbnQ9ZmFsc2UiKQorICAgIHJ1bigibm8tY2ppdC12YWxpZGF0
ZS1waGFzZXMtbW9kdWxlcyIsICItbSIsICItLXZhbGlkYXRlQnl0ZWNvZGU9dHJ1ZSIsICItLXZh
bGlkYXRlR3JhcGhBdEVhY2hQaGFzZT10cnVlIiwgKk5PX0NKSVRfT1BUSU9OUykKKyAgICBydW4o
ImRmZy1lYWdlci1tb2R1bGVzIiwgIi1tIiwgKkVBR0VSX09QVElPTlMpCisgICAgcnVuKCJkZmct
ZWFnZXItbm8tY2ppdC12YWxpZGF0ZS1tb2R1bGVzIiwgIi1tIiwgIi0tdmFsaWRhdGVHcmFwaD10
cnVlIiwgKihOT19DSklUX09QVElPTlMgKyBFQUdFUl9PUFRJT05TKSkKKyAgICBpZiAkZW5hYmxl
RlRMCisgICAgICAgIHJ1bigiZGVmYXVsdC1mdGwtbW9kdWxlcyIsICItbSIsICpGVExfT1BUSU9O
UykKKyAgICAgICAgcnVuKCJmdGwtbm8tY2ppdC12YWxpZGF0ZS1tb2R1bGVzIiwgIi1tIiwgIi0t
dmFsaWRhdGVHcmFwaD10cnVlIiwgKihGVExfT1BUSU9OUyArIE5PX0NKSVRfT1BUSU9OUykpCisg
ICAgICAgIHJ1bigiZnRsLW5vLWNqaXQtbm8taW5saW5lLXZhbGlkYXRlLW1vZHVsZXMiLCAiLW0i
LCAiLS12YWxpZGF0ZUdyYXBoPXRydWUiLCAiLS1tYXhpbXVtSW5saW5pbmdEZXB0aD0xIiwgKihG
VExfT1BUSU9OUyArIE5PX0NKSVRfT1BUSU9OUykpCisgICAgICAgIHJ1bigiZnRsLWVhZ2VyLW1v
ZHVsZXMiLCAiLW0iLCAqKEZUTF9PUFRJT05TICsgRUFHRVJfT1BUSU9OUykpCisgICAgICAgIHJ1
bigiZnRsLWVhZ2VyLW5vLWNqaXQtbW9kdWxlcyIsICItbSIsICItLXZhbGlkYXRlR3JhcGg9dHJ1
ZSIsICooRlRMX09QVElPTlMgKyBOT19DSklUX09QVElPTlMgKyBFQUdFUl9PUFRJT05TKSkKKyAg
ICAgICAgcnVuKCJmdGwtbm8tY2ppdC1zbWFsbC1wb29sLW1vZHVsZXMiLCAiLW0iLCAiLS1qaXRN
ZW1vcnlSZXNlcnZhdGlvblNpemU9NTAwMDAiLCAqKEZUTF9PUFRJT05TICsgTk9fQ0pJVF9PUFRJ
T05TKSkKKyAgICBlbmQKK2VuZAorCiBkZWYgcnVuTGF5b3V0VGVzdChraW5kLCAqb3B0aW9ucykK
ICAgICByYWlzZSB1bmxlc3MgJGJlbmNobWFyay50b19zID1+IC9cLmpzJC8KICAgICB0ZXN0TmFt
ZSA9ICR+LnByZV9tYXRjaAo=
</data>
<flag name="review"
          id="285760"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>